# Toolhouse

## Welcome to Toolhouse

Toolhouse allows everyone to create AI workers — specialized agents that are good at performing repetitive work autonomously and reliably.

You describe what you want your worker to do in plain language. Toolhouse handles the rest: writing the prompt, selecting the right integrations, and giving your worker the tools it needs to get the job done. No coding required.

***

### What you can build

Toolhouse workers are well-suited for any task that is repetitive, time-consuming, or spans multiple tools. Common examples include:

* **Marketing Team:** plans and schedules campaigns across your email platform, generates copy and visuals using your brand guidelines, and reports on performance — without waiting for a brief to be picked up.
* **Customer Support Worker**: reads your documentation and support guidelines to answer incoming tickets, automatically files and resolves common issues by connecting to your ticketing platform, and notifies your team when users report bugs or patterns worth escalating.
* **Legal Counsel:** reviews contracts and documents against your guidelines, flags clauses that need attention, and drafts standard agreements using your templates. Available instantly, at any hour.
* **Social Media Manager:** manages your social media presence end-to-end. Drafts posts, applies your brand voice, schedules content, and monitors engagement — all without manual intervention.
* **Executive Assistant:** manages your calendar, triages your inbox, summarizes what needs your attention, and drafts responses on your behalf. Keeps you focused on the work only you can do.

If you find yourself doing the same multi-step task more than once a week, it's definitely a good candidate for a Toolhouse worker.

***

### Core concepts

[Agent Editor](/toolhouse/toolhouse/agent-editor) is where you create and edit your workers. Describe your task in plain language, and Agent Editor will generate a structured prompt, ask follow-up questions, and configure the right integrations automatically. You can refine the worker at any time by telling the editor what to change.

[Integrations](/toolhouse/toolhouse/integrations) give your workers access to external services and capabilities. Toolhouse adds integrations automatically based on what your worker needs, and you can also add them manually. Your workers can share integrations — if a worker is connected to Google Drive or Slack, the Virtual Computer it uses will have access to those services too.

[Skills & Knowledge](/toolhouse/capabilites/skills-and-knowledge) let you upload knowledge to your worker — templates, guidelines, skill definitions, reference documents. File contents are added directly to your worker's instructions, and will stay with them every time you run the same task. Theh worker can draw on them at any point during a task.

***

### Built-in capabilities

| Capability                                                                                                            | What it does                                                                                                                         |
| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| [Scraping](/toolhouse/capabilites/scraping)                                                                           | Reads and understands what's inside a webpage                                                                                        |
| [Web and Social Media Search](/toolhouse/capabilites/web-and-social-media-search)                                     | Searches the web using specified queries. Can search Linkedin and X out of the box                                                   |
| [Memory](/toolhouse/capabilites/memory)                                                                               | Memorize data, behavior, and past outputs                                                                                            |
| [Image generation](/toolhouse/capabilites/image-generation) and [Image editing](/toolhouse/capabilites/image-editing) | Creates images, quote cards, diagrams, and other visual assets                                                                       |
| [Vision](/toolhouse/capabilites/vision)                                                                               | Sees what's inside an image, a screenshot, a page, or a document                                                                     |
| [Virtual computer](/toolhouse/capabilites/virtual-computer)                                                           | Runs Python code in an isolated, internet-connected sandbox for computation-heavy tasks, batch operations, and third-party API calls |
| [File download](/toolhouse/capabilites/file-download)                                                                 | Fetches a file from a URL and makes its contents available to your worker                                                            |
| [Document parser](/toolhouse/capabilites/document-parser)                                                             | Fetches a file or web page from a URL and converts it to clean Markdown for easier reading                                           |
| [Skills & Knowledge](/toolhouse/capabilites/skills-and-knowledge)                                                     | Attaches files to your worker: templates, guidelines, skill definitions, and reference material                                      |
| [Worker Orchestration](/toolhouse/capabilites/worker-orchestration)                                                   | Make your workers collaborate with one another to perform complex tasks.                                                             |

***

### How Toolhouse adds capabilities

Most capabilities are added automatically. When you describe a task that requires fetching a file, Toolhouse will attach File Download. When you describe a task that involves running analysis, it will attach the Virtual Computer. You don't need to know which integration to use before you start.

You can also add any integration manually from the Integrations section inside your worker's settings. This is useful when you want to ensure a capability is always available regardless of what you ask the worker to do.

***

### Where to go next

* **New to Toolhouse?** Start by creating your first worker in [Agent Editor](https://toolhouse.app/). Describe a task you do regularly and see what it generates.
* **Ready to get more out of your workers?** Read [Techniques and best practices](/toolhouse/toolhouse/techniques-and-best-practices) for tips on prompting, structuring files, and handling edge cases.
* **Need to connect to a tool Toolhouse doesn't support natively?** See [Virtual computer](/toolhouse/capabilites/virtual-computer#connecting-to-third-party-apis) to learn how to upload API documentation and have your worker figure out the rest.

### Jump right in

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><i class="fa-bookmark">:bookmark:</i></td><td><strong>Introduction to AI workers</strong></td><td>Automate entire workflows</td><td></td><td></td><td><a href="/pages/8GnS2PPZI7ohXtuwbjaH">/pages/8GnS2PPZI7ohXtuwbjaH</a></td></tr><tr><td><h4><i class="fa-bolt">:bolt:</i></h4></td><td><strong>Quickstart</strong></td><td>Create your first worker</td><td></td><td></td><td><a href="/pages/7FvWQMF0kTK7HGhlQfmo">/pages/7FvWQMF0kTK7HGhlQfmo</a></td></tr><tr><td><h4><i class="fa-code">:code:</i></h4></td><td><strong>For developers</strong></td><td>Integrate with Toolhouse</td><td></td><td></td><td><a href="/pages/0z7gHlTuJvbaJWQXh1gD">/pages/0z7gHlTuJvbaJWQXh1gD</a></td></tr></tbody></table>


# Introduction to AI workers

You already know how to use AI for one-off tasks—like drafting, summarizing, brainstorming, or answering questions. Every time you use AI, you need to ask for the same task over and over. This approach has some obvious limitations:

* You need to do extensive chatting in order to get something done
* You will need to repeat the same chatting every time, even if the task is the same
* Every request you make will be *slightly* different, leading to inconsistent outputs

Toolhouse overcomes these limitations by letting you create **AI workers.** AI workers are a new type of agents designed to be used for repeatable workflows—work you’d otherwise do manually, re-explaining the steps each time, and copying information between tools.

If you’re new to agent building, let’s focus on the core concepts first so when you start building, you’ll know how to set up your AI worker for consistent results.

### What is an AI worker?

Generally speaking, an AI worker is a system that carries out a task with three components: a trigger, a process that may include specialized skills, and tools or systems it can connect to.

| **Trigger**            | What starts the worker                                                                                | A schedule (“Every weekday at 9am”) or a manual run (for example by sending an email to your worker).                 |
| ---------------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Process and skills** | The steps the agent follows to complete the task the way you expect                                   | Reviewing inputs, checking for missing information, drafting an output, and handing it off or taking the next action. |
| **Integrations**       | The approved tools and systems the agent can use to gather information and, if allowed, take actions. | Slack, a CRM, internal documentation, a ticketing system, or a shared document.                                       |

AI Workers are most useful when the work is:

* **Repeatable:** The same task comes up regularly
* **Structured:** There’s a clear format for the output (so you can tell if the agent is doing a good job)
* **Time-based or event-driven:** It runs on a cadence or is triggered by an event
* **Tool-based:** It requires reading from or writing to systems your team uses

For open-ended thinking, brainstorming, or exploratory writing, regular chat is often a better fit—especially for one-off tasks.

Agents are also different from traditional API workflows you may have built in the past. Traditional workflows in other tools are often deterministic, meaning each step is explicitly defined, and the system follows the same path each time unless you change the logic. Agents are more probabilistic. They still operate within instructions, tools, and guardrails, but they use a model to interpret context, make bounded decisions, and adjust how they move through the work.

### Building an AI Worker

A helpful way to create an AI Worker is by breaking your usual workflow into separate tasks. Imagine your AI Worker being a new teammate. You need to define roles and responsibilities, as well as thing they can and cannot do.

Toolhouse makes this process straightforward thanks to **Agent Builder.** Agent Builder makes you explain your tasks in plain language, and it will derive precise instructions for your worker. Agent Builder will automatically add objectives, triggers, processes, and integrations for you. It will also add guardrails and governance to your worker. Agent Builder can ask follow on questions when the task is not clear, and it will allow you to add knowledge files (such as brand guidelines or internal process guides) to your worker.

In Agent Builder, you can start with a simple prompt like this:

> I want to automatically draft an email campaign and schedule weekly. The content should be based on our approved brand guidelines.

Agent Builder will understand this simple request and and some follow up question:

* It will ask you to upload your brand guidelines
* It will ask you if you have a preferred time and day for scheduling
* It will ask you what email system you use

You can then reply with your details, for example:

* You can drag and drop your brand guidelines
* You can say you want campaigns to be generated Monday at 10am PT
* You can specify you are using Mailchimp

With this details, Agent Builder will create an AI worker for you with the following details:

| **Title**                                                                                          | Marketing Campaign Scheduler                                                                                 |
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| <p><strong>Objective</strong><br>What is the overall goal of the worker?</p>                       | Draft an email campaign                                                                                      |
| <p><strong>Personality</strong><br>How should the worker respond?</p>                              | Always create an artifact, create a professional recap in bullet points                                      |
| <p><strong>Trigger</strong><br>What starts the work?</p>                                           | Scheduled trigger: Mondays at 10am PT                                                                        |
| <p><strong>Process</strong><br>What steps should it follow?</p>                                    | Read brand guidelines, understand content, create message and draft a Mailchimp campaign without sending it. |
| <p><strong>Tools</strong><br>What systems or applications do you need access to?</p>               | Mailchimp integration                                                                                        |
| <p><strong>Governance</strong><br>What controls do you need? When should it stop and escalate?</p> | Draft recommendations; approval required before sending                                                      |

### Examples of workers

In this section you will find common, repeatable patterns of work that show up across teams and functions. Each one represents a type of AI worker, each one performing a clearly scoped task. The specific tools, data, and outputs may vary, but the underlying pattern stays consistent.

| <p><strong>Briefing</strong></p><p>Pull information from multiple places, distill it, and package it into something decision-ready.</p>             | <p>1) Collect inputs</p><p>2) Compare and extract key signals</p><p>3) Summarize for audience </p><p>4) Share as doc, memo, or briefing</p>                            | <p><strong>Sales:</strong> Build account briefing from CRM, calls, Slack, and news. </p><p><strong>Marketing:</strong> Compile campaign or competitor recaps from analytics, social, and docs. </p><p>Exec: Produce daily industry briefs with recommendations</p>                      |
| --------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><strong>Triage and routing</strong></p><p>Process inbound items and ensure they reach the right next step</p>                                    | <p>1) Review inbound items </p><p>2) Categorize and prioritize </p><p>3) Route or create next-step artifact</p><p>4) Notify owner and requester</p>                    | <p><strong>Support:</strong> Turn feedback into bugs, feature requests, or follow-ups. </p><p><strong>IT/Ops:</strong> Handle internal requests in Slack and route by urgency. </p><p><strong>Recruiting:</strong> Screen inbound candidates and move them into the right path.</p>     |
| <p><strong>Analysis and recommendation</strong></p><p>Interpret data or evidence, form a point of view, and turn that into a first deliverable.</p> | <p>1) Pull source data </p><p>2) Analyze patterns, gaps, and tradeoffs </p><p>3) Form recommendation </p><p>4) Draft memo, deck, spreadsheet, or email</p>             | <p><strong>Finance:</strong> Reconcile budget vs. actuals and draft a manager memo. </p><p><strong>Product/Research:</strong> Analyze user feedback and propose priorities. </p><p><strong>Procurement:</strong> Compare vendor quotes, create decision matrix, and draft PO email.</p> |
| <p><strong>Content creation</strong></p><p>Create or update content, then tailor it for a specific audience or channel.</p>                         | <p>1) Generate first draft from notes or source material</p><p>2) Edit for tone and accuracy </p><p>3) Tailor to audience and channel </p><p>4) Publish or send</p>    | <p><strong>Marketing:</strong> Turn a brief into campaign assets and circulate for feedback. </p><p><strong>Manager:</strong> Turn notes into onboarding plan or training module. </p><p>Sales: Write follow-up emails, QBR summaries, or stakeholder recaps.</p>                       |
| <p><strong>Planning and coordination</strong></p><p>Turn goals into scheduled work and system updates</p>                                           | <p>1) Build plan from constraints </p><p>2) Check dependencies and availability </p><p>3) Take action or prepare action </p><p>4) Update systems and notify people</p> | <p><strong>PM/Chief of Staff:</strong> Block work, schedule meetings, and update trackers. </p><p><strong>Events:</strong> Coordinate off-sites, registrations, or travel plans. </p><p><strong>Admin:</strong> Manage forms, reminders, orders, bookings, and follow-ups.</p>          |

### Testing and training an AI Worker before it works with you

You can and should train your worker before making it work with you. When you create your worker, you will see the Testing Workbench appear. The Workbench allows you to test your worker with real data, and to see its output. You should test the worker in the Workbench a few times in order to understand if its output matches your expectations.

* **If the output looks good:** your worker is ready. You can work with it right away.
* **If the output needs improvement:** tell Agent Builder that went wrong and ask to fix. You can also copy the output and paste it into Agent Builder to provide context as to what needs to change.

### Using AI Workers in your day-to-day

You may start by using workers your organization has already built. Workers can be shared with your team and they will behave in the same way.

| Interaction type | Human interaction?   | Description                                                                                                          |
| ---------------- | -------------------- | -------------------------------------------------------------------------------------------------------------------- |
| Schedule         | No human interaction | Worker will start automatically on a schedule you defined when creating the worker.                                  |
| Event            | No human interaction | Worker will start on a trigger, for example when they receive a notification from a webhook or from another service. |
| Chat             | Human interaction    | Worker will start when you send a message or a document.                                                             |
| Email            | Human interactio     | Worker will start when you send an email to its address.                                                             |

### Editing your AI worker

As you test your AI worker, it’s expected that the first version won’t be perfect. When something feels off, there are two effective ways to improve it.

* **Coach it in natural language:** When the issue is less clear, go to Agents, select your agent, then use the chat view to work through it. You can point out what it missed, ask open-ended questions, or have it explain its reasoning to surface gaps in the instructions.
* **Update the instructions directly:** In the Agents edit page, click the Details page to make small, specific changes in the System Prompt field or in the Integrations list. You can clarify steps, adjust the output format, or add a constraint.

After making changes, test again in the Testing Workbench to confirm the update worked.

### Scaling your AI workers to your team

AI workers are designed for shared, repeatable work. Sharing a worker gives your team a consistent way to complete a task instead of reinventing the process each time.

Shared agents work best when they’re tied to a specific, recurring workflow your team already understands. &#x20;

Remember that workers share the same access. If you share a worker that connects to Google Drive, it will use your Google Drive connection. If your teammates need their own permissions for the agent to work with systems like Slack, Gmail, or other tools, you can make a separate copy of the agent and transfer it to them.


# Quickstart

This guide helps you build your first AI worker. In this example, we will create a personal assistant that can book meetings for you. The assistant will connect to your Google Calendar and will be able to create, move, and cancel meetings for you.

1. Sign up for [Toolhouse](https://auth.toolhouse.ai/sign-up).
2. Once you're in, you will see the Agent Builder interface.
3. Type this prompt:

   > Please build a personal assistant that manages my Google Calendar. My working hours are 9am-5pm PT Monday through Friday.
4. Agent Builder will start setting up the agent.
5. The Google Calendar authentication screen will appear. Click Connect and follow the instructions to connect your calendar to your worker.
6. When the Testing Workbench appears, test your agent.

## Testing your agent

The Testing Workbench allows you to test your agent. The Workbench appears automatically once your version of your worker is ready.

In the **Test Input** area, you can type instructions. Test your worker by typing:

> Put a blocker for lunch with John Thursday at noon

Once the worker confirms, go to your Google Calendar to see the meeting.

## Next steps

If all looks good, your worker is ready. You can now click **Looks good.**

In the screen that appears, you can click **Use now** to ask your worker to manage your calendar.

If you are on the **Business Plan,** you can also email your agent with calendar requests.


# Agent Editor

Agent Builder allows you to see, open, edit, and test your agents.

Once you build an worker using [Agent Builder](/toolhouse/toolhouse/quickstart), you will be able to change any aspect of your worker in the editor. Agent Editor gives you two modes depending on the kind of change you need to make.

**Chat** is the best starting point for most edits. Use it when the issue isn't fully clear yet, or when you want to describe a change in plain language and let the editor figure out the implementation. You can point out unexpected behavior, ask why the worker did something, or describe what you want differently — the editor will update the prompt and integrations accordingly.

> "The worker is sending the summary before it finishes reading all the files. Fix that." "Explain why the worker sends a Slack message even when there are no results."

**Details** is for direct, precise edits. Use it when you know exactly what needs to change — a specific line in the system prompt, a constraint to add, an integration to remove. The Details tab gives you full access to every field without going through the chat interface.

A good workflow is to use Chat for planning and exploration, then switch to Details to fine-tune.

## Editing your worker details manually

The Details tab shows you an advanced view of every aspect of your worker.

### Agent Details

You can change Title, Start message, and System prompt for your agent. You can also make this agent only visible to you, or change its custom URL.

* **Title:** The worker's name. In email conversations, this will be the name that will appear in the **From** field.
* **Start message:** When you use [Schedules](/toolhouse/toolhouse/schedules) or any other automated trigger, this will be the first message sent to your worker.
* **System prompt:** This is the prompt created by Agent Builder when you use the chat tab. It contains all the necessary instructions (including guardrails and use of integrations) to make your worker perform its task.
* **Agent ID:** The unique identifier of your worker. You cannot change this value.
* **Visibility:** If the option is toggled, it will allow you to share your agent with others and to open up its inbox to everyone. Turn this off to disable access, including email access. When the agent is private, only you can use it.
* **Custom URL:** Allows you to choose a friendly name for your chat interface and worker email address.

### Integrations

You can control what individual actions the worker can perform. Each connected integration has multiple actions. For example, a Google Drive integration has the ability to search, move, list, and download files (and many others). Your worker likely won't need all of these integrations.&#x20;

Agent Editor is built to select the correct actions for your worker, but if you're editing your worker manually, you may need to add or change integrations from this section.

### Vibe Code

The Vibe section contains a prompt to connect this worker to other services like Claude Code or Lovable. Use this when you want to build a custom interface, internal tool, or integration on top of your worker without writing the connection logic from scratch.

### Agent Files

Agent files are knowledge files you can make available to your worker. They can contain guidelines, process descriptions, templates, and anything your worker needs to keep in mind in order to complete its task effectively. For example, if you are building a worker that generates email campaigns, you may want to provide an HTML file containing the template you always use.

### API Access

Every worker can be called as an API. This means you can integrate your worker directly to your internal systems.


# Integrations

The Integrations Gallery shows you all the services Toolhouse can connect to. This gallery is useful to explore the full capabilities of Toolhouse.

Toolhouse has two types of integrations:

* **Built-in:** these integrations are built and maintained by Toolhouse. These are available to your workers. Agent Builder will automatically add these when needed.
* **Connection required:** these are integrations to third-party services. You will need to own an account to the service you want to use, and you will need to connect it to Toolhouse.

Connecting an integration to Toolhouse often happens automatically when you are building your worker. If you want to manually connect a service:

1. Search for the service you want to connect.
2. Click **Connect account.**
3. Follow the instructions.

You can manage your connections in the [Auth Connections](https://toolhouse.app/auth-connections) page on your Toolhouse.

## Adding integrations to your worker

Toolhouse automatically picks the right integrations your worker will need to complete its tasks, and it will configure your worker appropriately. Some services have hundreds of integrations, which will far exceed the physical limit of integration your worker will be able to understand.

Think of it this way. Your laptop has Excel, Word, and Photoshop installed. Those are three big apps. If you only need to write a letter, you will only need to use Word. Workers work in a similar way—they will be given only the tools they need in order to reach their outcome. To further optimize their performance and provide an extra layer of security, Toolhouse will let workers see **only the tools they need.** If your worker needs to read your Notion, but not write it, Toolhouse will configure it so it can only see and access the read-only tools.

#### Adding or removing integrations manually

{% hint style="danger" %}
Changing tools manually may break your workers. If you remove an integration that's crucial for your worker to complete a task, the worker will not be able to work properly without it.
{% endhint %}

You can add and remove integrations manually.

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it

To add an integration:

* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose the integrations you want to add
* Click **Save changes**

To remove an integration:

* Click the x-out icon next to the name of the integration you want to remove.
* Click **Save changes**

## Integration List

You can see the entire list of integrations in [Integrations](/toolhouse/toolhouse/integrations) or by going to the **Integrations** section in the documentation.


# MCP Servers

## MCP Servers

The MCP Servers feature lets you connect your Toolhouse workers to external [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) servers. This extends your worker's capabilities beyond Toolhouse's built-in integrations by giving it access to tools hosted on your own MCP servers.

Toolhouse is compatible with **SSE** and **Streamable HTTP** servers.

You can use MCP servers alongside existing integrations. Your worker can mix and match tools from your MCP servers and from Toolhouse's integrations to complete its tasks.

### How your worker uses MCP servers

When your worker runs, it will check whether there are any tools available in your connected MCP servers, and use them alongside any other integrations it has been configured with. From the worker's perspective, MCP server tools and Toolhouse integrations work together as part of the same toolset.

{% hint style="warning" %}
Adding MCP servers can significantly increase the context your worker has to process. If a server exposes many tools, this can affect your worker's performance.
{% endhint %}

**MCP can be context heavy.** If you encounter issues, you can edit your worker to remove some of your integrations. Alternatively, you can create a separate worker that specifically handles the MCP server, and have an orchestrator worker call your MCP-enabled worker. See [Worker Orchestration](/toolhouse/capabilites/worker-orchestration) for more details.

* **Guide your worker explicitly.** Because Toolhouse does not know the details of your MCP server, you should explicitly guide your worker to use the right tools provided by the server. This ensures the best performance.
* **No code interpreter support.** Currently, MCP servers cannot be called from within the code interpreter.

### Adding an MCP server

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select **MCP Servers**
* Add the full URL to the MCP server you want to add


# Auth Connections

Toolhouse AI workers can connect to services and product you use, but only if you give them explicit authorization. These authorizations are called **Auth Connections.**

* Auth Connections are managed by Toolhouse for you. They using an industry-standard, secure mechanism called OAuth.
* AI workers only get access to the services they need. For example, if you authenticated Slack, Gmail, and HubSpot, but the worker only needs Slack, the worker will not be able to access Gmail and HubSpot.
* You can update or remove any connections at any time.
* AI workers will use your own connections. If you share a worker with your team, they will still use your own connections. To use separate connections, you can make a copy of your agent and transfer it to your team.
* Currently, each Toolhouse account can manage one auth connection per service. In other words, if you have two Gmail accounts, you can only use authenticate one.

## Add a new Auth Connection

Agent Builder will prompt you to connect an integration via Auth Connections automatically. Simply click Connect and follow the instructions.

## Manage Auth Connections

The [Auth Connections](https://toolhouse.app/auth-connections) page allows you to update its auth settings or to remove it completely:

* Updating auth settings allows you to switch to another account for the same service, or to reconnect Toolhouse to your service if needed.
* Removing an auth connection will prevent AI workers from communicating to that service.

{% hint style="danger" %}
**Be careful when removing auth connections.** AI workers who rely on a connection will stop working.
{% endhint %}


# Schedules

You can schedule your workers to do work for you autonomously.

The [Schedules](https://toolhouse.app/schedules) page allows you to create and manage schedules. You can also tell Agent Builder to set up a schedule for you.

## Setting up a schedule

1. Go to [Schedules](https://toolhouse.app/auth-connections)
2. Select a worker
3. Specify a cadence. You can use natural language ("every Monday at 3pm") or use the interface. Scheduled times always refer to your local time zones.
4. Click **Create schedule.**

## Things to know about schedules

* Toolhouse supports execution intervals of up to 10 minutes. This means that each worker can execute as often as once every 10 minutes.
* If you use a faster cadence, for example every 2 minutes, it will still default to our minimum supported cadence of every 10 minutes.
* Scheduled times always refer to your local time zones.
* You can have multiple schedules per single worker.
* You can optionally have the worker send a message to a webhook when they're done. To do so, specify a valid URL in the Callback field.


# Logs

You can inspect each one of your worker tasks, see your interaction history, and retrieve past deliverables and responses.

The [Logs](https://toolhouse.app/logs) page gives you a history of executions and all the details related to integrations used to perform a certain task.

### General details

For each worker execution you'll see:

| Detail                                  | Explanation                                                                                                                                                                                                                |
| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Worker name                             | Identifies the worker                                                                                                                                                                                                      |
| Status (in progress, completed, failed) | Understand if a worker has delivered its task                                                                                                                                                                              |
| ID                                      | <p>The unique identifier of the worker.<br><br>Click on the value to edit your worker.</p>                                                                                                                                 |
| Run ID                                  | <p>The unique identifier of this specific interaction between you and the worker.<br><br>Click the <i class="fa-envelope">:envelope:</i> email icon to email this worker.<br>Click on the value to talk to the worker.</p> |
| User ID                                 | The unique identifier of the Toolhouse user who's interacting with the worker (usually you).                                                                                                                               |
| Duration                                | How much time it took the worker to complete the task                                                                                                                                                                      |
| Started                                 | The date and time you first requested this task                                                                                                                                                                            |
| Last response                           | The date and time you last heard from this worker                                                                                                                                                                          |

### Traces

The **Traces** section will show all the integrations the worker used to perform the task. You can use this to optimize your integration usage.

When you click on a trace, you can also see what inputs the worker gave to each integration, and you can see the output from the integration itself.

For each trace, you'll see:

| Detail            | Explanation                                                                                                                                                                                                  |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Position          | The order each integration was called                                                                                                                                                                        |
| Integration name  | The name of the integration                                                                                                                                                                                  |
| Intermediate time | Tells you at what time the integration was called. For example, `+8min 30s · 20:36:04` indicates that the integration was called at 08:36:04 PM, which is 8 minutes and 30 minutes after the worker started. |
| Waterfall         | Shows you at what point of the overall duration each integration was called, and how long it took                                                                                                            |
| Duration          | How long this integration took to give the its answer back to the worker                                                                                                                                     |
| Input             | The data the worker prepared to make this integration work                                                                                                                                                   |
| Output            | The full result from the integration                                                                                                                                                                         |

### History

The **History** section contains the full activity from your worker. For autonomous work, you'll see all the steps the worker took; if the task was supervised, you'll see your activity (for example approvals and directions).

| Detail        | Explanation                                                                                                                                                    |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| User input    | Contains your initial request and any other approvals or direction you gave to the worker. For autonomous work, it contains a default start message.           |
| Worker output | The output from your worker. This could be an intermediate result (for example, the worker is thinking, or it's asking you for approval or additional details) |
| Integrations  | Shows what integrations were used by the worker that helped it create its answer                                                                               |


# Worker emails

You can interact with your workers via email. Each one of your worker has its own email address and inbox, which can be used to start work or provide input.

Your worker's email is its Custom URL + toolhouse.app. For example, if your worker's friendly name is `personal-assistant`, you can contact it at `personal-assistant@toolhouse.app`.

### Basic email rules

* Your worker can only accept emails when its visibility is set to Visible.
* Everyone who knows the worker's friendly name can send messages to it. You can add strict guardrails on who can interact with the worker using [Agent Editor](/toolhouse/toolhouse/agent-editor).
* The worker can reply if its email is in the To or Cc fields of your email. This is useful to Cc your worker on a conversation with others.
* The worker can read the entire email thread, but it does not read attachments.

### Handoff and continuity

Your worker can continue working on a task between email, autonomous work, and chat interface. The worker will remember what task it was working on, even if you're communicating in a separate channel.

* You can send an email to the worker, then resume work directly in Toolhouse.&#x20;
* You can start work in Toolhouse, then pick up when you left off via email.
* The worker can start autonomously, then send you an email for approvals.

### Set up the email name

1. Go to the [Agents page](https://toolhouse.app/agents)
2. Click on the worker you want to change.
3. Click <i class="fa-gear-complex">:gear-complex:</i> **Details.**
4. In the **Custom URL** section, type the address you want.

You can change your worker's address at any time. When you do so, you will make the old email available to other customers. Also keep in mind that we enforce these naming rules:

* Your worker's email can be 2-50 character long
* It can only contain lowercase letters, numbers, and dashes
* It cannot start or end with a dash
* It cannot contain profanity
* It cannot contain reserved words


# Techniques and best practices

Toolhouse is already good at understanding the type of worker you need to create. When you describe a task, Agent Editor builds the right prompt for you and asks follow-up questions to help your worker adapt to your team or organization.

The techniques below will help you get consistently better results as you build and refine your workers.

***

### Let Agent Editor do the first draft

Don't try to write a perfect prompt from scratch. Describe what you want in plain language — Agent Editor will generate a structured prompt and ask clarifying questions to fill in the gaps. It's faster to refine a generated prompt than to write one from zero.

If the first draft isn't quite right, don't rewrite it manually. Instead, tell the editor what's missing:

> "This looks good, but the worker should also send a Slack notification after completing the task."

Agent Editor will revise the prompt for you.

***

### User awareness

When creating or editing a worker in Agent Editor, you can use shortcuts that are automatically resolved to your account details:

* **"Send a recap to my email"** — configures the worker to send output to the email address you used to sign up for Toolhouse. No need to type your address manually.
* **"Schedule this agent daily at 8am"** — sets up a recurring schedule at 8am in your local timezone, automatically detected from your account.

These shortcuts work anywhere in the Agent Editor prompt field.

***

### Time awareness

Your workers always know the current date and time. You don't need to pass timestamps in your messages or prompts — the worker handles this automatically.

This makes it straightforward to build workers that reason about time without any extra configuration:

> "Send a summary of this week's activity every Friday at 5pm." "Only run this task on business days." "Flag any items created more than 30 days ago."

***

### Separate instructions from data

One of the most effective habits when building workers is keeping *how to do the task* separate from *what to use when doing it*.

* Put step-by-step instructions, decision logic, and behavioral rules in the **system prompt**
* Put reference material (templates, datasets, guidelines, examples) in **Agent Files.**

This separation makes both easier to maintain. When your HTML email template changes, you update the file without touching the prompt. When you want to change how the worker writes subject lines, you update the prompt without touching the template.

**Example:** A worker that creates and schedules email campaigns should have:

* A prompt describing when to send, how to choose subject lines, and how to handle errors
* An `email-template.html` file in Agent Files containing the layout

See [Skills & Knowledge](/toolhouse/capabilites/skills-and-knowledge) for more on how to structure your files effectively.

***

### Prefer text-like files and formats

Whether you're using File Download, Document Parser, or Agent Files, your worker performs best when working with text-friendly formats — Markdown, plain text, CSV, HTML, JSON. Binary files, images, and heavily formatted documents introduce noise that can degrade output quality.

When you have a choice of format, pick the simpler one. A CSV is easier for a worker to reason about than an Excel file. A Markdown document is easier to follow than a formatted Word doc.

***

### Use Virtual Computer for heavy lifting

If your worker needs to do something computation-intensive — process a large dataset, run statistical analysis, make multiple API calls, or transform files — offload it to the Virtual Computer rather than asking the worker to do it in context.

A useful rule of thumb: if the task would take a human more than a few seconds to do in a spreadsheet, it's probably a good candidate for the Virtual Computer.

You don't need to configure this manually. Just describe the task clearly and Toolhouse will attach the Virtual Computer if it's needed. To make it explicit:

> "Use the virtual computer to process this data."

***

### Connect to APIs by uploading their documentation

Your worker can talk to any API on the internet, not just the integrations Toolhouse provides. If you need to connect to an internal tool or a third-party service, upload its documentation directly in Agent Editor — a PDF, plain text file, or OpenAPI spec all work.

The more precise the documentation, the more reliably your worker will call the API correctly. An OpenAPI spec is ideal when available.

See [Virtual computer](/toolhouse/capabilites/virtual-computer) for step-by-step instructions.

***

### Break complex workflows into smaller workers

If a task has many distinct steps — fetch data, transform it, generate a report, send a notification — consider whether it should be one worker or several. Smaller, focused workers are easier to debug, easier to update, and less likely to lose track of context midway through a task.

Toolhouse workers can trigger other workers, so you can chain them together into a pipeline while keeping each one simple and maintainable.

***

### Test with simple cases first

Before running a complex workflow end-to-end, test each piece in isolation. If your worker fetches data, transforms it, and then posts to Slack, verify the fetch step works before adding the transformation logic.

You can prompt your worker to stop after a specific step:

> "Fetch the report and tell me what you found. Don't send anything yet."

Once each step works independently, combine them and test the full flow.

***

### Be explicit about edge cases

Workers follow instructions literally. If your prompt doesn't account for a situation, the worker will make its best guess — which may not match what you'd want.

Think about what should happen when things don't go as expected:

* What if the data is empty?
* What if the API returns an error?
* What if the file is in the wrong format?

Adding a short "if this happens, do that" clause to your prompt prevents a large category of unexpected behavior:

> "If the spreadsheet has no rows, send a Slack message saying no data was found and stop."

***

### Retry on failure

Some failures are transient — a Virtual Computer task that hit a resource limit, a file download that timed out, an API that was briefly unavailable. In most cases, simply prompting your worker to retry is enough:

> "That didn't work — please try again."

If a task fails repeatedly, check whether the issue is structural (wrong URL, missing credentials, unsupported file format) rather than transient before retrying.


# Scraping

Scraping means the ability to read the contents of a web page. This functionality is built into your workers automatically, if Toolhouse detects your worker needs it. You can also add it manually.

## How scraping works

Your worker will have access to a scraper integration as needed. The scraper will try its best to read the contents of a webpage.

Scraping means reading websites. Scraping is not a technique to perform actions such as filling out forms or logging into websites.

By default, your worker will see an AI friendly version of the website. This means it will only see basic styling, but will not see the actual code of the page. If you need the worker to see the entire page code, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor: "I want my worker to scrape the page in HTML format".

{% hint style="info" %}
Accessing private pages in an automated way often violates the terms of service of the platform you're trying to access. If you are looking to extract data from platforms that require authorization, such as Linkedin or Instagram, you can use our [Integrations](/toolhouse/toolhouse/integrations).
{% endhint %}

## Supported countries

Sometimes the contents of a page change when you connect from a different country. Your worker can be instructed to connect to a specific location among the ones we support. To enable this behavior, type a prompt like this to your builder:

> Make my worker select the right country for the content. I always want to retrieve content from Italy.

This is useful when you need to retrieve content coming from a specific country or in a specific language.

Scraper is optimized for best effort. If your worker tries to request a country not supported, the scraper will still return a result from the closest available region.

{% hint style="info" %}
The list of supported countries may change at any time without prior notice. It is provided solely for reference.
{% endhint %}

| Country Name                                           | Country Code |
| ------------------------------------------------------ | ------------ |
| Afghanistan                                            | af           |
| Albania                                                | al           |
| Algeria                                                | dz           |
| American Samoa                                         | as           |
| Andorra                                                | ad           |
| Angola                                                 | ao           |
| Anguilla                                               | ai           |
| Antarctica                                             | aq           |
| Antigua & Barbuda                                      | ag           |
| Argentina                                              | ar           |
| Armenia                                                | am           |
| Aruba                                                  | aw           |
| Australia                                              | au           |
| Austria                                                | at           |
| Azerbaijan                                             | az           |
| Bahama                                                 | bs           |
| Bahrain                                                | bh           |
| Bangladesh                                             | bd           |
| Barbados                                               | bb           |
| Belarus                                                | by           |
| Belgium                                                | be           |
| Belize                                                 | bz           |
| Benin                                                  | bj           |
| Bermuda                                                | bm           |
| Bhutan                                                 | bt           |
| Bolivia                                                | bo           |
| Bosnia and Herzegovina                                 | ba           |
| Botswana                                               | bw           |
| Bouvet Island                                          | bv           |
| Brazil                                                 | br           |
| British Indian Ocean Territory                         | io           |
| British Virgin Islands                                 | vg           |
| Brunei Darussalam                                      | bn           |
| Bulgaria                                               | bg           |
| Burkina Faso                                           | bf           |
| Burma (no longer exists)                               | bu           |
| Burundi                                                | bi           |
| Cambodia                                               | kh           |
| Cameroon                                               | cm           |
| Canada                                                 | ca           |
| Cape Verde                                             | cv           |
| Cayman Islands                                         | ky           |
| Central African Republic                               | cf           |
| Chad                                                   | td           |
| Chile                                                  | cl           |
| China                                                  | cn           |
| Christmas Island                                       | cx           |
| Cocos (Keeling) Islands                                | cc           |
| Colombia                                               | co           |
| Comoros                                                | km           |
| Congo                                                  | cg           |
| Cook Iislands                                          | ck           |
| Costa Rica                                             | cr           |
| Croatia                                                | hr           |
| Cuba                                                   | cu           |
| Cyprus                                                 | cy           |
| Czech Republic                                         | cz           |
| Czechoslovakia (no longer exists)                      | cs           |
| Côte D'ivoire (Ivory Coast)                            | ci           |
| Democratic Yemen (no longer exists)                    | yd           |
| Denmark                                                | dk           |
| Djibouti                                               | dj           |
| Dominica                                               | dm           |
| Dominican Republic                                     | do           |
| East Timor                                             | tp           |
| Ecuador                                                | ec           |
| Egypt                                                  | eg           |
| El Salvador                                            | sv           |
| Equatorial Guinea                                      | gq           |
| Eritrea                                                | er           |
| Estonia                                                | ee           |
| Ethiopia                                               | et           |
| Falkland Islands (Malvinas)                            | fk           |
| Faroe Islands                                          | fo           |
| Fiji                                                   | fj           |
| Finland                                                | fi           |
| France                                                 | fr           |
| French Guiana                                          | gf           |
| French Polynesia                                       | pf           |
| French Southern Territories                            | tf           |
| Gabon                                                  | ga           |
| Gambia                                                 | gm           |
| Georgia                                                | ge           |
| German Democratic Republic (no longer exists)          | dd           |
| Germany                                                | de           |
| Ghana                                                  | gh           |
| Gibraltar                                              | gi           |
| Greece                                                 | gr           |
| Greenland                                              | gl           |
| Grenada                                                | gd           |
| Guadeloupe                                             | gp           |
| Guam                                                   | gu           |
| Guatemala                                              | gt           |
| Guinea                                                 | gn           |
| Guinea-Bissau                                          | gw           |
| Guyana                                                 | gy           |
| Haiti                                                  | ht           |
| Heard & McDonald Islands                               | hm           |
| Honduras                                               | hn           |
| Hong Kong                                              | hk           |
| Hungary                                                | hu           |
| Iceland                                                | is           |
| India                                                  | in           |
| Indonesia                                              | id           |
| Iraq                                                   | iq           |
| Ireland                                                | ie           |
| Islamic Republic of Iran                               | ir           |
| Israel                                                 | il           |
| Italy                                                  | it           |
| Jamaica                                                | jm           |
| Japan                                                  | jp           |
| Jordan                                                 | jo           |
| Kazakhstan                                             | kz           |
| Kenya                                                  | ke           |
| Kiribati                                               | ki           |
| Korea, Democratic People's Republic of                 | kp           |
| Korea, Republic of                                     | kr           |
| Kuwait                                                 | kw           |
| Kyrgyzstan                                             | kg           |
| Lao People's Democratic Republic                       | la           |
| Latvia                                                 | lv           |
| Lebanon                                                | lb           |
| Lesotho                                                | ls           |
| Liberia                                                | lr           |
| Libyan Arab Jamahiriya                                 | ly           |
| Liechtenstein                                          | li           |
| Lithuania                                              | lt           |
| Luxembourg                                             | lu           |
| Macau                                                  | mo           |
| Madagascar                                             | mg           |
| Malawi                                                 | mw           |
| Malaysia                                               | my           |
| Maldives                                               | mv           |
| Mali                                                   | ml           |
| Malta                                                  | mt           |
| Marshall Islands                                       | mh           |
| Martinique                                             | mq           |
| Mauritania                                             | mr           |
| Mauritius                                              | mu           |
| Mayotte                                                | yt           |
| Mexico                                                 | mx           |
| Micronesia                                             | fm           |
| Moldova, Republic of                                   | md           |
| Monaco                                                 | mc           |
| Mongolia                                               | mn           |
| Monserrat                                              | ms           |
| Morocco                                                | ma           |
| Mozambique                                             | mz           |
| Myanmar                                                | mm           |
| Namibia                                                | na           |
| Nauru                                                  | nr           |
| Nepal                                                  | np           |
| Netherlands Antilles                                   | an           |
| Netherlands                                            | nl           |
| Neutral Zone (no longer exists)                        | nt           |
| New Caledonia                                          | nc           |
| New Zealand                                            | nz           |
| Nicaragua                                              | ni           |
| Niger                                                  | ne           |
| Nigeria                                                | ng           |
| Niue                                                   | nu           |
| Norfolk Island                                         | nf           |
| Northern Mariana Islands                               | mp           |
| Norway                                                 | no           |
| Oman                                                   | om           |
| Pakistan                                               | pk           |
| Palau                                                  | pw           |
| Panama                                                 | pa           |
| Papua New Guinea                                       | pg           |
| Paraguay                                               | py           |
| Peru                                                   | pe           |
| Philippines                                            | ph           |
| Pitcairn                                               | pn           |
| Poland                                                 | pl           |
| Portugal                                               | pt           |
| Puerto Rico                                            | pr           |
| Qatar                                                  | qa           |
| Romania                                                | ro           |
| Russian Federation                                     | ru           |
| Rwanda                                                 | rw           |
| Réunion                                                | re           |
| Saint Lucia                                            | lc           |
| Samoa                                                  | ws           |
| San Marino                                             | sm           |
| Sao Tome & Principe                                    | st           |
| Saudi Arabia                                           | sa           |
| Senegal                                                | sn           |
| Seychelles                                             | sc           |
| Sierra Leone                                           | sl           |
| Singapore                                              | sg           |
| Slovakia                                               | sk           |
| Slovenia                                               | si           |
| Solomon Islands                                        | sb           |
| Somalia                                                | so           |
| South Africa                                           | za           |
| South Georgia and the South Sandwich Islands           | gs           |
| Spain                                                  | es           |
| Sri Lanka                                              | lk           |
| St. Helena                                             | sh           |
| St. Kitts and Nevis                                    | kn           |
| St. Pierre & Miquelon                                  | pm           |
| St. Vincent & the Grenadines                           | vc           |
| Sudan                                                  | sd           |
| Suriname                                               | sr           |
| Svalbard & Jan Mayen Islands                           | sj           |
| Swaziland                                              | sz           |
| Sweden                                                 | se           |
| Switzerland                                            | ch           |
| Syrian Arab Republic                                   | sy           |
| Taiwan, Province of China                              | tw           |
| Tajikistan                                             | tj           |
| Tanzania, United Republic of                           | tz           |
| Thailand                                               | th           |
| Togo                                                   | tg           |
| Tokelau                                                | tk           |
| Tonga                                                  | to           |
| Trinidad & Tobago                                      | tt           |
| Tunisia                                                | tn           |
| Turkey                                                 | tr           |
| Turkmenistan                                           | tm           |
| Turks & Caicos Islands                                 | tc           |
| Tuvalu                                                 | tv           |
| Uganda                                                 | ug           |
| Ukraine                                                | ua           |
| Union of Soviet Socialist Republics (no longer exists) | su           |
| United Arab Emirates                                   | ae           |
| United Kingdom (Great Britain)                         | gb           |
| United States Minor Outlying Islands                   | um           |
| United States Virgin Islands                           | vi           |
| United States                                          | us           |
| Uruguay                                                | uy           |
| Uzbekistan                                             | uz           |
| Vanuatu                                                | vu           |
| Vatican City State (Holy See)                          | va           |
| Venezuela                                              | ve           |
| Viet Nam                                               | vn           |
| Wallis & Futuna Islands                                | wf           |
| Western Sahara                                         | eh           |
| Yemen                                                  | ye           |
| Yugoslavia                                             | yu           |
| Zaire                                                  | zr           |
| Zambia                                                 | zm           |
| Zimbabwe                                               | zw           |

## Adding Scraping Manually

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose **Metascraper**
* Click **Save changes**


# Web and Social Media Search

Your worker can search the web to look for pages. When used with [Scraping](/toolhouse/capabilites/scraping), web search is useful to perform deep research tasks. You could for example generate daily competitive research based on up-to-date sources.

## Web Search

Web Search returns search results for a specific query. This is similar to performing a Google Search. Your AI worker will automatically pick the best keywords for the task you have in mind.

If you need your worker to always use a specific set of keywords, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor: "I want my worker to always use 'shark week' for its searches" (replace "shark week" with your own keywords).

## Current News Search

Your AI worker can read the current news for a specific topic. This is similar to reading Google News or Apple News. Your AI worker will automatically pick the best keywords for the type of news you're searching.

If you need your worker to always use a specific set of keywords, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor: "I want my worker to always use 'Dow Jones' for its news searches" (replace "Dow Jones" with your own keywords).

## Job Openings Search

Your AI worker can read job openings that are publicly available on the internet. Your AI worker will automatically pick the best keywords for the type of jobs you're searching.

If you need your worker to always use a specific set of keywords, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor: "I want my worker to always use 'Forward Deployed Engineer' for its job searches" (replace "Forward Deployed Engineer" with your own keywords).

## Social Media Search

Toolhouse has built-in tools to search specific social media services.

### X (Twitter) Search

Your AI worker can search the most recent X (Twitter) posts created in the past 7 days. The AI worker is already trained to use the X search query format when needed.

### Linkedin Search

Your AI worker can search Linkedin for job openings or specific profiles. The AI worker works on a specific dataset of public profiles.

### Facebook, Instagram, Reddit, and other social media

You can search other social media sites by connecting the relevant integrations. Take a look at your [Integrations Gallery](https://toolhouse.app/integrations) for more details.

## Adding Search integrations manually

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose one or more of these:
  * **Web Search** for regular search
  * **Get Current News** for current news search
  * **Job Openings Search** for job openings
  * **Search X** to search X (Twitter)
  * **Exa Linkedin Search** to search Linkedin
* Click **Save changes**


# Memory

Your AI workers can memorize data, behavior, and past outputs using memory. Toolhouse adds memory automatically if your worker needs it to complete their task. You can also add it manually.

## When to use Memory

* If you are building an email marketing worker, you can make it memorize the images it already selected for each email send, so it won't repeat them too often.
* If you are building a customer support worker, you can make it remember past user interaction to keep in mind recurring questions and let you know when a specific problem surfaces often.

## Reading and Writing Memories

Reading and writing memories are two separate operations. Toolhouse adds two separate integrations to your workers, one to read, and one to write. This is done in case you decide to make your agent read-only.

### Reading memories

Usually, your worker will only read the memory relevant to the task at hand. For example, if you're creating an email marketing worker, you may want the worker to remember the entire email messages it sent. Next time you talk to your worker, you may want it to pick a different images.

Internally, the worker will ask itself: "what images did I pick so far?". This question will be forwarded to its memory, which will only reply with a list of images it sent in the past.

This behavior is already preconfigured and you don't need to prompt it yourself.

### Writing memories

The worker will write memories as needed, based on the task. For example, an email marketing worker will always remember the emails it sent. A personal assistant worker, instead, may choose to not write all the memories—for example, it can choose to avoid remembering personal information.

You can change this behavior, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor: "I want my worker to always remember a summary of every conversation we have".

## Adding Memory manually

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose one or more of these:
  * **Semantic Memory Search** to read memories
  * **Memory Store** to write memories
* Click **Save changes**


# Image generation

Image generation allows your worker to create images, quotes, diagrams, and perform similar graphical tasks. Toolhouse adds this capability automatically if your worker needs it to complete their task. You can also add it manually.

## How image generation works

You can create a worker that needs to create image. For example, you can create a social media worker that posts on Linkedin for you. You want each post to have a quote from the post in big fonts.

In this case, Toolhouse detects the worker will need to create images and it will add Image generation  to it.

## Setting the style for the generated image

To specify the type of images the worker should generate, edit your agent in [Agent Editor](/toolhouse/toolhouse/agent-editor) and tell the editor something like: "I want my worker to always generate a hero quote against a starry background". You can use natural language and Toolhouse will translate it into proper prompt instructions for you.

## Generate an image and edit it for later

Your worker can use Image generation alongside [Image editing](/toolhouse/capabilites/image-editing) to modify the images it created.

## Adding Image generation manually

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose **Image Generation**
* Click **Save changes**


# Image editing

Image editing allows your worker to modify images, apply filters, and perform similar image manipulation tasks. Toolhouse adds this capability automatically if your worker needs it to complete their task. You can also add it manually.

## How image editing works

You can create a worker that needs to edit images. For example, you can create a social media worker that posts on LinkedIn for you based on a branded banner with your company's logo. You want each post to have a different tagline for every post, but keep the same overall banner template. and a consistent color palette.

In this case, Toolhouse detects the worker will need to edit images and it will add Image Editing to it.

## Setting the style for edited images

To specify how the worker should edit images, open your agent in Agent Editor and tell the editor something like: "I want my worker to always apply a warm vintage filter and add a subtle vignette to every image". You can use natural language and Toolhouse will translate it into proper editing instructions for you.

## Edit an image generated earlier

Your worker can use Image Editing alongside [Image generation](/toolhouse/capabilites/image-generation) to modify images it previously created. For example, your worker can generate a hero image and then crop it to multiple aspect ratios for different platforms.

## Adding Image Editing manually

* Go to [Agents](https://toolhouse.app/agents) in your Toolhouse
* Click on your worker to edit it
* Select <i class="fa-wrench">:wrench:</i> **Integrations,** then click **Add Integration**
* Choose **Image Edit**
* Click **Save changes**


# Vision

Vision allows your worker to read and understand images, as well as capture and interpret the contents of webpages. Toolhouse adds these capabilities automatically if your worker needs them to complete its task. You can also add it manually.

### How Vision works

You can create a worker that needs to see and interpret visual content. For example, you can create a customer support worker that monitors your website for you. You want the worker to detect changes in your UI and summarize what it sees on each page.

In this case, Toolhouse detects the worker will need to read images and it will add Vision to it.

### Setting up how your worker interprets images

To specify how the worker should describe or analyze images, edit your agent in Agent Editor and tell the editor something like: "I want my worker to always describe images in detail, focusing on any text, charts, or key visual elements it finds." You can use natural language and Toolhouse will translate it into proper prompt instructions for you.

### Read an image and act on it

Your worker can use Vision alongside other integrations-- for example, pairing it with Image Generation to first read an existing image and then produce a modified or inspired version of it.

### Adding Vision manually

* Go to **Agents** in your Toolhouse
* Click on your worker to edit it
* Select **Integrations**, then click **Add Integration**
* Choose **Describe Image** to read the contents of an image
* Choose **Page Screenshot** to take a screenshot of a webpage and read its contents
* Click **Save changes**


# Virtual computer

## Virtual Computer

Virtual Computer (also known as Code Interpreter) gives your AI workers access to a real, internet-connected computer to execute complex tasks — batch operations, advanced math, data processing, and more. Toolhouse adds the virtual computer automatically when your worker needs it, or you can add it manually.

### How the virtual computer works

You can create a worker that needs to perform tasks beyond simple text or API interactions. For example, you can build a data analyst worker that ingests a CSV file, runs statistical analysis, and returns a summary report. Rather than trying to perform these computations in memory, your worker can hand off the heavy lifting to the virtual computer.

In these situations, Toolhouse can decide to give your worker access to the virtual computer. The worker will write code for it; the virtual computer will have a code interpreter sandbox that executes the code to perform actions needed to perform its tasks.

Your worker interacts with the virtual computer by writing Python code and interpreting the results it returns. Any required Python packages are installed dynamically — your worker doesn't need to worry about environment setup.

**Example prompt for Agent Editor:**

> Make the worker download the CSV from this URL, calculate the 30-day rolling average for each numeric column, and return the results as a formatted table.

### Handing off tasks to the virtual computer

Your worker decides autonomously when it's more efficient to delegate an operation to the virtual computer. You don't need to instruct it explicitly — but you can guide this behavior in the Agent Editor.

To encourage your worker to use the virtual computer for specific types of tasks, tell the editor something like:

> I want my worker to use code interpreter to execute its tasks. Make it optimize the code so it ran in parallel requests.

You can use natural language and Toolhouse will translate it into proper instructions for your worker.

**Example tasks well-suited for the virtual computer:**

* Parsing and transforming large datasets
* Running machine learning inference on uploaded files
* Fetching and aggregating data from multiple web sources
* Performing complex mathematical or statistical computations
* Batch-renaming, converting, or compressing files

### Integrations inside the virtual computer

The virtual computer has access to the same integrations as your worker. If your worker is connected to Google Drive, Slack, or a database, the virtual computer can interact with those services during its task execution — no extra configuration needed.

### Adding the virtual computer manually

* Go to **Agents** in your Toolhouse dashboard
* Click on your worker to edit it
* Select **Integrations**, then click **Add Integration**
* Choose **Virtual Computer**
* Click **Save changes**

### Improving code quality with knowledge files

By default, the worker writes its own Python code for the virtual computer and refines it autonomously. However, getting to a working solution can take multiple attempts — especially when the worker doesn't know the structure of your data, the shape of an API response, or the specifics of your environment. You can short-circuit this trial-and-error loop by supplying reference code directly through Agent Files.

#### Why the worker may need multiple attempts

The worker understands how the virtual computer works, but it can't always predict the format of the data you pass it. For example, if your CSV has unusual column names, nested JSON fields, or non-standard encodings, the worker may write code that fails on the first attempt, inspect the error, and revise. This is expected behavior — but it consumes execution credits and counts toward the four-minute limit.

Providing a code reference eliminates most of this guesswork.

#### Option 1: Provide a working code reference

If you already have a Python script that handles your data correctly, you can give it to the worker as a starting point.

* Drag and drop your `.py` file into the **Agent Files** section of the Agent Editor
* Tell the editor to use it:

  > I gave a Python script to the worker that already handles our data pipeline correctly. Make the worker use it as a reference implementation when writing code for the virtual computer — don't make it start from scratch.

The worker will read the file, understand the logic, and use it as a template when constructing code for the virtual computer. This is especially useful when your data has a non-obvious structure or when you need the worker to use a specific library or coding pattern consistently.

#### Option 2: Reuse the last known good execution

If you don't have a reference script but the worker eventually produced correct code after a few attempts, you can capture that successful run and feed it back in — so future executions skip straight to what works.

* Go to [Logs](https://toolhouse.app/logs) and find the successful run
* Click `code_interpreter` in **Traces** to view the generated code
* Copy the code and save it as a `.py` file
* Still in the Logs page for that worker, click on the **Agent ID** value to go back to the editor.
* Select the **Details** tab, then drag your `.py` file into **Agent Files**
* Go to the **Chat** tab and let the editor know:

  > I gave a Python script to the worker with the last working code interpreter execution. Make the worker use it as the reference implementation going forward so it won't have to rediscover the correct approach each time.

On subsequent runs, the worker will reference this file instead of generating code from scratch, making executions faster and more reliable.

#### When to use each approach

| Situation                                                                      | Recommended approach                                                |
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------- |
| You have existing, tested code, and the structure of your data does not change | Upload your own script as a reference                               |
| The worker eventually got it right on its own, but your input data may change  | Capture the successful execution and re-upload it                   |
| Your data has a complex or unusual structure                                   | Either approach; include a sample of the data alongside the script  |
| You have consistent inputs and need consistent outputs                         | Upload a reference that imports and uses those libraries explicitly |

### Security and isolation

The virtual computer runs in a fully isolated environment. It cannot access your Toolhouse account data, and it cannot see or communicate with other workers. All code generated by your worker is reviewed before execution to ensure it is safe to run. Arbitrary shell commands are not permitted.

**Each execution is ephemeral:** no state is persisted between sandboxes or sessions. If your worker needs to use the virtual computer more than once in a session, Toolhouse will provision two separate, independent sandboxes.

### Limitations and gotchas

| Constraint                | Detail                                                                                                                                      |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| **Time limit**            | Each task is limited to **two hours** of execution time.                                                                                    |
| **Early termination**     | Based on resource constraints, the computer may terminate a task before the timeout. If this happens, no data is returned.                  |
| **Retry on failure**      | If a task terminates early, prompt your worker to retry. Example: *"The previous computation didn't complete — please try again."*          |
| **No arbitrary commands** | For security, only reviewed Python code can be executed. Shell commands and system calls are blocked.                                       |
| **No persistent state**   | Each sandbox is ephemeral. Data is not carried over between executions or sessions.                                                         |
| **Package availability**  | Any Python package can be requested and will be installed dynamically at runtime, but installation time counts toward the one-minute limit. |
| **MCP servers**           | Virtual computer will not be able to connect directly to your worker's MCP servers.                                                         |

### Combining the virtual computer with other integrations

Your worker can use its integrations within the virtual computer. The worker will automatically decide whether certain integrations are better called within the virtual computer, for example to parallelize operations. You can force your worker to pair the virtual computer with other integrations for end-to-end workflows. For instance:

1. **Google Drive integration** fetches a spreadsheet
2. **Virtual computer** cleans the data and runs a regression analysis
3. **Slack integration** posts the results to a channel

To set this up, describe the full workflow in the Agent Editor:

> Every Monday, make the worker last week's sales data from our Google Drive sheet, compute week-over-week growth per region, and send a summary to the #sales-updates Slack channel. I want the agent to perform these operations within the virtual computer for better performance.

### Connecting to third-party APIs

The virtual computer can connect to any API on the internet — not just the integrations Toolhouse provides out of the box. If you need your worker to talk to a service Toolhouse doesn't natively support, you can teach it how by uploading the API's documentation directly in the Agent Editor.

Because the virtual computer can install Python packages dynamically and make outbound HTTP requests, your worker can construct and execute API calls at runtime — no pre-built connector needed.

#### How to set it up

* Open your worker in **Agent Editor**
* Tell the editor what you want, for example:

  > I want this worker to connect to a specific API. I'll give you a document with the instructions on how to connect.
* Upload the API reference. Accepted formats:
  * **PDF** — ideal for legacy API documentation
  * **Plain text** — any `.txt`  or `.md` file with endpoint descriptions, auth details, and example requests
  * **OpenAPI spec** — `.yaml` or `.json` files following the OpenAPI standard; the worker will parse the spec and use it to construct correct requests

Your worker will read the documentation, understand the available endpoints and authentication method, and use the virtual computer to make the appropriate calls.

### Frequently asked questions

**Can I see the Python code my worker generates?** Yes. Go to [Logs](https://toolhouse.app/logs), find your worker's name, then look at the code generated by clicking `code_interpreter` in **Traces.**

**What happens if a required package takes too long to install?** Installation time counts toward the one-minute limit. If a package is large, the task may time out before execution begins. In that case, prompt your worker to retry or to use a lighter alternative package.

**Is my data safe inside the virtual computer?** Yes. The sandbox is isolated and ephemeral — data processed inside the virtual computer is not stored after the task completes, and no other workers or users can access it.

**What happens if the virtual computer takes too long to interpret the worker's code?** The code interpreter will send a timeout signal, and your worker can retry by writing more efficient code.

**Can the virtual computer access the same tools as the worker?** Yes. The virtual computer has access to all the tools your worker can use.


# File download

## File Download

File Download lets your AI workers fetch files from the internet and read their contents. Toolhouse adds this capability automatically when your worker needs it, or you can add it manually.

### How File Download works

When your worker encounters a URL pointing to a file — whether you provided it directly or the worker discovered it through Web Search — it hands that URL to the File Download integration. Toolhouse fetches the file on the worker's behalf and makes its contents available for the worker to read and act on.

This makes it possible to build workers that go beyond reading web pages. For example, you can create a research worker that finds a PDF report, downloads it, extracts the key figures, and summarizes them in a Slack message.

**Example prompt for your worker:**

> "Download the Q3 earnings report from this URL and summarize the revenue and margin figures."

### What you can do with downloaded files

Once a file is downloaded, your worker can use its contents to complete a wide range of tasks:

* **Edit files** — read the content, apply changes, and re-upload or forward the result
* **Move files across locations** — download from one source and upload to another, such as from a public URL to Google Drive
* **Upload files somewhere** — use the contents as input for another integration or API call
* **Process file contents** — extract data, summarize text, parse structured information, or feed the content into another step of a workflow

### File format and readability

Toolhouse does not check whether a file is in a readable format before downloading it. It will make a best-effort attempt to convert the file to text, but if the file is binary or non-textual (such as an image, compiled binary, or compressed archive), the worker will read it as-is — which may produce output that is not useful.

**Always prefer text-like files** — plain text, Markdown, CSV, HTML, JSON, XML, and similar formats work best.

For files like PDFs or scanned documents that require conversion to be readable, use **Document Parser** instead. Document Parser is purpose-built to extract clean, structured text from complex file types.

### Context window limits

Toolhouse limits the size of downloaded files to ensure the contents fit within your worker's context window. This cap is in place so the worker can continue operating effectively after reading the file — a file that exceeds the context window would crowd out the rest of the conversation and prevent the worker from completing its task.

If you need to process a very large file, consider using File Download together with the **Virtual Computer**, which can handle heavier processing outside the context window (see below).

### Using File Download with Virtual Computer

File Download and [Virtual computer](/toolhouse/capabilites/virtual-computer) work well together. File Download brings the file's contents into the worker's context, and Virtual Computer can then perform computation-heavy operations on that content — such as parsing a large CSV, running analysis, or transforming data — without exhausting the context window.

To configure this in Agent Editor, describe the two steps together:

> "Download the CSV file from the provided URL, then use the virtual computer to calculate the monthly totals per category and return a summary table."

You can also use File Download on its own, without Virtual Computer, when the file is small and the task is straightforward — such as reading a config file, extracting a few values from a JSON response, or reviewing a short document.

### Adding File Download manually

* Go to **Agents** in your Toolhouse dashboard
* Click on your worker to edit it
* Select **Integrations**, then click **Add Integration**
* Choose **File Download**
* Click **Save changes**

### Limitations and gotchas

| Constraint                       | Detail                                                                                                                                     |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| **File size cap**                | Downloaded files are truncated to fit within your worker's context window. Very large files may be cut off.                                |
| **No format validation**         | Toolhouse does not verify the file format before downloading. Binary or non-text files will be read as-is and may produce unusable output. |
| **Best-effort conversion**       | Toolhouse attempts to convert files to readable text, but conversion is not guaranteed for all file types.                                 |
| **Use Document Parser for PDFs** | PDFs and scanned documents are better handled by the Document Parser integration, which extracts clean text reliably.                      |
| **URL must be accessible**       | The file URL must be publicly reachable. Files behind authentication walls or private networks cannot be downloaded.                       |

### Frequently asked questions

**Can my worker download a file it found on its own?** Yes. If your worker uses Web Search and finds a URL pointing to a file, it can pass that URL directly to File Download without any additional input from you.

**What if the file is too large?** Toolhouse will truncate the file at the context window limit. If you need to process the full file, pair File Download with the Virtual Computer and prompt your worker to handle the content programmatically.

**When should I use Document Parser instead of File Download?** Use Document Parser whenever you're working with PDFs, scanned images, or other documents that require OCR or structured text extraction. File Download is best for files that are already in a text-friendly format.

**Can my worker download multiple files in one session?** Yes. Your worker can download files as many times as needed during a session. Each download is independent and the results are added to the worker's context as they come in.


# Document parser

## Document Parser

Document Parser lets your AI workers fetch a file from a URL and read it as clean, structured Markdown. It works like [File download](/toolhouse/capabilites/file-download), but instead of handing the raw file to your worker, Toolhouse converts it first — making the contents far easier for your worker to interpret and act on. Toolhouse adds Document Parser automatically when your worker needs it, or you can add it manually.

***

### How Document Parser works

When your worker needs to read a document — whether you provided the URL or the worker found it through Web Search — it passes the URL to Document Parser. Toolhouse fetches the file and converts its contents to Markdown on a best-effort basis before passing the result to your worker.

This means your worker receives clean, readable text with structure preserved — headings, lists, tables, and paragraphs — rather than raw bytes or noisy file output.

**Example prompt for your worker:**

> "Parse the product spec sheet at this URL and list all technical requirements in a table."

***

### When to use Document Parser vs. File Download

Document Parser is the right choice whenever the file you need to read has structure or formatting that matters — or whenever the file format is not natively readable as plain text.

| Situation                            | Use                                 |
| ------------------------------------ | ----------------------------------- |
| PDF reports, whitepapers, or manuals | **Document Parser**                 |
| Scanned or image-heavy documents     | **Document Parser**                 |
| HTML pages with complex layout       | **Document Parser**                 |
| Plain text, CSV, JSON, XML           | **File Download**                   |
| Binary files, archives, media        | Neither — consider Virtual Computer |

If you're unsure, prefer Document Parser. The Markdown conversion step is low-cost and makes the output significantly more useful to your worker.

***

### Best-effort conversion

Document Parser converts files to Markdown on a best-effort basis. Most well-structured documents — PDFs with selectable text, HTML pages, Word documents — convert reliably. However, some files may not convert cleanly:

* **Scanned documents** with no embedded text layer may produce poor output or none at all
* **Complex layouts** such as multi-column documents or heavily formatted slides may lose some structure during conversion
* **Non-document files** such as images or executables cannot be meaningfully converted

When conversion quality is critical, test with a sample document first. You can prompt your worker with:

> "Parse this document and tell me if the output looks complete and well-structured before proceeding."

***

### Context window limits

Like File Download, Document Parser limits the size of the converted output to fit within your worker's context window. The Markdown conversion often reduces file size compared to the raw original, which means Document Parser can sometimes surface more usable content than File Download for the same file.

If the document is very long and gets truncated, consider splitting the task — for example, asking your worker to parse and summarize one section at a time.

***

### Using Document Parser with Virtual Computer

Document Parser and Virtual Computer complement each other well for document-heavy workflows. Document Parser converts the file into readable Markdown; Virtual Computer can then process that content programmatically — extracting structured data, running calculations, or transforming the output.

To configure this in Agent Editor:

> "Parse the financial report at this URL using Document Parser, then use the virtual computer to extract all numeric values from the tables and compute year-over-year growth."

***

### Adding Document Parser manually

* Go to **Agents** in your Toolhouse dashboard
* Click on your worker to edit it
* Select **Integrations**, then click **Add Integration**
* Choose **Document Parser**
* Click **Save changes**

***

### Limitations and gotchas

| Constraint                 | Detail                                                                                                                                    |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| **Best-effort conversion** | Markdown conversion is not guaranteed for all file types. Scanned documents, image-heavy files, and unusual formats may not convert well. |
| **Output size cap**        | Converted output is truncated to fit within your worker's context window. Very long documents may be cut off.                             |
| **No binary support**      | Files that cannot be meaningfully converted to text — images, executables, archives — are not suited for Document Parser.                 |
| **URL must be accessible** | The file URL must be publicly reachable. Files behind authentication or private networks cannot be fetched.                               |

***

### Frequently asked questions

**How is Document Parser different from File Download?** File Download gives your worker the raw file contents as-is. Document Parser adds a conversion step that transforms the file into Markdown, making it far easier for your worker to read and reason about structured documents like PDFs or HTML pages.

**Does Document Parser work on web pages, not just files?** Yes. If the URL points to an HTML page, Document Parser will convert the page content to Markdown — stripping navigation, ads, and other boilerplate to surface the core content.

**What if the conversion produces poor output?** You can prompt your worker to flag quality issues before proceeding, or fall back to File Download for simple text files. For scanned documents with no text layer, Document Parser may not be the right tool — consider pre-processing the file with an OCR service before passing it to your worker.

**Can my worker use Document Parser on a file it found itself?** Yes. If your worker discovers a document URL through Web Search or another integration, it can pass that URL to Document Parser without any additional input from you.


# Skills & Knowledge

You can upload Skills and give Knowledge to your files via Agent Files.

Agent Files are knowledge files you can attach to your worker. They can contain skills, guidelines, process descriptions, templates, and anything else your worker needs to keep in mind in order to complete its tasks effectively.

***

### How files work

When you add a file, its contents are added directly to your worker's instructions. Your worker can then reference that knowledge at any point during a task — without you needing to repeat it in every prompt.

Files typically fall into one of three categories:

**Skill files (`SKILLS.md`)** teach your worker how to perform specific tasks. A skill file is a collection of capabilities, each with precise instructions on how to carry it out. For example, a skill file for a writing worker might describe how to format a blog post, how to write a subject line, or how to adapt tone for different audiences.

**Templates** give your worker a blueprint to follow when generating output. For example, if you build a worker that produces email campaigns, you can upload the HTML template you always send to your contacts — and the worker will use it as the basis for every email it generates.

**Guidelines** capture rules, processes, and standards your worker should always follow. This includes standard operating procedures, brand voice guidelines, compliance requirements, or any other instructions that apply across tasks.

***

### Adding files

You can add any text file or PDF to your worker. Supported file types are:

* `.md`&#x20;
* `.txt`&#x20;
* `.csv`&#x20;
* `.html`&#x20;
* `.pdf`&#x20;
* `.js`&#x20;
* `.ts`&#x20;
* `.tsx`&#x20;
* `.c`&#x20;
* `.cc`&#x20;
* `.cpp`

If you upload a file in a format not listed above, Toolhouse will attempt to convert it to text first. If the conversion succeeds, the file will be added to your worker. If it fails, you'll be prompted to upload a supported format instead.

***

### Tips for writing effective files

**Be explicit.** Your worker follows instructions literally. If a guideline has exceptions, write them down — don't assume the worker will infer them.

**Keep files focused.** One file per topic is easier for your worker to apply than a single large file covering everything. For example, keep your tone guidelines separate from your formatting rules.

**Use Markdown for structure.** Even for non-skill files, using headings, lists, and bold text helps your worker navigate the content and apply the right section at the right time.

**Name your files clearly.** File names are visible to your worker and help it understand what each file is for. Prefer descriptive names like `email-template.html` or `brand-voice-guidelines.md` over generic ones like `file1.txt`.

***

### Example

You're building a worker that generates weekly email newsletters. You want every email to use the same layout and follow your brand's tone of voice. You add two files:

* `newsletter-template.html` — the HTML layout your team always uses, with placeholder sections for the headline, body, and footer
* `brand-guidelines.md` — a document describing your tone of voice, words to avoid, and formatting rules

At runtime, the worker reads both files and uses them together to produce an email that matches your layout and sounds like your brand — without you needing to explain any of this in your prompt.


# Worker Orchestration

Your Toolhouse workers can work directly with other workers. Rather than building one monolithic worker, you can create specialized workers and have a **manager** coordinate them — deciding who does what, in what order, and whether to run them in parallel or in sequence. The manager also delivers the final output to you.

You don't need to define a rigid workflow. The manager already knows how to interact with the workers you connect to it — but you can give it explicit instructions if you want more control.

### How the manager works

The manager is a worker like any other, but its job is coordination. It:

* Decides which specialized workers to involve for a given task
* Determines whether workers should run in sequence or in parallel
* Passes output from one worker as input to the next when needed
* Returns a final, consolidated result to you

### Building an orchestrated system

Build your specialized workers first, then create the manager **in a new chat** in Agent Builder. Creating the manager in a separate session ensures Agent Builder scopes it correctly and can discover the workers you've already built.

**Example:** Say you want a marketing worker that manages your online presence. You could build:

1. A **content generator** worker
2. An **email worker** connected to your email system
3. A **LinkedIn poster** worker for your page or profile

Once those exist, open a new chat and prompt Agent Builder with something like:

> Create a manager agent that's in charge of my marketing. It should call the content generator agent to generate the content, then feed the generated content to both the email and LinkedIn worker to adapt the content and post to the right channel.

The manager will call the content generator first, then pass its output to the email and LinkedIn workers — running them in parallel since they're independent.

### Parallel and sequential execution

The manager decides autonomously whether to run workers at the same time or one after another, based on data dependencies. You can also specify this explicitly in your prompt.

| Mode           | When it applies                                           |
| -------------- | --------------------------------------------------------- |
| **Sequential** | A worker's output is needed as input by the next          |
| **Parallel**   | Workers are independent and can run simultaneously        |
| **Mixed**      | A sequential step followed by parallel downstream workers |

### Hierarchical chains

Orchestration isn't limited to a single manager layer. Any worker can itself act as a manager for other workers — there's no limit to chain depth. A manager can call a worker that calls a worker that calls a worker, and so on.

### Adding orchestration manually

Agent Builder adds the **Call Agent** integration automatically based on what you're building. To add it yourself:

* Go to **Agents** in your Toolhouse dashboard
* Click on your worker to edit it
* Select **Integrations**, then click **Add Integration**
* Choose **Call Agent**
* Click **Save changes**


# Authentication

In order to use the [Workers API](/toolhouse/developers/workers-api) you'll need to authenticate using a Toolhouse API key.

You can see the API key in the [API Keys section](https://toolhouse.app/settings/api-keys) or by navigating to your user menu and selecting **API Keys.**

The first API key is generated for you when you sign up for Toolhouse.

### Adding a new API key

1. Go to the [API Keys section](https://toolhouse.app/settings/api-keys) or by navigate to your user menu, then select **API Keys.**
2. In the **Generate new API key** section, type a name for your API Key. Give the key a recognizable name so you can reference it later
3. Click **Generate.**

### API key security

API Keys are encrypted both in transit and at rest in the Toolhouse platform.

{% hint style="info" %}
Toolhouse will never ask you to share API keys or other sensitive details.
{% endhint %}

### More ways to authenticate

By default, Toolhouse manages authentication for you. Customers on the Enterprise plan can implement custom authentication models based on their approved security policies. Talk to the Toolhouse team for more information.


# Workers API

## Workers API

Each worker can be called as an API. The API endpoint is formatted as `https://agents.toolhouse.ai/$AGENT_ID`, where `$AGENT_ID` is a unique GUID assigned to your worker. You must authenticate your request with your API Key.

You can create an API Key in the [API Keys page](https://toolhouse.app/settings/api-keys).

### Calling your worker

You can call your worker by simply making a `POST` request towards its endpoint.

```bash
curl -XPOST \
  https://agents.toolhouse.ai/$AGENT_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY'
  --json '{"message": "Book at meeting over lunch with Jessica."}'
```

The response headers will contain a `X-Toolhouse-Run-ID` header containing a unique ID for the execution run. You can use this value to continue the interaction with your worker. You can think of this ID as an identifier of the current context including the initial message, any tool call, and the response from the worker.

### Handling the response from the worker

The agent can stream its response as text or [NDJSON](https://en.wikipedia.org/wiki/JSON_streaming#Newline-delimited_JSON). You will be able to see both the agent's output and the tool calls.

**Text endpoints**

Text response endpoints will only include the worker's output. They will not output tool calls or debug information. We offer these endpoints as a convenience, so you won't have to build additional logic to parse the worker's response when you only need to see its user-facing output.

The following text endpoints are available:

* POST `https://agents.toolhouse.ai/$AGENT_ID`: start a new worker task
* PUT `https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID`: continue an interaction with a worker

**NDJSON endpoints**

NDJSON endpoints will output the worker's output and out-of-band signals such as tool calls and their responses. These endpoints are useful if you need to display or debug tool calls from your agent.

The following NDJSON endpoints are available:

* POST `https://agents.toolhouse.ai/ndjson/$AGENT_ID`: start a new worker task
* PUT `https://agents.toolhouse.ai/ndjson/$AGENT_ID/$RUN_ID`: continue an interaction with a worker

### Continuing an interaction with a worker

The `X-Toolhouse-Run-ID` header returned in the initial response from the POST call will allow you to continue the interaction with this worker while keeping a reference of the current context. Using a Run ID is particularly useful for conversational workers, because it allows them to retain all the content and history from previous messages.

To continue a conversation, you can use the Run ID in a `PUT` request to the same agent endpoint.

```bash
# Initial request to execute the worker, assuming $AGENT_ID is a deal finder
curl -XPOST https://agents.toolhouse.ai/$AGENT_ID \
  -v -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \ 
  --json '{
  "message": "Find discounts on wide-angle computer displays"
}'
# Headers will contain x-toolhouse-run-id: $RUN_ID
# Worker will stream the response

# Continuing the conversation using the X-Toolhouse-Run-ID
curl -XPUT https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID \
-H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
--json '{
  "message": "thank you, now find products similar to an iPhone"
}'
# Headers will contain x-toolhouse-run-id: $RUN_ID
# Agent will stream a new response using the current context
```

The `PUT` request will also send a `X-Toolhouse-Run-ID` header containing the run ID for subsequent requests.

***

### Background execution with Virtual Computer (Code Interpreter)

Workers that use [Virtual Computer](https://docs.toolhouse.ai/toolhouse/capabilites/virtual-computer) (also known as Code Interpreter) may execute jobs in the background. When this happens, the API signals the background execution via response headers, and your client is expected to poll until the job completes before resuming the conversation.

#### How background execution works

When a tool such as `code_interpreter` requests background execution, the Workers API:

1. Returns a `x-toolhouse-job-id` header on the relevant endpoints to signal that a job is running.
2. Blocks new `PUT` requests (returning `409`) until the job completes.
3. Allows new `POST` requests to start fresh interactions as normal.
4. Expects your client to poll the `GET` endpoint and resume with a `PUT` once the header disappears.

#### Endpoint behavior during background execution

**GET `/:agent_id/:run_id`**

Poll this endpoint to check whether a background job is still running.

While a job is in progress, the response includes:

```
x-toolhouse-job-id: $JOB_ID
```

Once the job completes (successfully or with an error), the header is absent. The absence of this header is your signal that the agent is ready to receive a new message.

**PUT `/:agent_id/:run_id`**

Sending a `PUT` while a job is in progress returns:

```
HTTP 409 Conflict
```

The request is rejected until background execution completes. Your code must poll the `GET` endpoint to check for the completion of this execution.

Once the `GET` endpoint no longer returns `x-toolhouse-job-id`, send a `PUT` with any `message` value to resume inference:

```bash
curl -XPUT https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json '{"message": "continue"}'
```

{% hint style="info" %}
If the agent itself decides to call Code Interpreter again in response to your `PUT`, the same background execution flow restarts. Check for `x-toolhouse-job-id` in the `PUT` response headers and resume polling the `GET` endpoint as needed.
{% endhint %}

#### Recommended polling flow

```mermaid
flowchart TD
    A([POST /:agent_id]) --> B[Receive x-toolhouse-run-id]
    B --> C{Response contains\nx-toolhouse-job-id?}
    C -- No --> G[Handle streamed response]
    C -- Yes --> D[GET /:agent_id/:run_id]
    D --> E{x-toolhouse-job-id\npresent?}
    E -- Yes, wait --> D
    E -- No, break --> F["PUT /:agent_id/:run_id {'message': ''}"]
    F --> H{x-toolhouse-job-id\nin response?}
    H -- Yes --> D
    H -- No --> G
```

```
POST /:agent_id
  └─► Receive x-toolhouse-run-id: $RUN_ID

  If response contains x-toolhouse-job-id:
    Loop:
      GET /:agent_id/$RUN_ID
        If x-toolhouse-job-id present → wait, then repeat
        If x-toolhouse-job-id absent  → break

    PUT /:agent_id/$RUN_ID  {"message": ""}
      └─► If x-toolhouse-job-id present → repeat polling loop
          If no job header             → handle streamed response
```

#### Example: polling until a Code Interpreter job completes

```bash
# Start the task
RUN_ID=$(curl -sI -XPOST https://agents.toolhouse.ai/$AGENT_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json '{"message": "Analyze this CSV and plot a histogram"}' \
  | grep -i x-toolhouse-run-id | awk '{print $2}' | tr -d '\r')

# Poll until the background job finishes
while true; do
  JOB_ID=$(curl -sI https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID \
    -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
    | grep -i x-toolhouse-job-id | awk '{print $2}' | tr -d '\r')

  if [ -z "$JOB_ID" ]; then
    echo "Job complete, resuming..."
    break
  fi

  echo "Job $JOB_ID in progress, waiting..."
  sleep 3
done

# Resume inference
curl -XPUT https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json '{"message": ""}'
```

#### Frontend / widget integration

If you are building a UI on top of the Workers API, you can use the `x-toolhouse-job-id` header from the `GET` endpoint to:

* Show a loading or progress indicator while the job runs.
* Disable the message input field until the header disappears.
* Resume the conversation automatically by sending a `PUT` once polling succeeds.

***

### Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.toolhouse.ai/toolhouse/developers/workers-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language. The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.


# Worker statefulness

Toolhouse workers are stateful by default. They automatically maintain persistent conversation context across multiple interactions without requiring external database configuration. Each conversation is assigned a unique run ID that preserves the complete interaction history, including user messages, agent responses, and MCP server calls.

### Overview

By default, all Toolhouse workers are stateful and start with a clear context. New POST agent call to `https://agents.toolhouse.ai/{YOUR_AGENT_ID}` will start a new interaction between the agent and the user. Each call will return an `X-Toolhouse-Run-ID` header that will identify the state ID. You can of this `X-Toolhouse-Run-ID` as a session ID:

```bash
curl -H "Authorization: Bearer $API_KEY" -v -XPOST https://agents.toolhouse.ai/{YOUR_AGENT_ID}
... curl output ...
< x-toolhouse-run-id: 92fa77db-507e-4c16-9a6d-06fb69eb1caf

¿Sobre qué tema te gustaría hablar hoy?
```

From now on, you can reference the Run ID in a PUT call to keep adding user messages to the conversation:

```bash
curl -H "Authorization: Bearer $API_KEY" -XPUT https://agents.toolhouse.ai/{YOUR_AGENT_ID}/{RUN_ID} \
  --json '{ "message": "no sé, puedes escoger tu un tema para esta conversación?" }'
  
¿Hablamos de inteligencia artificial?
```

At any point, you can get the full history of the conversation through a GET request:

```bash
curl -H "Authorization: Bearer $API_KEY" https://agents.toolhouse.ai/{YOUR_AGENT_ID}/{RUN_ID}
[
  { "role": "user", "content": "Hola" },
  { "role": "assistant", "content": "¿Sobre qué tema te gustaría hablar hoy?" },
  { "role": "user", "content": "no sé, puedes escoger tu un tema para esta conversación?" },
  { "role": "assistant", "content": "¿Hablamos de inteligencia artificial?" }
]
```


# Attachments

Workers support file attachments alongside messages, which you can upload via the [Workers API](/toolhouse/developers/workers-api). You can provide attachments either as a publicly accessible URL or as a directly uploaded file encoded in base64. Attachments are supported by both `POST` and `PUT` endpoints.

Attachments are different from [Skills & Knowledge](/toolhouse/capabilites/skills-and-knowledge). Attachments are uploaded into the user's message. Examples of attachments can be:

* If you are building a financial analyst worker, you can send a spreadsheets it will need to analyze to create its financial model.
* If you are building a SEO keyword optimizer agent, you can send a CSV with a list of websites to optimize.
* For legal counsel workers, you could send Word documents or PDF you'll want them to redline.

***

### General Rules

* **Maximum file size:** 10 MB per attachment (applies to both URL and direct uploads). This limit can be increased — use the **Contact us** option in the Toolhouse dashboard to request an upgrade.
* **No storage:** attachments are not stored in a file storage facility, and will be sent as is to the worker.
* **Data ownership:** You must own the data you submit. All attachments must adhere to the [Toolhouse Terms of Service](https://toolhouse.ai/tos). Abuse will result in account termination.

***

### URL Attachments

Provide the fully formed URL to the resource. The URL must be publicly accessible, and our systems must be able to download it within a reasonable timeframe.

* **Timeout:** 30 seconds. Downloads that exceed this limit will be skipped and execution will continue without the file.
* The URL must include the scheme (e.g. `https://`).

```bash
curl -XPOST \
  https://agents.toolhouse.ai/$AGENT_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json '{
    "message": "Summarize this document.",
    "attachment": {
      "url": "https://example.com/report.pdf"
    }
  }'
```

***

### Direct Upload

Attach the file directly in the request body by encoding it as a base64 string and supplying it in the `attachment` field.

{% tabs %}
{% tab title="Prompt" %}
{% code overflow="wrap" %}

```markdown
I'm integrating the Toolhouse Workers API into my codebase. I need a function that accepts a file path as input, reads the file, encodes it as base64, and attaches it to a POST request to `https://agents.toolhouse.ai/$AGENT_ID`. The request body should be JSON with a `message` field and an `attachment` field containing data (the base64 string). Auth is via a Bearer token in the `Authorization` header. Use the conventions and language already used in this codebase, handle errors gracefully, and make the agent ID, API key, and message configurable.
```

{% endcode %}
{% endtab %}

{% tab title="JavaScript" %}

```typescript
const fs = require("fs");

async function callWorkerWithAttachment(agentId, apiKey, filePath, message) {
  const fileBuffer = fs.readFileSync(filePath);
  const base64Data = fileBuffer.toString("base64");
  const filename = filePath.split("/").pop();

  const response = await fetch(`https://agents.toolhouse.ai/${agentId}`, {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      message,
      attachment: {
        data: base64Data,
        filename,
      },
    }),
  });

  const runId = response.headers.get("x-toolhouse-run-id");
  const text = await response.text();
  return { runId, text };
}
```

{% endtab %}

{% tab title="Shell" %}

```bash
FILE_PATH="path/to/your/file.xlsx"
FILENAME=$(basename "$FILE_PATH")
BASE64_DATA=$(base64 -i "$FILE_PATH")

curl -XPOST \
  https://agents.toolhouse.ai/$AGENT_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json "{
    \"message\": \"Analyze this spreadsheet.\",
    \"attachment\": {
      \"data\": \"$BASE64_DATA\"
    }
  }"
```

{% endtab %}
{% endtabs %}

***

### Continuing a Conversation with an Attachment

Attachments can be included in `PUT` requests to continue an existing interaction. Use the `X-Toolhouse-Run-ID` from the initial response to maintain context.

```bash
# Continue a conversation and include a new attachment
curl -XPUT https://agents.toolhouse.ai/$AGENT_ID/$RUN_ID \
  -H 'Authorization: Bearer YOUR_TOOLHOUSE_API_KEY' \
  --json '{
    "message": "Now summarize this follow-up document.",
    "attachment": {
      "url": "https://example.com/follow-up.pdf"
    }
  }'
```

***

### Conversion Behavior

When an attachment is received, the endpoint automatically detects its MIME type and processes the file accordingly.

* If the file is not a supported type, or if the base64 encoding is invalid, the attachment will be **silently discarded** and execution will continue without it.
* No error is returned when an attachment is discarded — check that your file type and encoding are correct if the worker behaves as though no file was provided.

***

### Supported File Types

| Category           | Extensions                                                                                                                                                                                                                                                                                                                             | MIME Types                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **PDF files**      | `.pdf`                                                                                                                                                                                                                                                                                                                                 | `application/pdf`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Spreadsheets**   | `.xla`, `.xlb`, `.xlc`, `.xlm`, `.xls`, `.xlsx`, `.xlt`, `.xlw`                                                                                                                                                                                                                                                                        | `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`, `application/vnd.ms-excel`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **Spreadsheets**   | `.csv`, `.tsv`, `.iif`, Google Sheets                                                                                                                                                                                                                                                                                                  | `text/csv`, `application/csv`, `text/tsv`, `text/x-iif`, `application/x-iif`, `application/vnd.google-apps.spreadsheet`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **Rich documents** | `.doc`, `.docx`, `.dot`, `.odt`, `.rtf`, Pages, Google Docs                                                                                                                                                                                                                                                                            | `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/msword`, `application/rtf`, `text/rtf`, `application/vnd.oasis.opendocument.text`, `application/vnd.apple.pages`, `application/vnd.google-apps.document`, `application/vnd.apple.iwork`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| **Presentations**  | `.pot`, `.ppa`, `.pps`, `.ppt`, `.pptx`, `.pwz`, `.wiz`, Keynote, Google Slides                                                                                                                                                                                                                                                        | `application/vnd.openxmlformats-officedocument.presentationml.presentation`, `application/vnd.ms-powerpoint`, `application/vnd.apple.keynote`, `application/vnd.google-apps.presentation`, `application/vnd.apple.iwork`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Text and code**  | `.asm`, `.bat`, `.c`, `.cc`, `.conf`, `.cpp`, `.css`, `.cxx`, `.def`, `.dic`, `.eml`, `.h`, `.hh`, `.htm`, `.html`, `.ics`, `.ifb`, `.in`, `.js`, `.json`, `.ksh`, `.list`, `.log`, `.markdown`, `.md`, `.mht`, `.mhtml`, `.mime`, `.mjs`, `.nws`, `.pl`, `.py`, `.rst`, `.s`, `.sql`, `.srt`, `.text`, `.txt`, `.vcf`, `.vtt`, `.xml` | `text/plain`, `text/markdown`, `text/html`, `text/css`, `application/json`, `application/javascript`, `application/typescript`, `text/x-python`, `text/x-c`, `text/x-c++`, `text/x-java`, `text/x-go`, `text/x-rust`, `text/x-ruby`, `text/x-sh`, `text/x-bash`, `text/x-php`, `text/x-swift`, `text/x-kotlin`, `text/x-scala`, `text/x-typescript`, `text/x-sql`, `text/x-yaml`, `application/yaml`, `application/x-yaml`, `application/toml`, `application/graphql`, `text/x-dockerfile`, `text/x-ini`, `text/x-toml`, `text/x-hcl`, `text/x-terraform`, `text/x-sass`, `text/x-scss`, `text/x-less`, `text/x-protobuf`, `text/x-r`, `text/x-julia`, `text/x-perl`, `text/x-lua`, `text/x-dart`, `text/x-erlang`, `text/x-elixir`, `text/x-haskell`, `text/x-clojure`, `text/x-groovy`, `text/calendar`, `text/vtt`, `text/x-vcard`, `message/rfc822` |


# Tavily (Official Partner)

## Tavily (Official Partner)

This guide helps you connect Tavily to your AI Worker. Tavily provides real-time web search, data extraction, and web mapping capabilities. Once connected, your AI Worker can access live information from the web instead of relying on training data alone.

1. Sign up for a Tavily account and get your API key at [app.tavily.com/home](https://app.tavily.com/home).
2. In Toolhouse, open the [Workers](https://toolhouse.app/agents) page and click on the Worker you want to connect Tavily to.
3. In the top menu, click **Details**.

   ![](/files/OhdTDAXpMvvv2pVD2rCQ)
4. Open the **MCP Servers** section.
5. Paste your Tavily MCP URL into the input field, replacing `<your-api-key>` with the key from step 1:

   ```
   https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>
   ```
6. Click **Add Server**, then **Save**. Tavily is now connected to your Worker.

### Testing your Worker

Open the Testing Workbench for your Worker and try a web search request. For example:

> What are the latest news headlines about AI today?

Your Worker should return live, sourced results from the web. If it does, Tavily is working correctly.

### Next steps

With Tavily connected, your Worker can now support use cases like:

* **Real-time research** — look up current news, company information, or market trends
* **Due diligence** — verify claims and research individuals or organizations against live web data
* **Content intelligence** — extract structured information from news sources and websites
* **Competitive monitoring** — track competitor pricing, product changes, and industry updates

If you have questions or run into any issues, [join the Toolhouse Discord](https://discord.toolhouse.ai/).

***

**Agent Instructions: Querying This Documentation**

If you need additional information not directly available on this page, perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.toolhouse.ai/toolhouse/integrations/tavily-official-partner.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language. The response will contain a direct answer and relevant excerpts from the documentation. Use this when the answer isn't explicitly present on the page, you need clarification, or you want to retrieve related sections.


# Airtable

Your Toolhouse AI Worker can connect to Airtable using 25 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](https://toolhouse.app/auth-connections?authkit_slugs=airtable).

## Tools (25)

### `Airtable Create Base`

Integration name: **AIRTABLE\_CREATE\_BASE**

Creates a new Airtable base with specified tables and fields within a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`        | string |     ✅    | `"Marketing Campaigns Q3"`                                                                                                                                                                                                                                                                                                                                                                                                         | Name for the new Airtable base, visible in the UI.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `tables`      | array  |     ✅    | `[{"name":"Apartments","fields":[{"name":"Name","type":"singleLineText","description":"Name of the apartment"},{"name":"Address","type":"singleLineText"},{"name":"Visited","type":"checkbox","options":{"icon":"check","color":"greenBright"}},{"name":"CreatedAt","type":"dateTime","options":{"timeZone":"utc","dateFormat":{"name":"iso"},"timeFormat":{"name":"24hour"}}}],"description":"A to-do list of places to visit"}]` | Configurations for tables to be created in the new base; each table needs 'name' and 'fields'. Must be an array of table objects, not a stringified JSON. The first field in each table cannot be 'singleSelect' as it becomes the primary field. Select field choices must include both 'id' and 'name' for each choice. Field types 'formula', 'rollup', 'count', 'lookup', 'multipleLookupValues', 'autoNumber', 'createdTime', and 'lastModifiedTime' are not supported at base creation. For 'dateTime' fields, options require 'dateFormat' (with name: 'local'\|'friendly'\|'us'\|'european'\|'iso') and 'timeFormat' (with name: '12hour'\|'24hour'); 'timeZone' defaults to 'utc' if not specified. |
| `workspaceId` | string |     ✅    | `"wspabcdef12345678"`                                                                                                                                                                                                                                                                                                                                                                                                              | Workspace ID where the base will be created. MUST start with 'wsp' prefix (e.g., 'wspXXXXXXXXXXXXXX'). Common mistake: Do not use user IDs (usr prefix), base IDs (app prefix), or other Airtable IDs - only workspace IDs work here. Get your workspace ID from Airtable workspace settings or via the List Bases API.                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Airtable Create Comment`

Integration name: **AIRTABLE\_CREATE\_COMMENT**

Tool to create a comment on a specific Airtable record. Use when adding comments to records, mentioning collaborators using @\[userId] syntax, or creating threaded comment replies. Supports optional parentCommentId for threaded conversations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                          | Description                                                                                                                            |
| ----------------- | ------ | :------: | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `text`            | string |     ✅    | `"This is an important update."` | The content of the comment. To mention a user, use the format @\[userId] (e.g., @\[usrGISFlfA7l5F7kY6]).                               |
| `baseId`          | string |     ✅    | `"appXXXXXXXXXXXXXX"`            | The unique identifier of the Airtable base. This typically starts with 'app'.                                                          |
| `recordId`        | string |     ✅    | `"recYYYYYYYYYYYY"`              | The unique identifier of the record on which the comment will be created. This typically starts with 'rec'.                            |
| `tableIdOrName`   | string |     ✅    | `"tblXXXXXXXXXXXXXX"`            | The unique identifier (typically starting with 'tbl') or the name of the table within the base.                                        |
| `parentCommentId` | string |          | `"comXXXXXXXXXXXXX"`             | The ID of the parent comment for creating threaded replies. If provided, this comment will be a reply to the specified parent comment. |

***

### `Airtable Create Field`

Integration name: **AIRTABLE\_CREATE\_FIELD**

Creates a new field within a specified table in an Airtable base.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| --------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string |     ✅    | `"Status"`                                                                                                                              | REQUIRED. The name for the new field. Field names must be unique within a table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `type`          | string |          | `"singleSelect"`                                                                                                                        | The type for the new field. If not provided, it defaults to 'singleLineText'. Types that can be created via API: 'singleLineText', 'multilineText', 'richText', 'singleSelect', 'multipleSelects', 'checkbox', 'number', 'percent', 'currency', 'date', 'dateTime', 'duration', 'phoneNumber', 'email', 'url', 'multipleAttachments', 'barcode', 'rating', 'multipleRecordLinks', 'createdBy', 'lastModifiedBy', 'externalSyncSource'. For attachment fields, use 'multipleAttachments' (legacy 'attachment' is auto-converted). Cannot be created via API: 'formula', 'rollup', 'count', 'lookup', 'multipleLookupValues', 'autoNumber', 'createdTime', 'lastModifiedTime', 'button'.                                                                                                                                                                                                                  |
| `baseId`        | string |     ✅    | `"appExampleBaseId"`                                                                                                                    | REQUIRED. The unique identifier of the base where the field will be created. Format: 'appXXXXXXXXXXXXXXX' (17 characters starting with 'app').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `options`       | object |          | `{"choices":[{"name":"Todo","color":"redLight2"},{"name":"In Progress","color":"yellowLight2"},{"name":"Done","color":"greenLight2"}]}` | Type-specific configuration for the new field. Required for 'multipleRecordLinks' (must include 'linkedTableId' - the ID (format: tblXXXXXXXXXXXXXX) or name (case-sensitive) of the table to link to; if you provide 'isReversed' or 'prefersSingleRecordLink', they will be automatically stripped as the API rejects these fields in create requests and sets its own default values). Also required for: 'number'/'percent' ('precision'), 'currency' ('precision' and 'symbol'), 'checkbox' ('color' and 'icon'), 'date' ('dateFormat'), 'dateTime' ('dateFormat', 'timeFormat', 'timeZone'), 'rating' ('max', 'color' and 'icon') - sensible defaults are auto-applied if omitted. For 'singleSelect' and 'multipleSelects', 'choices' array must include objects with 'name' (required) and optionally 'color'. Do not include 'id' when creating new choices - the API will auto-generate them. |
| `description`   | string |          | `"Tracks the current status of a task."`                                                                                                | An optional description for the new field. This can provide context or instructions for the field's usage.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `tableIdOrName` | string |     ✅    | `"tblXXXXXXXXXXXXXX"`                                                                                                                   | The ID or name of the table within the base where the field will be created. Table IDs start with 'tbl' followed by 14 characters. Table names are case-sensitive and must match exactly as they appear in Airtable.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Airtable Create Multiple Records`

Integration name: **AIRTABLE\_CREATE\_MULTIPLE\_RECORDS**

DEPRECATED: Use AIRTABLE\_CREATE\_RECORDS instead. Creates multiple new records in a specified Airtable table.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | —                                                                                                      | Required. The unique identifier of the Airtable base (e.g., 'appXXXXXXXXXXXXXX').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `records`               | array   |     ✅    | `[{"fields":{"Name":"Record 1","Status":"Active"}},{"fields":{"Name":"Record 2","Status":"Pending"}}]` | Required. List of record objects to create. Each record must have a 'fields' key containing a dictionary mapping field names to values. Field names are case-sensitive and can contain any Unicode characters (e.g., 'Тема Reels', '日期'). Field values must match their configured types in Airtable (e.g., number fields require numeric values). Set typecast=true to enable automatic type conversion from strings. Note: Airtable's API limits creation to 10 records per request; if you provide more than 10 records, they will be automatically split into batches and processed in multiple requests.       |
| `typecast`              | boolean |          | —                                                                                                      | If true, Airtable will perform automatic type conversion. Helps with: converting strings to numbers, creating new options for single/multi-select fields, automatically creating/linking records in linked record fields from text values, and type coercion for compatible types. Does NOT help with: text field length/format constraints or fundamental type incompatibilities. If you get INVALID\_VALUE\_FOR\_COLUMN errors on text fields, check: (1) field type in Airtable (single-line vs long text), (2) any custom character limits, (3) whether the field expects a specific format. Defaults to false. |
| `tableIdOrName`         | string  |     ✅    | —                                                                                                      | Required. The table ID (e.g., 'tblXXXXXXXXXXXXXX') or the table name (e.g., 'Tasks').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `returnFieldsByFieldId` | boolean |          | —                                                                                                      | If true, the returned field objects will use field IDs as keys instead of field names. Using field IDs is recommended for integrations that need to be resilient to field name changes. Default is false, which returns field names as keys.                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Airtable Create Record`

Integration name: **AIRTABLE\_CREATE\_RECORD**

DEPRECATED: Use CreateRecords instead. Creates a new record in a specified Airtable table; field values must conform to the table's column types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------------------- | ------- | :------: | ---------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appHPvgqYXl3LNHXq"`                                                              | Required. The unique identifier of the Airtable base (e.g., 'appXXXXXXXXXXXXXX'). Use AIRTABLE\_LIST\_BASES to find available base IDs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `fields`                | object  |          | `"{\"Name\": \"New Task\", \"Status\": \"Todo\", \"Notes\": \"Complete by EOD\"}"` | A dictionary of field names (or IDs) and their values for the new record. Field names must exactly match those in the table schema (case-sensitive). Field IDs (e.g., 'fldXXXXXXXXXXXXXX') are preferred for stability, but are UNIQUE to each base and table. IMPORTANT: Use AIRTABLE\_GET\_BASE\_SCHEMA with the specific baseId to discover valid field names, IDs, types, and options before creating records. Note: Fields with null, empty string, or boolean false values are automatically omitted from the request. Field type value requirements: - singleSelect: Must be a plain string option name (e.g., 'High'). DO NOT pass dict objects like {'id': 'selXXX'} or {'name': 'High'} - pass only the plain string. - multipleSelects: Must be an array of exact option names (e.g., \['Bug', 'Feature']). - checkbox: Use true to check. Omit or pass false to leave unchecked. - number/currency/percent: Must be a numeric value (int or float). Currency strings with symbols (e.g., '$100', '£689') are auto-converted. Plain numeric strings are NOT auto-converted - pass actual numbers or use typecast=true. - rating: Must be an integer. String numbers like '9' are auto-converted to integers. - date: Must be ISO 8601 format 'YYYY-MM-DD'. - dateTime: Must be ISO 8601 format (e.g., '2024-01-15T14:30:00.000Z', '2024-01-15T14:30:00+00:00'). Common formats like '2024-01-15 14:30:00', 'Jan 15, 2024', '01/15/2024' are auto-converted to ISO 8601. - singleLineText/multilineText/richText: Must be a string. - email/url/phoneNumber: Must be a string in appropriate format. - multipleAttachments: Must be an array of attachment objects with 'url' field. - singleCollaborator: Must be an object with 'id' or 'email' of a valid collaborator. - multipleRecordLinks: Must be an array of record IDs (e.g., \['recXXX', 'recYYY']). - duration: Must be a number representing total seconds (e.g., 278 for 4 minutes 38 seconds). Common conversions: 1 minute = 60, 1 hour = 3600, 1h30m = 5400. Time strings like 'H:MM:SS' or ISO 8601 duration (e.g., 'PT4M38S') are auto-converted to seconds. |
| `typecast`              | boolean |          | `true`                                                                             | When set to true, enables automatic data conversion from strings to appropriate field types. For example, if a singleSelect field receives a value that doesn't match an existing option, Airtable will create a new option with that value. Also converts string numbers to numeric types. Default is false, which requires exact type matching.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `tableIdOrName`         | string  |     ✅    | `"tblUkxCONS303zkN7"`                                                              | Required. The table ID (e.g., 'tblXXXXXXXXXXXXXX') or table name (e.g., 'Tasks', 'Meal Plan') where the record will be created. Table names with spaces and special characters are supported. This is separate from baseId and must be provided. Use AIRTABLE\_GET\_BASE\_SCHEMA to find table IDs/names within a base.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `returnFieldsByFieldId` | boolean |          | `true`                                                                             | If true, the returned field objects will use field IDs as keys instead of field names. Using field IDs is recommended for integrations that need to be resilient to field name changes. Default is false, which returns field names as keys.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Airtable Create Record From Natural Language`

Integration name: **AIRTABLE\_CREATE\_RECORD\_FROM\_NATURAL\_LANGUAGE**

Creates a new record in an Airtable table from a natural language description. Fetches the table schema, uses an LLM to generate the correct field payload, and creates the record with typecast enabled for automatic type conversion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example               | Description                                                                                                                                               |
| --------------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`        | string  |     ✅    | `"appxxxxxxxxxxxxxx"` | Unique identifier of the Airtable base, typically starting with 'app'.                                                                                    |
| `nl_query`      | string  |     ✅    | —                     | Natural language description of the record to create. Example: 'Add a task called Fix Login Bug, status In Progress, priority High, due date 2025-03-15'. |
| `typecast`      | boolean |          | —                     | If True, Airtable will automatically convert string values to their appropriate types (e.g., string to number, date parsing). Enabled by default.         |
| `tableIdOrName` | string  |     ✅    | `"tblxxxxxxxxxxxxxx"` | Unique identifier (typically starting with 'tbl') or name of the table within the specified base.                                                         |

***

### `Airtable Create Records`

Integration name: **AIRTABLE\_CREATE\_RECORDS**

Tool to create multiple records (up to 10) in a specified Airtable table. Use when you need to add new rows to a table with field values. Rate limit: 5 requests per second per base.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                                                              | Description                                                                                                                                                                                                                                         |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appHPvgqYXl3LNHXq"`                                                                                                                | The unique identifier of the Airtable base. Format: 'app' followed by alphanumeric characters (e.g., 'appHPvgqYXl3LNHXq').                                                                                                                          |
| `records`               | array   |     ✅    | `[{"fields":{"Name":"Test Record 1","Notes":"First test record"}},{"fields":{"Name":"Test Record 2","Notes":"Second test record"}}]` | Array of record objects to create. Each record object must contain a 'fields' property with the cell values. Maximum of 10 records can be created per request.                                                                                      |
| `typecast`              | boolean |          | —                                                                                                                                    | If true, Airtable will perform best-effort automatic data conversion from string values to the appropriate cell type. If false (default), field values must exactly match the expected type. Use with caution as it may produce unexpected results. |
| `tableIdOrName`         | string  |     ✅    | `"tblUkxCONS303zkN7"`                                                                                                                | The unique identifier or name of the table where records will be created. Table IDs are recommended over names for stability. Format: 'tbl' followed by alphanumeric characters (e.g., 'tblUkxCONS303zkN7').                                        |
| `returnFieldsByFieldId` | boolean |          | —                                                                                                                                    | If true, the returned field objects will use field IDs as keys instead of field names. Defaults to false.                                                                                                                                           |

***

### `Airtable Create Table`

Integration name: **AIRTABLE\_CREATE\_TABLE**

Creates a new table within a specified existing Airtable base, allowing definition of its name, description, and field structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                                                                                                                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ----------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string |     ✅    | `"Projects"`                                                                                                                                                                                                                                       | The desired name for the new table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `fields`          | array  |     ✅    | `[{"name":"Task Name","type":"singleLineText"},{"name":"Due Date","type":"date","options":{"dateFormat":{"name":"iso"}}},{"name":"Status","type":"singleSelect","options":{"choices":[{"name":"To Do"},{"name":"In Progress"},{"name":"Done"}]}}]` | A list of field configurations for the new table. Each must include 'name' (string) and 'type' (string). IMPORTANT: The first field becomes the primary field. Valid primary field types: singleLineText, number, email, url, phoneNumber, date, dateTime, currency, percent, barcode, richText, multilineText, duration. All other field types cannot be primary. Note: formula and autoNumber CAN be primary in the UI but CANNOT be created via the API. If you need a multipleRecordLinks field, place a singleLineText field first as primary. Computed field types (formula, rollup, count, lookup, multipleLookupValues, autoNumber, createdTime, lastModifiedTime) cannot be created via the API. Field types requiring 'options': 'number'/'percent' (precision), 'currency' (precision, symbol), 'checkbox' (color, icon - colors must end in 'Bright', e.g., 'yellowBright'), 'date' (dateFormat), 'dateTime' (dateFormat, timeFormat, timeZone), 'rating' (color, icon, optionally max 1-10 defaults to 5 - colors must end in 'Bright'). For 'singleSelect'/'multipleSelects', provide 'choices' with objects containing 'name' only (no 'id'). For 'multipleRecordLinks', provide 'linkedTableId' (format tblXXXXXXXXXXXXXX). Do NOT include 'isReversed' or 'prefersSingleRecordLink'. |
| `base_id`         | string |     ✅    | `"appXXXXXXXXXXXXXX"`                                                                                                                                                                                                                              | The unique identifier of the base where the new table will be created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `if_exists`       | string |          | `"error"`                                                                                                                                                                                                                                          | Options for handling duplicate table name scenarios.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `description`     | string |          | `"A table to track all ongoing projects."`                                                                                                                                                                                                         | An optional textual description for the new table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `reorder_message` | string |          | —                                                                                                                                                                                                                                                  | Internal field used to track field reordering messages. This is populated automatically when fields are reordered.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Airtable Delete Comment`

Integration name: **AIRTABLE\_DELETE\_COMMENT**

Tool to delete a comment from a record in an Airtable table. Use when you need to remove an existing comment. Non-admin users can only delete their own comments; Enterprise Admins can delete any comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example             | Description                                                                                                     |
| --------------- | ------ | :------: | ------------------- | --------------------------------------------------------------------------------------------------------------- |
| `baseId`        | string |     ✅    | `"appABC123xyz789"` | The unique identifier of the Airtable base from which the comment will be deleted.                              |
| `recordId`      | string |     ✅    | `"recGhi789jkl345"` | The unique identifier of the record within the specified table from which the comment will be deleted.          |
| `rowCommentId`  | string |     ✅    | `"comJkl012mno678"` | The unique identifier of the comment to be deleted from the specified record.                                   |
| `tableIdOrName` | string |     ✅    | `"tblDef456uvw012"` | The unique identifier (ID) or name of the table within the specified base that contains the record and comment. |

***

### `Airtable Delete Multiple Records`

Integration name: **AIRTABLE\_DELETE\_MULTIPLE\_RECORDS**

Tool to delete up to 10 specified records from a table within an Airtable base. Use when you need to remove multiple records in a single operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                    | Description                                                                                                                                              |
| --------------- | ------ | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`        | string |     ✅    | `"appSOr2Y2mKPyR3C0"`                      | The unique identifier of the Airtable base containing the records to be deleted.                                                                         |
| `recordIds`     | array  |     ✅    | `["recMVpM4w004400ea","recWpM4w004400eb"]` | A list of unique identifiers for the records to be deleted.                                                                                              |
| `tableIdOrName` | string |     ✅    | `"tbluIzIsxPIM2V3Y4"`                      | The unique identifier (e.g., 'tbluIzIsxPIM2V3Y4') or the name (e.g., 'Marketing Leads') of the table within the base from which records will be deleted. |

***

### `Airtable Delete Record`

Integration name: **AIRTABLE\_DELETE\_RECORD**

Permanently deletes a specific record from an existing table within an existing Airtable base.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example               | Description                                                                                       |
| --------------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------- |
| `baseId`        | string |     ✅    | `"appxxxxxxxxxxxxxx"` | Unique identifier of the Airtable base, typically starting with 'app'.                            |
| `recordId`      | string |     ✅    | `"recxxxxxxxxxxxxxx"` | Unique identifier of the record to be deleted, typically starting with 'rec'.                     |
| `tableIdOrName` | string |     ✅    | `"tblxxxxxxxxxxxxxx"` | Unique identifier (typically starting with 'tbl') or name of the table within the specified base. |

***

### `Airtable Get Base Schema`

Integration name: **AIRTABLE\_GET\_BASE\_SCHEMA**

Retrieves the detailed schema for a specified Airtable base, including its tables, fields, field types, and configurations, using the `baseId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                 | Description                                                                                                                                                                                                                                                                     |
| --------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`  | string |     ✅    | `"appZueQaLuTv7fSXjJx"` | The unique identifier for the Airtable base. This ID typically starts with 'app' and is followed by a string of alphanumeric characters. It can be found in the URL when viewing the base.                                                                                      |
| `include` | array  |          | `["visibleFieldIds"]`   | Optional list of additional fields to include in the views object response. Currently only supports the value 'visibleFieldIds' (for views of type 'grid' only). When specified, grid views will include a visibleFieldIds array showing which fields are visible in that view. |

***

### `Airtable Get Record`

Integration name: **AIRTABLE\_GET\_RECORD**

Retrieves a specific record from an Airtable table by its record ID. Requires a known, valid record ID obtained from listing records or another API call - this tool cannot search or list records. Use the list records tool to find record IDs. Empty field values are not returned in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                           |
| ----------------------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appXXXXXXXXXXXXXX"` | ID of the Airtable base.                                                                                                                                                                                                                                                                                                              |
| `recordId`              | string  |     ✅    | `"rec4YsVV8cU6V4EiT"` | ID of the record to retrieve. Must be a real record ID obtained from listing records or another API call. Format: starts with 'rec' followed by exactly 14 alphanumeric characters (e.g., 'rec4YsVV8cU6V4EiT'). This tool retrieves a single specific record - to list or search multiple records, use the list records tool instead. |
| `timeZone`              | string  |          | `"America/New_York"`  | Time zone for formatting dates when cellFormat='string'. Required when cellFormat='string'. Uses IANA time zone format (e.g., 'America/New\_York', 'Europe/London', 'UTC').                                                                                                                                                           |
| `cellFormat`            | string  |          | `"json"`              | Controls cell value formatting: 'json' for native types, 'string' for all values as strings. When 'string', timeZone and userLocale are required.                                                                                                                                                                                     |
| `userLocale`            | string  |          | `"en-us"`             | User locale for formatting dates when cellFormat='string'. Required when cellFormat='string'. Uses BCP 47 language tag format (e.g., 'en-us', 'en-gb', 'de-de').                                                                                                                                                                      |
| `tableIdOrName`         | string  |     ✅    | `"tblXXXXXXXXXXXXXX"` | ID or name of the table.                                                                                                                                                                                                                                                                                                              |
| `returnFieldsByFieldId` | boolean |          | —                     | If true, field keys in the response are field IDs; otherwise, field names.                                                                                                                                                                                                                                                            |

***

### `Airtable Get User Info`

Integration name: **AIRTABLE\_GET\_USER\_INFO**

Retrieves information, such as ID and permission scopes, for the currently authenticated Airtable user from the `/meta/whoami` endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Airtable List Bases`

Integration name: **AIRTABLE\_LIST\_BASES**

Retrieves all Airtable bases accessible to the authenticated user, which may include an 'offset' for pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                     |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `offset`  | string |          | —       | Pagination token for retrieving the next page of results. This is an opaque cursor returned in the 'offset' field of a previous list bases response. Pass this exact value to retrieve the next page. Do not construct or modify this value. Only present when there are more than 1,000 bases. |

***

### `Airtable List Comments`

Integration name: **AIRTABLE\_LIST\_COMMENTS**

Tool to list comments on a specific Airtable record. Use when retrieving comments for a record, with optional pagination support for large comment threads.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example               | Description                                                                                                                                                          |
| --------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`        | string  |     ✅    | `"appXXXXXXXXXXXXXX"` | The unique identifier of the Airtable base from which to list comments.                                                                                              |
| `offset`        | string  |          | —                     | Pagination token to retrieve the next page of comments. If specified, the returned comments will begin at the specified offset. Obtained from the previous response. |
| `pageSize`      | integer |          | —                     | The number of comments to return per page. Must be less than or equal to 100. Defaults to 100 if not specified.                                                      |
| `recordId`      | string  |     ✅    | `"recXXXXXXXXXXXXXX"` | The unique identifier of the record for which comments are to be listed.                                                                                             |
| `tableIdOrName` | string  |     ✅    | `"tblXXXXXXXXXXXXXX"` | The unique identifier or name of the table within the specified base containing the record.                                                                          |

***

### `Airtable List Records`

Integration name: **AIRTABLE\_LIST\_RECORDS**

Tool to list records from an Airtable table with filtering, sorting, and pagination. Use when you need to retrieve multiple records from a table with optional query parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------------------- | ------- | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`                  | array   |          | —                           | Array of sort objects to apply to records. Each object specifies a field and direction. Records are sorted by the first sort object, then by the second, and so on. IMPORTANT: Cannot sort by system metadata fields like 'createdTime' or 'lastModifiedTime' - these are metadata properties returned with records but not sortable fields. To sort by creation/modification time, you must add a 'Created time' or 'Last modified time' field to your table (using those field types in Airtable).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `view`                  | string  |          | `"viwXXXXXXXXXXXXXX"`       | The name or ID of a view to use for filtering and sorting records. View names are case-sensitive. View IDs (format: 'viwXXXXXXXXXXXXXX') are more reliable than names and not affected by view renames. Use AIRTABLE\_GET\_BASE\_SCHEMA to discover valid views. Note: this parameter is overridden if sort parameter is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `baseId`                | string  |     ✅    | `"appXXXXXXXXXXXXXX"`       | The ID of the Airtable base. Must start with 'app' followed by 14 characters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `fields`                | array   |          | `["fldABC123","fldDEF456"]` | Array of field names or IDs to include in the response. If not specified or if \['\*'] is passed, all fields are returned. Field names are case-sensitive and must match exactly as they appear in Airtable. The Airtable API accepts both field names and field IDs interchangeably in this parameter, regardless of the returnFieldsByFieldId setting. IMPORTANT: System fields 'id' and 'createdTime' are always returned automatically as part of the record structure - do NOT include them in this parameter. Only specify user-defined table fields here. UNKNOWN\_FIELD\_NAME errors indicate: (1) a typo or case mismatch, (2) the field was renamed/deleted, or (3) you included a system field name. RECOMMENDED: Use field IDs (format: 'fldXXXXXXXXXXXXXX') for reliable operation. Use AIRTABLE\_GET\_BASE\_SCHEMA to retrieve valid field names and IDs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `offset`                | string  |          | —                           | Opaque pagination cursor token returned in the 'offset' field of a previous list records response. This value must be used exactly as returned by Airtable - do not construct, modify, or decode it. IMPORTANT: Do not pass numeric values like '50' or '100' - these are not valid offsets. Offset tokens are complex opaque strings generated by Airtable. Only pass an offset if you received it from a previous response's 'offset' field. Omit this parameter for the first page of results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `pageSize`              | integer |          | —                           | Number of records to return per page. Must be between 1 and 100. Defaults to 100.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `timeZone`              | string  |          | —                           | The time zone to use for formatting date and time fields. Required when cellFormat is 'string'. If not provided when cellFormat='string', defaults to 'utc'. Examples: 'utc', 'America/New\_York', 'Europe/London'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `cellFormat`            | string  |          | —                           | Format for cell values. 'json' returns structured JSON values (default), 'string' returns simple string representations. When set to 'string', timeZone and userLocale are required - if not provided, defaults will be auto-populated (timeZone='utc', userLocale='en-US').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `maxRecords`            | integer |          | —                           | Maximum total number of records to return across all pages. If not specified, all records matching the query will be returned.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `userLocale`            | string  |          | —                           | The user locale to use for formatting cell values (e.g., 'en-US', 'fr-FR'). Required when cellFormat is 'string'. If not provided when cellFormat='string', defaults to 'en-US'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `tableIdOrName`         | string  |     ✅    | `"tblXXXXXXXXXXXXXX"`       | The ID or name of the table within the base. Table IDs start with 'tbl' followed by 14 characters. Table names are case-sensitive and must match exactly as they appear in Airtable. Can also be passed as 'tableId' or 'tableName'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `recordMetadata`        | array   |          | `["commentCount"]`          | Array of strings specifying additional metadata to include. Currently supports 'commentCount' to include comment counts on records.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `filterByFormula`       | string  |          | `"{Status}='Done'"`         | Airtable formula to filter records. SYNTAX REQUIREMENTS: (1) BALANCED PARENTHESES: Every '(' must have a matching ')'. (2) Field names in curly braces: {FieldName} - case-sensitive, must match exactly. (3) String values in quotes: 'value' or "value". (4) Function calls: AND(), OR(), NOT(), FIND(), BLANK(), TODAY(), etc. (5) Escape single quotes by doubling: 'John''s'. DATE/DATETIME FIELD COMPARISONS: Direct string comparison with date fields (e.g., {DateField} >= '2026-04-29') is unreliable. Use date functions instead: IS\_AFTER({DateField}, '2026-04-29') checks if date is after the specified date. IS\_BEFORE({DateField}, '2026-04-29') checks if date is before the specified date. IS\_SAME({DateField}, '2026-04-29', 'day') checks if date matches (with optional unit: 'day', 'month', 'year'). DATESTR({DateField}) converts date to string for text operations. TODAY() returns current date for dynamic comparisons: IS\_AFTER({DateField}, TODAY()). For date ranges: AND(IS\_AFTER({DateField}, '2026-04-28'), IS\_BEFORE({DateField}, '2026-04-30')). FIELD TYPES VS FORMULA FUNCTIONS: ROLLUP, LOOKUP, FORMULA are field types, NOT formula functions usable in filterByFormula. Reference these fields directly by name: {RollupFieldName}. LINKED RECORD FILTERING: Referencing a linked record field directly (e.g., {LinkedFieldName}) returns PRIMARY FIELD VALUES as text, NOT record IDs. To filter by record IDs, create a lookup field for RECORD\_ID() from the linked table, then use: FIND('recXXXXXXXXXXXXXX', ARRAYJOIN({RecordIDLookupField})) > 0. DO NOT use array literals like {LinkedField} = \['recXXX'] - Airtable formulas do not support array syntax. DOT NOTATION NOT SUPPORTED: {Assignee}.email, {LinkedRecord}.fieldName are INVALID. Create a lookup field for the property you need, then reference that field: {Assignee Email Lookup}='<user@example.com>'. COMMON ERRORS: - Field names are CASE-SENSITIVE: '{status}' is NOT '{Status}'. - Missing closing parenthesis. - Unquoted strings: {Status}=Active must be {Status}='Active'. RECOMMENDED: Use AIRTABLE\_GET\_BASE\_SCHEMA to verify exact field names before using them in formulas. |
| `returnFieldsByFieldId` | boolean |          | —                           | If true, field keys in the response will be field IDs instead of field names. Recommended when working with field names that contain special characters or when building integrations that need stability across field renames. Note: The 'fields' parameter accepts both field names and field IDs regardless of this setting. filterByFormula always uses field names (enclosed in curly braces like {FieldName}) regardless of this setting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Airtable Update Comment`

Integration name: **AIRTABLE\_UPDATE\_COMMENT**

Tool to update an existing comment on a specific Airtable record. Use when modifying comment text or updating user mentions using @\[userId] syntax. API users can only update comments they have created.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                            | Description                                                                                            |
| --------------- | ------ | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `text`          | string |     ✅    | `"This comment has been updated."` | The updated comment text. To mention a user, use the format @\[userId] (e.g., @\[usrGISFlfA7l5F7kY6]). |
| `baseId`        | string |     ✅    | `"appHPvgqYXl3LNHXq"`              | The unique identifier of the Airtable base. This typically starts with 'app'.                          |
| `recordId`      | string |     ✅    | `"rec1jqYRNtZMzWkwc"`              | The unique identifier of the record containing the comment. This typically starts with 'rec'.          |
| `rowCommentId`  | string |     ✅    | `"comkrVQ91aKbeITv6"`              | The unique identifier of the comment to update. This typically starts with 'com'.                      |
| `tableIdOrName` | string |     ✅    | `"tblUkxCONS303zkN7"`              | The unique identifier (typically starting with 'tbl') or the name of the table within the base.        |

***

### `Airtable Update Field`

Integration name: **AIRTABLE\_UPDATE\_FIELD**

Updates a field's name or description in an Airtable table. Use this action to modify field metadata without changing the field's type or options. At least one of 'name' or 'description' must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                  | Description                                                                                                                                                                                                                                                                          |
| ------------- | ------ | :------: | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`        | string |          | `"Notes Updated via API"`                                | The new name for the field. At least one of 'name' or 'description' must be provided.                                                                                                                                                                                                |
| `baseId`      | string |     ✅    | `"appHPvgqYXl3LNHXq"`                                    | The unique identifier of the Airtable base containing the field.                                                                                                                                                                                                                     |
| `fieldId`     | string |     ✅    | `"fldak02ZqmicShXbn"`                                    | The ID of the field to update. IMPORTANT: Unlike data API endpoints, the Metadata API requires field IDs - field names are not supported. Field IDs start with 'fld' followed by 14 alphanumeric characters. Use AIRTABLE\_GET\_BASE\_SCHEMA to find field IDs.                      |
| `tableId`     | string |     ✅    | `"tblUkxCONS303zkN7"`                                    | The ID of the table containing the field to update. IMPORTANT: Unlike data API endpoints, the Metadata API requires table IDs - table names are not supported. Table IDs start with 'tbl' followed by 14 alphanumeric characters. Use AIRTABLE\_GET\_BASE\_SCHEMA to find table IDs. |
| `description` | string |          | `"This field was updated via the UPDATE_FIELD endpoint"` | The new description for the field. Must not exceed 20,000 characters. At least one of 'name' or 'description' must be provided.                                                                                                                                                      |

***

### `Airtable Update Multiple Records`

Integration name: **AIRTABLE\_UPDATE\_MULTIPLE\_RECORDS**

Tool to update up to 10 records in an Airtable table with selective field modifications. Use when you need to modify multiple existing records or perform upsert operations. Updates are not performed atomically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                                                                                 | Description                                                                                                                                                                                             |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appHPvgqYXl3LNHXq"`                                                                                                                                   | The ID of the Airtable base containing the table.                                                                                                                                                       |
| `records`               | array   |     ✅    | `[{"id":"rec1jqYRNtZMzWkwc","fields":{"Name":"Updated Record 1 via PATCH"}},{"id":"recA2MVoBmdFGbtG1","fields":{"Name":"Updated Record 2 via PATCH"}}]` | List of records to be updated. Airtable's API limits updates to a maximum of 10 records per request. If you need to update more records, split them into multiple requests of 10 or fewer records each. |
| `typecast`              | boolean |          | —                                                                                                                                                       | If true, Airtable attempts automatic data conversion from string values on a best-effort basis (e.g., '123' to 123).                                                                                    |
| `performUpsert`         | object  |          | —                                                                                                                                                       | Configuration for upsert behavior when updating records.                                                                                                                                                |
| `tableIdOrName`         | string  |     ✅    | `"tblUkxCONS303zkN7"`                                                                                                                                   | The ID or name of the table within the base where records will be updated.                                                                                                                              |
| `returnFieldsByFieldId` | boolean |          | —                                                                                                                                                       | If true, returns field values keyed by field ID instead of field name. Useful for integrations resilient to field name changes.                                                                         |

***

### `Airtable Update Multiple Records Put`

Integration name: **AIRTABLE\_UPDATE\_MULTIPLE\_RECORDS\_PUT**

Tool to destructively update multiple records in Airtable using PUT, clearing unspecified fields. Use when you need to fully replace record data or perform upsert operations. Supports up to 10 records per request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                                                                                      | Description                                                                                                 |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appHPvgqYXl3LNHXq"`                                                                                                                                        | The ID of the Airtable base containing the table.                                                           |
| `records`               | array   |     ✅    | `[{"id":"rec1Q9dF0KAaJE8aW","fields":{"Task":"Updated task","Complete":true}},{"id":"recPYx3Dq8IooB4SI","fields":{"Task":"Another task","Complete":false}}]` | Array of up to 10 record objects to update. PUT destructively updates records, clearing unspecified fields. |
| `typecast`              | boolean |          | —                                                                                                                                                            | If true, Airtable will attempt to convert string values into appropriate cell values.                       |
| `performUpsert`         | object  |          | —                                                                                                                                                            | Configuration for upsert behavior.                                                                          |
| `tableIdOrName`         | string  |     ✅    | `"tblfYiZLabiwieND6"`                                                                                                                                        | The ID or name of the table within the base where records will be updated.                                  |
| `returnFieldsByFieldId` | boolean |          | —                                                                                                                                                            | If true, returns fields object keyed by field ID instead of field name.                                     |

***

### `Airtable Update Record`

Integration name: **AIRTABLE\_UPDATE\_RECORD**

Modifies specified fields of an existing record in an Airtable base and table; the base, table, and record must exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appxxxxxxxxxxxxxx"`                                                                       | The unique identifier of the Airtable base containing the record to be updated.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `fields`                | object  |     ✅    | `"{\"Status\": \"Completed\", \"Priority\": \"High\", \"Notes\": \"All tasks finished.\"}"` | Fields to update. Keys are field names (case-sensitive) or IDs (fldXXXX recommended). Only specified fields are modified. Empty strings convert to null. Field names must match Airtable schema exactly (e.g., 'Call Status' not 'call status'). Use AIRTABLE\_GET\_BASE\_SCHEMA for exact names/IDs. Date-only fields require 'YYYY-MM-DD' format. Date-time fields require ISO 8601: 'YYYY-MM-DDTHH:MM:SS.sssZ'. Human-readable dates rejected even with typecast=true. SELECT FIELDS: With typecast=false (default), only existing select options accepted; new values fail with INVALID\_MULTIPLE\_CHOICE\_OPTIONS. Set typecast=true to auto-create new options or verify existing options via AIRTABLE\_GET\_BASE\_SCHEMA first. |
| `recordId`              | string  |     ✅    | `"recABC123def456G"`                                                                        | The unique identifier (ID) of the record to be updated within the specified table. MUST be in Airtable's record ID format: exactly 17 characters starting with 'rec' followed by 14 alphanumeric characters (e.g., 'recABC123def456G'). Simple numeric values or row numbers are NOT valid record IDs. You can obtain valid record IDs from the AIRTABLE\_LIST\_RECORDS action or the Airtable web interface.                                                                                                                                                                                                                                                                                                                          |
| `typecast`              | boolean |          | `true`                                                                                      | Enables automatic data conversion and select option creation. CRITICAL FOR SELECT FIELDS: When false (default), Airtable rejects updates to single-select or multi-select fields if the value is not already an existing option, failing with 'Insufficient permissions to create new select option' error. When true: (1) automatically creates new select options if they don't exist, and (2) converts strings to appropriate types for other fields (e.g., '123' to number 123). RECOMMENDED: Set to true when updating select fields with potentially new values, or use AIRTABLE\_GET\_BASE\_SCHEMA to verify option existence first. Set to false only when you want strict validation against existing options.                |
| `tableIdOrName`         | string  |     ✅    | `"tblxxxxxxxxxxxxxx"`                                                                       | The unique identifier (ID) or the name of the table within the base that contains the record to be updated. Also accepts 'tableId' as an alias.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `returnFieldsByFieldId` | boolean |          | `true`                                                                                      | If `True`, API response keys record fields by field ID instead of name. Using field IDs is recommended for integrations resilient to field name changes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Airtable Update Record Put`

Integration name: **AIRTABLE\_UPDATE\_RECORD\_PUT**

Updates an existing record in an Airtable base using PUT method. Use when you want to replace all field values, clearing any unspecified fields. For partial updates that preserve unspecified fields, use the PATCH-based update action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `baseId`                | string  |     ✅    | `"appxxxxxxxxxxxxxx"`                                                                       | The unique identifier of the Airtable base containing the record to be updated.                                                                                                                                                                                                                                                                                                                                                   |
| `fields`                | object  |     ✅    | `"{\"Status\": \"Completed\", \"Priority\": \"High\", \"Notes\": \"All tasks finished.\"}"` | Specifies fields to update. Keys are field names or IDs; values are new content. PUT method clears all unspecified cell values (destructive update). Empty strings are automatically converted to null to clear field values. For Date fields: use 'YYYY-MM-DD' format for date-only fields, or ISO 8601 format (e.g., '2026-01-02T10:30:00.000Z') for date-time fields. Set typecast=true to enable automatic format conversion. |
| `recordId`              | string  |     ✅    | `"recxxxxxxxxxxxxxx"`                                                                       | The unique identifier (ID) of the record to be updated within the specified table.                                                                                                                                                                                                                                                                                                                                                |
| `typecast`              | boolean |          | `true`                                                                                      | When set to true, enables automatic data conversion from strings to appropriate field types. For example, converts string '123' to number 123. Default is false.                                                                                                                                                                                                                                                                  |
| `tableIdOrName`         | string  |     ✅    | `"tblxxxxxxxxxxxxxx"`                                                                       | The unique identifier (ID) or the name of the table within the base that contains the record to be updated.                                                                                                                                                                                                                                                                                                                       |
| `returnFieldsByFieldId` | boolean |          | `true`                                                                                      | If `True`, API response keys record fields by field ID instead of name. Using field IDs is recommended for integrations resilient to field name changes.                                                                                                                                                                                                                                                                          |

***

### `Airtable Update Table`

Integration name: **AIRTABLE\_UPDATE\_TABLE**

Updates the name, description, and/or date dependency settings of a table in Airtable. Use this action to modify table metadata without changing the table's fields or views. At least one of 'name', 'description', or 'dateDependencySettings' must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type   | Required | Example                                   | Description                                                                                                                                                |
| ------------------------ | ------ | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                   | string |          | `"Updated Table Name"`                    | The new name for the table. Must be non-empty if provided. At least one of 'name', 'description', or 'dateDependencySettings' must be provided.            |
| `baseId`                 | string |     ✅    | `"appHPvgqYXl3LNHXq"`                     | The unique identifier of the Airtable base containing the table to update.                                                                                 |
| `description`            | string |          | `"This is an updated table description."` | The new description for the table. Must not exceed 20,000 characters. At least one of 'name', 'description', or 'dateDependencySettings' must be provided. |
| `tableIdOrName`          | string |     ✅    | `"tblUkxCONS303zkN7"`                     | The unique identifier or name of the table to update.                                                                                                      |
| `dateDependencySettings` | object |          | —                                         | Configuration for date-based task scheduling in Airtable tables.                                                                                           |

***

### `Airtable Upload Attachment`

Integration name: **AIRTABLE\_UPLOAD\_ATTACHMENT**

Uploads a file attachment to a specified field in an Airtable record. Use when you need to add a file to an attachment field. The file must be provided as a base64-encoded string.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                                                  | Description                                                                                                        |
| ------------------------- | ------ | :------: | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| `file`                    | string |     ✅    | `"VGhpcyBpcyBhIHRlc3QgZmlsZSBmb3IgQWlydGFibGUgYXR0YWNobWVudCB1cGxvYWQu"` | The file content encoded as a base64 string. This is the base64-encoded binary content of the file to be uploaded. |
| `baseId`                  | string |     ✅    | `"appHPvgqYXl3LNHXq"`                                                    | The unique identifier of the Airtable base containing the record.                                                  |
| `filename`                | string |     ✅    | `"test.txt"`                                                             | The name of the file including its extension (e.g., 'test.txt', 'document.pdf', 'image.jpg').                      |
| `recordId`                | string |     ✅    | `"rec14OLsbTuy1pm0t"`                                                    | The unique identifier of the record to which the attachment will be uploaded.                                      |
| `contentType`             | string |     ✅    | `"text/plain"`                                                           | MIME type of the file being uploaded (e.g., 'text/plain', 'image/jpeg', 'application/pdf').                        |
| `attachmentFieldIdOrName` | string |     ✅    | `"fldTsvfulF1e8W0N3"`                                                    | The field ID (e.g., 'fldXXXXXXXXXXXXXX') or field name of the attachment field where the file will be uploaded.    |


# Apaleo

Your Toolhouse AI Worker can connect to Apaleo using 29 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](https://toolhouse.app/auth-connections?authkit_slugs=apaleo).

## Tools (29)

### `Apaleo Archive A Property`

Integration name: **APALEO\_ARCHIVE\_A\_PROPERTY**

Use this endpoint to archive an existing live property This operation set the IsArchived flag to true\
You must have at least one of these scopes: 'properties.manage, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description            |
| --------- | ------ | :------: | ------- | ---------------------- |
| `id`      | string |     ✅    | —       | The id of the property |

***

### `Apaleo Check If A Property Exists`

Integration name: **APALEO\_CHECK\_IF\_A\_PROPERTY\_EXISTS**

Check if a property exists by id.\
You need to be authorized (no particular scope required)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description             |
| --------- | ------ | :------: | ------- | ----------------------- |
| `id`      | string |     ✅    | —       | The id of the property. |

***

### `Apaleo Check If A Unit Attribute Exists`

Integration name: **APALEO\_CHECK\_IF\_A\_UNIT\_ATTRIBUTE\_EXISTS**

Check if a unit attribute exists\
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                   |
| --------- | ------ | :------: | ------- | ----------------------------- |
| `id`      | string |     ✅    | —       | The id of the unit attribute. |

***

### `Apaleo Check If A Unit Exists`

Integration name: **APALEO\_CHECK\_IF\_A\_UNIT\_EXISTS**

Check if a unit exists by id.\
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description         |
| --------- | ------ | :------: | ------- | ------------------- |
| `id`      | string |     ✅    | —       | The id of the unit. |

***

### `Apaleo Check If A Unit Group Exists`

Integration name: **APALEO\_CHECK\_IF\_A\_UNIT\_GROUP\_EXISTS**

Check if a unit group exists by id.\
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description               |
| --------- | ------ | :------: | ------- | ------------------------- |
| `id`      | string |     ✅    | —       | The id of the unit group. |

***

### `Apaleo Clones A Property`

Integration name: **APALEO\_CLONES\_A\_PROPERTY**

Use this call to clone a specific property. This operation creates a new property with inventory and rate plans from the specified property.\
You must have at least one of these scopes: 'properties.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example | Description                                                                                                                                                      |
| ------------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                      | string |     ✅    | —       | The id of the property.                                                                                                                                          |
| `code`                    | string |     ✅    | —       | The code for the property that can be shown in reports and table views                                                                                           |
| `name`                    | object |     ✅    | —       | The name for the property                                                                                                                                        |
| `taxId`                   | string |     ✅    | —       | The Tax-ID of the company running the property, as it should appear on invoices                                                                                  |
| `timeZone`                | string |     ✅    | —       | The time zone name of the property from the IANA Time Zone Database. (see: <https://en.wikipedia.org/wiki/List\\_of\\_tz\\_database\\_time\\_zones>)             |
| `companyName`             | string |     ✅    | —       | The legal name of the company running the property.                                                                                                              |
| `description`             | object |          | —       | The description for the property                                                                                                                                 |
| `currencyCode`            | string |     ✅    | —       | The currency a property works with.                                                                                                                              |
| `paymentTerms`            | object |     ✅    | —       | The payment terms used for all rate plans                                                                                                                        |
| `location__city`          | string |          | —       | City                                                                                                                                                             |
| `bankAccount__bic`        | string |          | —       | Bic                                                                                                                                                              |
| `bankAccount__bank`       | string |          | —       | Bank                                                                                                                                                             |
| `bankAccount__iban`       | string |          | —       | Iban                                                                                                                                                             |
| `managingDirectors`       | string |          | —       | The managing director(s) of the company, as they should appear on invoices                                                                                       |
| `defaultCheckInTime`      | string |     ✅    | —       | <p>The default check-in time<br>A time (without fractional second part) as defined in the <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a></p>  |
| `defaultCheckOutTime`     | string |     ✅    | —       | <p>The default check-out time<br>A time (without fractional second part) as defined in the <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a></p> |
| `location__postalCode`    | string |          | —       | Postalcode                                                                                                                                                       |
| `location__regionCode`    | string |          | —       | The ISO 3166-2 code                                                                                                                                              |
| `location__countryCode`   | string |          | —       | The country code, in ISO 3166-1 alpha-2 code                                                                                                                     |
| `location__addressLine1`  | string |          | —       | Addressline1                                                                                                                                                     |
| `location__addressLine2`  | string |          | —       | Addressline2                                                                                                                                                     |
| `commercialRegisterEntry` | string |     ✅    | —       | The entry in the Commercial Reigster of the company running the property, as it should appear on invoices                                                        |

***

### `Apaleo Create A Unit`

Integration name: **APALEO\_CREATE\_A\_UNIT**

Use this call to create a new unit.\
You must have at least one of these scopes: 'units.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                           |
| ---------------- | ------- | :------: | ------- | ----------------------------------------------------- |
| `name`           | string  |     ✅    | —       | The name for the unit                                 |
| `condition`      | string  |          | —       | Condition of the unit                                 |
| `attributes`     | array   |          | —       | Collection of user defined attributes of unit         |
| `maxPersons`     | integer |     ✅    | —       | Maximum number of persons for the unit                |
| `propertyId`     | string  |     ✅    | —       | The id of the property where the unit will be created |
| `description`    | object  |     ✅    | —       | The description for the unit                          |
| `unitGroupId`    | string  |          | —       | The id of the unit group                              |
| `connectedUnits` | array   |          | —       | The list of units this unit is composed of            |

***

### `Apaleo Create A Unit Attribute`

Integration name: **APALEO\_CREATE\_A\_UNIT\_ATTRIBUTE**

Use this call to create a new unit attribute.\
You must have at least one of these scopes: 'unitattributes.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                           |
| ------------- | ------ | :------: | ------- | ------------------------------------- |
| `name`        | string |     ✅    | —       | The name of the unit attribute        |
| `description` | string |          | —       | The description of the unit attribute |

***

### `Apaleo Create A Unit Group`

Integration name: **APALEO\_CREATE\_A\_UNIT\_GROUP**

Use this call to create a new unit group.\
You must have at least one of these scopes: 'unitgroups.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                              |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------ |
| `code`                | string  |     ✅    | —       | The code for the unit group that can be shown in reports and table views |
| `name`                | object  |     ✅    | —       | The name for the unit group                                              |
| `rank`                | integer |          | —       | The unit group rank Restrictions: - Should be greater or equal to one    |
| `type`                | string  |          | —       | The unit group type                                                      |
| `maxPersons`          | integer |     ✅    | —       | Maximum number of persons for the unit group                             |
| `propertyId`          | string  |     ✅    | —       | The id of the property where unit group will be created                  |
| `description`         | object  |     ✅    | —       | The description for the unit group                                       |
| `connectedUnitGroups` | array   |          | —       | The list of connected unit groups this unit group is composed of         |

***

### `Apaleo Create Multiple Units`

Integration name: **APALEO\_CREATE\_MULTIPLE\_UNITS**

Use this call to create multiple units, following a naming rule.\
You must have at least one of these scopes: 'units.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description |
| --------- | ----- | :------: | ------- | ----------- |
| `units`   | array |     ✅    | —       | Units       |

***

### `Apaleo Creates A Property`

Integration name: **APALEO\_CREATES\_A\_PROPERTY**

Use this call to create a new property.\
You must have at least one of these scopes: 'properties.create, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example | Description                                                                                                                                                      |
| ------------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`                    | string |     ✅    | —       | The code for the property that can be shown in reports and table views                                                                                           |
| `name`                    | object |     ✅    | —       | The name for the property                                                                                                                                        |
| `taxId`                   | string |     ✅    | —       | The Tax-ID of the company running the property, as it should appear on invoices                                                                                  |
| `timeZone`                | string |     ✅    | —       | The time zone name of the property from the IANA Time Zone Database. (see: <https://en.wikipedia.org/wiki/List\\_of\\_tz\\_database\\_time\\_zones>)             |
| `companyName`             | string |     ✅    | —       | The legal name of the company running the property.                                                                                                              |
| `description`             | object |          | —       | The description for the property                                                                                                                                 |
| `currencyCode`            | string |     ✅    | —       | The currency a property works with.                                                                                                                              |
| `paymentTerms`            | object |     ✅    | —       | The payment terms used for all rate plans                                                                                                                        |
| `location__city`          | string |          | —       | City                                                                                                                                                             |
| `bankAccount__bic`        | string |          | —       | Bic                                                                                                                                                              |
| `bankAccount__bank`       | string |          | —       | Bank                                                                                                                                                             |
| `bankAccount__iban`       | string |          | —       | Iban                                                                                                                                                             |
| `managingDirectors`       | string |          | —       | The managing director(s) of the company, as they should appear on invoices                                                                                       |
| `defaultCheckInTime`      | string |     ✅    | —       | <p>The default check-in time<br>A time (without fractional second part) as defined in the <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a></p>  |
| `defaultCheckOutTime`     | string |     ✅    | —       | <p>The default check-out time<br>A time (without fractional second part) as defined in the <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a></p> |
| `location__postalCode`    | string |          | —       | Postalcode                                                                                                                                                       |
| `location__regionCode`    | string |          | —       | The ISO 3166-2 code                                                                                                                                              |
| `location__countryCode`   | string |          | —       | The country code, in ISO 3166-1 alpha-2 code                                                                                                                     |
| `location__addressLine1`  | string |          | —       | Addressline1                                                                                                                                                     |
| `location__addressLine2`  | string |          | —       | Addressline2                                                                                                                                                     |
| `commercialRegisterEntry` | string |     ✅    | —       | The entry in the Commercial Reigster of the company running the property, as it should appear on invoices                                                        |

***

### `Apaleo Delete A Unit`

Integration name: **APALEO\_DELETE\_A\_UNIT**

Use this call to delete a unit.\
You must have at least one of these scopes: 'units.delete, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description         |
| --------- | ------ | :------: | ------- | ------------------- |
| `id`      | string |     ✅    | —       | The id of the unit. |

***

### `Apaleo Delete A Unit Group`

Integration name: **APALEO\_DELETE\_A\_UNIT\_GROUP**

Use this call to delete a unit group.\
You must have at least one of these scopes: 'unitgroups.delete, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description               |
| --------- | ------ | :------: | ------- | ------------------------- |
| `id`      | string |     ✅    | —       | The id of the unit group. |

***

### `Apaleo Deletes Unit Attribute`

Integration name: **APALEO\_DELETES\_UNIT\_ATTRIBUTE**

Deletes unit attribute\
You must have at least one of these scopes: 'unitattributes.delete, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `id`      | string |     ✅    | —       | Id of unit attribute |

***

### `Apaleo Get A Properties List`

Integration name: **APALEO\_GET\_A\_PROPERTIES\_LIST**

Get the list of properties.\
You need to be authorized (no particular scope required)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                      |
| ----------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `expand`          | array   |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: actions. All other values will be silently ignored. |
| `status`          | array   |          | —       | Filter result by property status                                                                                                                 |
| `pageSize`        | integer |          | —       | Page size. If this is not set or not positive, the pageNumber is ignored and all items are returned.                                             |
| `pageNumber`      | integer |          | —       | Page number, 1-based. Default value is 1 (if this is not set or not positive). Results in 204 if there are no items on that page.                |
| `countryCode`     | array   |          | —       | Filter result by country code                                                                                                                    |
| `includeArchived` | boolean |          | —       | Include archived properties in the result. If not set, or set to false, it only returns non-archived properties                                  |

***

### `Apaleo Get A Property`

Integration name: **APALEO\_GET\_A\_PROPERTY**

Get a property by id.\
You need to be authorized (no particular scope required)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                      |
| ----------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`        | string |     ✅    | —       | The id of the property.                                                                                                                          |
| `expand`    | array  |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: actions. All other values will be silently ignored. |
| `languages` | array  |          | —       | "all" or comma separated list of two-letter language codes (ISO Alpha-2)                                                                         |

***

### `Apaleo Get A Unit`

Integration name: **APALEO\_GET\_A\_UNIT**

Get a unit by id.\
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                                  |
| ----------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`        | string |     ✅    | —       | The id of the unit.                                                                                                                                                          |
| `expand`    | array  |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: property, unitGroup, connectedUnits. All other values will be silently ignored. |
| `languages` | array  |          | —       | "all" or comma separated list of two-letter language codes (ISO Alpha-2)                                                                                                     |

***

### `Apaleo Get A Unit Group`

Integration name: **APALEO\_GET\_A\_UNIT\_GROUP**

Get a unit group by id.\
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                            |
| ----------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`        | string |     ✅    | —       | The id of the unit group.                                                                                                                                              |
| `expand`    | array  |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: property, connectedUnitGroups. All other values will be silently ignored. |
| `languages` | array  |          | —       | "all" or comma separated list of two-letter language codes (ISO Alpha-2)                                                                                               |

***

### `Apaleo Get A Units List`

Integration name: **APALEO\_GET\_A\_UNITS\_LIST**

Get the list of units.\
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                                                                                                  |
| ------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`           | array   |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: property, unitGroup, connectedUnits. All other values will be silently ignored. |
| `pageSize`         | integer |          | —       | Page size. If this is not set or not positive, the pageNumber is ignored and all items are returned.                                                                         |
| `condition`        | string  |          | —       | Return units with a specific condition                                                                                                                                       |
| `isOccupied`       | boolean |          | —       | Return only occupied or vacant units                                                                                                                                         |
| `pageNumber`       | integer |          | —       | Page number, 1-based. Default value is 1 (if this is not set or not positive). Results in 204 if there are no items on that page.                                            |
| `propertyId`       | string  |          | —       | Return units for specific property                                                                                                                                           |
| `textSearch`       | string  |          | —       | This will filter all units where the provided text is contained in the unit name. The search is case insensitive.                                                            |
| `unitGroupId`      | string  |          | —       | Return units for the specific unit group - DEPRECATED: This property will be removed 20.04.2022. Use `UnitGroupIds` instead                                                  |
| `unitGroupIds`     | array   |          | —       | Return units with the specific unit groups                                                                                                                                   |
| `maintenanceType`  | string  |          | —       | Return units with the specific maintenance type                                                                                                                              |
| `unitAttributeIds` | array   |          | —       | Return units with the specific unit attributes                                                                                                                               |

***

### `Apaleo Get Unit Attribute By Id`

Integration name: **APALEO\_GET\_UNIT\_ATTRIBUTE\_BY\_ID**

Get unit attribute by id\
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                  |
| --------- | ------ | :------: | ------- | ---------------------------- |
| `id`      | string |     ✅    | —       | The id of the unit attribute |

***

### `Apaleo Get Unit Attribute List`

Integration name: **APALEO\_GET\_UNIT\_ATTRIBUTE\_LIST**

Get unit attribute list\
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                       |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `pageSize`   | integer |          | —       | Page size. If this is not set or not positive, the pageNumber is ignored and all items are returned.                              |
| `pageNumber` | integer |          | —       | Page number, 1-based. Default value is 1 (if this is not set or not positive). Results in 204 if there are no items on that page. |

***

### `Apaleo List Unit Groups`

Integration name: **APALEO\_LIST\_UNIT\_GROUPS**

Get the list of unit groups.\
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                            |
| ---------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`         | array   |          | —       | List of all embedded resources that should be expanded in the response. Possible values are: property, connectedUnitGroups. All other values will be silently ignored. |
| `pageSize`       | integer |          | —       | Page size. If this is not set or not positive, the pageNumber is ignored and all items are returned.                                                                   |
| `pageNumber`     | integer |          | —       | Page number, 1-based. Default value is 1 (if this is not set or not positive). Results in 204 if there are no items on that page.                                      |
| `propertyId`     | string  |          | —       | Return unit groups for specific property                                                                                                                               |
| `unitGroupTypes` | array   |          | —       | Unitgrouptypes                                                                                                                                                         |

***

### `Apaleo Move Property To Live`

Integration name: **APALEO\_MOVE\_PROPERTY\_TO\_LIVE**

Use this endpoint to move an existing test property to live This operation changes the property status to 'Live'\
You must have at least one of these scopes: 'properties.manage, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description            |
| --------- | ------ | :------: | ------- | ---------------------- |
| `id`      | string |     ✅    | —       | The id of the property |

***

### `Apaleo Replace A Unit Group`

Integration name: **APALEO\_REPLACE\_A\_UNIT\_GROUP**

Use this call to modify a unit group.\
You must have at least one of these scopes: 'unitgroups.manage, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                                                                                                                                                                        |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                  | string  |     ✅    | —       | The id of the unit group.                                                                                                                                                                                          |
| `name`                | object  |     ✅    | —       | The name for the unit group                                                                                                                                                                                        |
| `rank`                | integer |          | —       | The unit group rank Restrictions: - Should be greater or equal to one                                                                                                                                              |
| `maxPersons`          | integer |          | —       | Maximum number of persons for the unit group. If this value is increased, the surcharges for the related rate plans must be specified in order for the rate plans to be sellable for the new possible occupancies. |
| `description`         | object  |     ✅    | —       | The description for the unit group                                                                                                                                                                                 |
| `connectedUnitGroups` | array   |          | —       | The list of connected unit groups this unit group is composed of                                                                                                                                                   |

***

### `Apaleo Reset Property Data`

Integration name: **APALEO\_RESET\_PROPERTY\_DATA**

This endpoint deletes transactional data for a property in 'Test' status. Requires 'properties.manage' or 'setup.manage' scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description            |
| --------- | ------ | :------: | ------- | ---------------------- |
| `id`      | string |     ✅    | —       | The id of the property |

***

### `Apaleo Returns A List Of Supported Countries`

Integration name: **APALEO\_RETURNS\_A\_LIST\_OF\_SUPPORTED\_COUNTRIES**

Returns a list of ISO country codes that could be used to create properties.\
You need to be authorized (no particular scope required)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Apaleo Returns Number Of Unit Groups`

Integration name: **APALEO\_RETURNS\_NUMBER\_OF\_UNIT\_GROUPS**

Returns number of unit groups matching the filter criteria\
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                              |
| ---------------- | ------ | :------: | ------- | ---------------------------------------- |
| `propertyId`     | string |          | —       | Return unit groups for specific property |
| `unitGroupTypes` | array  |          | —       | Unitgrouptypes                           |

***

### `Apaleo Returns Number Of Units`

Integration name: **APALEO\_RETURNS\_NUMBER\_OF\_UNITS**

Returns number of units matching the filter criteria\
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                                                 |
| ------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| `condition`        | string  |          | —       | Return units with a specific condition                                                                                      |
| `isOccupied`       | boolean |          | —       | Return only occupied or vacant units                                                                                        |
| `propertyId`       | string  |          | —       | Return units for specific property                                                                                          |
| `textSearch`       | string  |          | —       | This will filter all units where the provided text is contained in the unit name. The search is case insensitive.           |
| `unitGroupId`      | string  |          | —       | Return units for the specific unit group - DEPRECATED: This property will be removed 20.04.2022. Use `UnitGroupIds` instead |
| `unitGroupIds`     | array   |          | —       | Return units with the specific unit groups                                                                                  |
| `maintenanceType`  | string  |          | —       | Return units with the specific maintenance type                                                                             |
| `unitAttributeIds` | array   |          | —       | Return units with the specific unit attributes                                                                              |

***

### `Apaleo Return Total Count Of Properties`

Integration name: **APALEO\_RETURN\_TOTAL\_COUNT\_OF\_PROPERTIES**

Return total count of properties\
You need to be authorized (no particular scope required)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*


# Asana

Your Toolhouse AI Worker can connect to Asana using 153 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](https://toolhouse.app/auth-connections?authkit_slugs=asana).

## Tools (153)

### `Asana Add Followers To Project`

Integration name: **ASANA\_ADD\_FOLLOWERS\_TO\_PROJECT**

Tool to add followers to a project in Asana. Use this tool when you need to add one or more users as followers to a specific project. Followers will receive notifications when tasks are added to the project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                           | Description                                                                                                                                                                                                                                                                         |
| ------------- | ------- | :------: | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `followers`   | string  |     ✅    | `"521621,621373"`                 | A string identifying users. These can either be the string "me", an email, or the gid of a user. For multiple followers, use a comma-separated string.                                                                                                                              |
| `opt_fields`  | array   |          | `["followers","name","archived"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                         |
| `opt_pretty`  | boolean |          | —                                 | Provides "pretty" output. Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_gid` | string  |     ✅    | `"1331"`                          | Globally unique identifier for the project.                                                                                                                                                                                                                                         |

***

### `Asana Add Followers To Task`

Integration name: **ASANA\_ADD\_FOLLOWERS\_TO\_TASK**

Tool to add followers to a task in Asana. Use this tool when you need to add one or more users as followers to a specific task. This will notify them of updates to the task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                         |
| ------------ | ------- | :------: | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_gid`   | string  |     ✅    | `"1202599807151278"`       | The globally unique identifier for the task.                                                                                                                                                                                                                                        |
| `followers`  | array   |     ✅    | `["12345","67890"]`        | An array of user GIDs to add as followers to the task. For example: \["12345", "67890"].                                                                                                                                                                                            |
| `opt_fields` | array   |          | `["followers","assignee"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. For example \["followers", "assignee"].                                 |
| `opt_pretty` | boolean |          | —                          | Provides “pretty” output. Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Add Item To Portfolio`

Integration name: **ASANA\_ADD\_ITEM\_TO\_PORTFOLIO**

Add a project (or other supported item) to an Asana portfolio using the native addItem endpoint. Use when a workflow needs to attach a newly created project to a portfolio without using ASANA\_SUBMIT\_PARALLEL\_REQUESTS.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                                |
| --------------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item`          | string |     ✅    | `"1202599807151278"` | The globally unique identifier (GID) of the item to add to the portfolio. Typically a project GID, but can be any supported portfolio item type. Must be a numeric string. |
| `insert_after`  | string |          | `"1202599807151278"` | GID of a portfolio item after which to insert the new item. Mutually exclusive with `insert_before`.                                                                       |
| `insert_before` | string |          | `"1202599807151278"` | GID of a portfolio item before which to insert the new item. Mutually exclusive with `insert_after`.                                                                       |
| `portfolio_gid` | string |     ✅    | `"1202599807151278"` | The globally unique identifier (GID) of the portfolio to add the item to. Must be a numeric string.                                                                        |

***

### `Asana Add Members To Project`

Integration name: **ASANA\_ADD\_MEMBERS\_TO\_PROJECT**

Tool to add users to a project in Asana. Use this tool when you need to add one or more users as members to a specific project. Members can view and contribute to the project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                                         |
| ------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `members`     | string  |     ✅    | `"521621,621373"`               | An array of strings identifying users. These can either be the string "me", an email, or the gid of a user. For example: "521621,621373" or "me,<user@example.com>".                                                                                                                |
| `opt_fields`  | array   |          | `["members","name","archived"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. For example: \["members", "name", "archived"].                          |
| `opt_pretty`  | boolean |          | —                               | Provides "pretty" output. Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_gid` | string  |     ✅    | `"1331"`                        | Globally unique identifier for the project.                                                                                                                                                                                                                                         |

***

### `Asana Add Project For Task`

Integration name: **ASANA\_ADD\_PROJECT\_FOR\_TASK**

Tool to add a project to a task in Asana. Use when you need to associate a task with a project. Optionally position the task within the project using insert\_before, insert\_after, or section parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                  |
| --------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `project`       | string  |     ✅    | `"1210474562469922"` | The globally unique identifier for the project to add to the task.                                                                                                                                                                                                                                                                           |
| `section`       | string  |          | `"987654"`           | A section in the project to insert the task into. The task will be inserted at the bottom of the section unless combined with `insert_before: null` (end of section) or `insert_after: null` (beginning of section). Can also be combined with non-null `insert_before` or `insert_after` to position relative to a task within the section. |
| `task_gid`      | string  |     ✅    | `"1213196740913610"` | The globally unique identifier for the task to add a project to.                                                                                                                                                                                                                                                                             |
| `opt_pretty`    | boolean |          | —                    | Provides 'pretty' output. Provides the response in a 'pretty' format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                          |
| `insert_after`  | string  |          | `"124816"`           | A task in the project to insert the task after, or `null` to insert at the beginning of the list. When used with `section`, `null` will insert at the beginning of the specified section, otherwise the task must be in the specified section.                                                                                               |
| `insert_before` | string  |          | `"432134"`           | A task in the project to insert the task before, or `null` to insert at the end of the list. When used with `section`, `null` will insert at the end of the specified section, otherwise the task must be in the specified section.                                                                                                          |

***

### `Asana Add Supporting Relationship`

Integration name: **ASANA\_ADD\_SUPPORTING\_RELATIONSHIP**

Tool to add a supporting goal relationship to a goal. Use when you want to link a project, task, portfolio, or another goal as a supporting resource to a specific goal in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                                                                                                                                                                                             |
| ------------ | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object  |     ✅    | —         | The request data for adding a supporting relationship.                                                                                                                                                                                  |
| `goal_gid`   | string  |     ✅    | `"98765"` | Globally unique identifier for the goal.                                                                                                                                                                                                |
| `opt_fields` | array   |          | —         | This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                    |
| `opt_pretty` | boolean |          | —         | Provides “pretty” output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Add Tag To Task`

Integration name: **ASANA\_ADD\_TAG\_TO\_TASK**

Tool to add an existing tag to a task in Asana. Use when you need to add a tag for prioritization, routing, or automation workflows. Tags cannot be added via Update Task, so this dedicated endpoint is required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example              | Description                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag_gid`    | string  |     ✅    | `"1234567890"`       | The globally unique identifier for the tag to add. The tag must already exist in the workspace.                                                                                                                                                |
| `task_gid`   | string  |     ✅    | `"1202599807151278"` | The globally unique identifier for the task.                                                                                                                                                                                                   |
| `opt_fields` | string  |          | `"name,gid"`         | Comma-separated list of fields to include in the response. Limited utility for this endpoint as it returns an empty data block.                                                                                                                |
| `opt_pretty` | boolean |          | —                    | Provides 'pretty' output. Provides the response in a 'pretty' format with proper line breaking and indentation for readability. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Add Task Dependencies`

Integration name: **ASANA\_ADD\_TASK\_DEPENDENCIES**

Tool to add dependency relationships to an Asana task. Use when you need to mark one or more tasks as prerequisites (dependencies) for another task, ensuring the dependency tasks must be completed first.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                        |
| -------------- | ------- | :------: | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_gid`     | string  |     ✅    | `"1202599807151278"`                    | The globally unique identifier for the task that will depend on other tasks.                                                                                                                                                                       |
| `opt_fields`   | string  |          | `"name,assignee,dependencies,due_on"`   | Comma-separated list of fields to include in the response. By default, the response returns a compact representation of the task. Use this to retrieve additional fields such as 'name', 'assignee', 'due\_on', 'dependencies', etc.               |
| `opt_pretty`   | boolean |          | —                                       | Provides 'pretty' output. Provides the response in a 'pretty' format with proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `dependencies` | array   |     ✅    | `["123456789012345","987654321098765"]` | An array of task GIDs that the target task depends on (i.e., these tasks must be completed before the target task can be started). Each GID should be a valid task identifier.                                                                     |

***

### `Asana Add Task To Section`

Integration name: **ASANA\_ADD\_TASK\_TO\_SECTION**

Adds an existing task to a section, optionally positioning it before or after another task in that section; if no position is specified, the task is added to the end.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                     |
| --------------- | ------ | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_gid`      | string |     ✅    | `"1202599807151278"` | The GID of the existing task to add to the section. Must be a numeric string.                                                                                   |
| `section_gid`   | string |     ✅    | `"1202599807151278"` | The GID of the target section. Must be a section GID (not a project or task GID). Use GET\_SECTIONS\_IN\_PROJECT to retrieve valid section GIDs from a project. |
| `insert_after`  | string |          | `"1202599807151278"` | GID of a task in the section after which to insert the current task. Mutually exclusive with insert\_before.                                                    |
| `insert_before` | string |          | `"1202599807151278"` | GID of a task in the section before which to insert the current task. Mutually exclusive with insert\_after.                                                    |

***

### `Asana Add User To Team`

Integration name: **ASANA\_ADD\_USER\_TO\_TEAM**

Tool to add a user to a team in Asana. Use this when you need to add a user to a specific team by providing their user GID, email, or "me" for the current user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                     | Description                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`       | string  |     ✅    | `"12345"`                                                   | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                                                  |
| `team_gid`   | string  |     ✅    | `"159874"`                                                  | Globally unique identifier for the team.                                                                                                                                                                                                                                          |
| `opt_fields` | array   |          | `["is_admin","is_guest","is_limited_access","team","user"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                       |
| `opt_pretty` | boolean |          | —                                                           | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Add User To Workspace`

Integration name: **ASANA\_ADD\_USER\_TO\_WORKSPACE**

Tool to add a user to a workspace or organization in Asana. Use this when you need to add a user to a specific workspace by providing their user GID, email, or "me" for the current user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                       |
| --------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`          | string  |     ✅    | `"12345"`                  | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                                                  |
| `opt_fields`    | array   |          | `["email","name","photo"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                       |
| `opt_pretty`    | boolean |          | —                          | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `workspace_gid` | string  |     ✅    | `"12345"`                  | Globally unique identifier for the workspace or organization.                                                                                                                                                                                                                     |

***

### `Asana Approve Access Request`

Integration name: **ASANA\_APPROVE\_ACCESS\_REQUEST**

Tool to approve an access request in Asana. Use when you need to grant access to a resource that requires approval workflow.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example               | Description                                                                                                                                                                                                                                  |
| -------------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`         | string  |          | `"gid,resource_type"` | Comma-separated list of fields to include in the response.                                                                                                                                                                                   |
| `opt_pretty`         | boolean |          | —                     | Provides "pretty" output. Provides the response in a pretty format with proper line breaking and indentation for readability. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `access_request_gid` | string  |     ✅    | `"12345"`             | Globally unique identifier for the access request to approve.                                                                                                                                                                                |

***

### `Asana Create Access Request`

Integration name: **ASANA\_CREATE\_ACCESS\_REQUEST**

Tool to create an access request in Asana. Use when you need to request access to a project or portfolio that you don't currently have access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                         | Description                                                                                                                                    |
| --------- | ------ | :------: | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `target`  | string |     ✅    | `"1210474562469922"`                            | The globally unique identifier (gid) of the access requestable object that the user is requesting access to. Supports projects and portfolios. |
| `message` | string |          | `"I'm looking to request access to this item."` | The optional message to include with the access request. This can be used to provide context or additional information about the request.      |

***

### `Asana Create Allocation`

Integration name: **ASANA\_CREATE\_ALLOCATION**

Creates a new allocation. Use when you need to schedule or assign a specific amount of a user's time per week to a task or project within a defined period.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                   | Description                                                                                                                                    |
| --------------- | ------ | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `notes`         | string |          | `"Allocation for Q3 feature development"` | Any additional notes related to the allocation.                                                                                                |
| `end_on`        | string |     ✅    | `"2024-08-22"`                            | The end date of the allocation. The format is YYYY-MM-DD.                                                                                      |
| `start_on`      | string |     ✅    | `"2024-08-15"`                            | The start date of the allocation. The format is YYYY-MM-DD.                                                                                    |
| `effort_type`   | string |     ✅    | `"hours"`                                 | The unit type for tracking effort on the allocation. Must be either 'hours' or 'percent'.                                                      |
| `project_gid`   | string |          | `"111222"`                                | The project GID for which this allocation is being made. If provided, the allocation will be linked to this project.                           |
| `assignee_gid`  | string |     ✅    | `"67890"`                                 | The ID of the user to whom the allocation is assigned. This can be the user's GID or the string 'me' to refer to the authenticated user.       |
| `effort_value`  | number |     ✅    | `2`                                       | The numeric effort value for the allocation. Represents hours per week if effort\_type is 'hours', or percentage if effort\_type is 'percent'. |
| `workspace_gid` | string |     ✅    | `"12345"`                                 | The ID of the workspace where the allocation will be created.                                                                                  |

***

### `Asana Create A Project`

Integration name: **ASANA\_CREATE\_A\_PROJECT**

Creates a new Asana project in the specified workspace. Requires a `workspace` GID, and additionally a `team` GID if the workspace is an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                     | Description                                                                    |
| ------------ | ------- | :------: | --------------------------- | ------------------------------------------------------------------------------ |
| `data`       | object  |     ✅    | —                           | Data payload for the new project.                                              |
| `opt_fields` | array   |          | `["name","notes","due_on"]` | Array of optional properties to include in the response.                       |
| `opt_pretty` | boolean |          | —                           | True for human-readable JSON response (debugging only due to size/processing). |

***

### `Asana Create A Tag In A Workspace`

Integration name: **ASANA\_CREATE\_A\_TAG\_IN\_A\_WORKSPACE**

Creates a new tag, with properties like name and color defined in the request body, within a specific Asana workspace (using `workspace_gid`); this tag helps categorize tasks, is confined to the workspace, and is not automatically applied to tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example          | Description                                                                                                                                            |
| --------------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data`          | object  |     ✅    | —                | The properties for the tag creation, including name (required), color (optional), and notes (optional).                                                |
| `opt_fields`    | array   |          | `["name,color"]` | Comma-separated string of fields from `OptFieldsEnm0` (e.g., 'name', 'color') to include in the response; returns a compact representation by default. |
| `opt_pretty`    | boolean |          | —                | If true, pretty-prints the JSON response; useful for debugging but may increase response size.                                                         |
| `workspace_gid` | string  |     ✅    | —                | The globally unique identifier (GID) for the workspace or organization in which to create the tag.                                                     |

***

### `Asana Create A Task`

Integration name: **ASANA\_CREATE\_A\_TASK**

Creates a new Asana task; requires 'workspace', 'parent', or 'projects' for association, and 'followers', 'projects', 'tags' are set only at creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                            | Description                                                                                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object  |     ✅    | —                                  | Task details for creation.                                                                                                                                                                                                                                                                                |
| `opt_fields` | array   |          | `"name,assignee,due_on,completed"` | List of optional field names to include in the response. Common fields include: name, assignee, due\_on, completed, projects, memberships, memberships.section, memberships.section.name, etc. For section information, use memberships.section or memberships.section.name. Default is compact resource. |
| `opt_pretty` | boolean |          | `"true"`                           | Provides 'pretty' JSON output with line breaks/indentation. Useful for debugging; may increase response time/size.                                                                                                                                                                                        |

***

### `Asana Create Attachment For Object`

Integration name: **ASANA\_CREATE\_ATTACHMENT\_FOR\_OBJECT**

Tool to upload an attachment or link an external resource to a task, project, or project\_brief in Asana. Use when you need to attach a file or external URL to any Asana object.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                       | Description                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------ | ------- | :------: | ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`              | string  |          | `"https://docs.composio.dev"` | The URL of the external resource being attached. Required for attachments of type 'external'. Mutually exclusive with 'file'.                                                                                                                                                                                                                                                |
| `file`             | object  |          | —                             | Required for 'asana' attachments. This field should be provided when uploading a file. Mutually exclusive with 'url'.                                                                                                                                                                                                                                                        |
| `name`             | string  |          | `"Composio Documentation"`    | The name of the external resource being attached. Required for attachments of type 'external'. For file uploads, this is optional and will be derived from the file if not provided.                                                                                                                                                                                         |
| `parent`           | string  |     ✅    | `"1212826719445794"`          | Required identifier of the parent task, project, or project\_brief, as a string. This is the GID of the object to attach the file or URL to.                                                                                                                                                                                                                                 |
| `connect_to_app`   | boolean |          | —                             | Optional. Only relevant for external attachments with a parent task. A boolean indicating whether the current app should be connected with the attachment for the purposes of showing an app components widget. Requires the app to have been added to a project the parent task is in. This property can only be set if an OAuth token is used to authenticate the request. |
| `resource_subtype` | string  |          | `"external"`                  | The type of the attachment. Must be 'asana' for file uploads or 'external' for URL attachments. If not specified, a file attachment of type 'asana' will be assumed. Note that if the value is 'external', 'name' and 'url' must also be provided.                                                                                                                           |

***

### `Asana Create Attachment For Task`

Integration name: **ASANA\_CREATE\_ATTACHMENT\_FOR\_TASK**

Tool to upload an attachment to a task. Use when you need to attach a file to a specific task in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------ | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`             | object  |     ✅    | —         | The file to upload.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `parent_gid`       | string  |     ✅    | `"12345"` | Globally unique identifier for the parent task or comment.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `connect_to_app`   | boolean |          | `true`    | Whether to connect the attachment to the app. If true, the attachment will be displayed in the Asana UI as an app attachment. If false, the attachment will be displayed as a regular file attachment. Defaults to true.                                                                                                                                                                                                                                                                                                                                                                            |
| `resource_subtype` | string  |          | `"asana"` | The type of the attachment. Must be one of the given values. If not specified, a regular file attachment will be created. If 'asana' is specified, the attachment will be a link to another Asana task. If 'external' is specified, the attachment will be a link to an external resource. If 'gdrive' is specified, the attachment will be a link to a Google Drive file. If 'box' is specified, the attachment will be a link to a Box file. If 'dropbox' is specified, the attachment will be a link to a Dropbox file. If 'vimeo' is specified, the attachment will be a link to a Vimeo video. |

***

### `Asana Create Custom Field`

Integration name: **ASANA\_CREATE\_CUSTOM\_FIELD**

Tool to create a new custom field in a workspace. Use when you need to define a new field for tracking specific information within Asana tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example          | Description                                                    |
| ------------ | ------- | :------: | ---------------- | -------------------------------------------------------------- |
| `data`       | object  |     ✅    | —                | The custom field object to create.                             |
| `opt_fields` | array   |          | `["gid","name"]` | Comma-separated list of properties to include in the response. |
| `opt_pretty` | boolean |          | `true`           | Provides “pretty” output.                                      |

***

### `Asana Create Enum Option For Custom Field`

Integration name: **ASANA\_CREATE\_ENUM\_OPTION\_FOR\_CUSTOM\_FIELD**

Tool to create a new enum option for a custom field in Asana. Use this when you need to add a new selectable option to an existing custom field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example          | Description                                      |
| ------------------ | ------- | :------: | ---------------- | ------------------------------------------------ |
| `data`             | object  |     ✅    | —                | The enum option to create.                       |
| `opt_fields`       | array   |          | `["name","gid"]` | Defines fields to return.                        |
| `opt_pretty`       | boolean |          | —                | Provides “pretty” output.                        |
| `custom_field_gid` | string  |     ✅    | `"12345"`        | Globally unique identifier for the custom field. |

***

### `Asana Create Membership`

Integration name: **ASANA\_CREATE\_MEMBERSHIP**

Tool to create a membership by adding a user or team to a project, goal, or portfolio. Use when you need to grant access to an Asana resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example              | Description                                                                                                                                         |
| -------------- | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`         | string  |          | `"approver"`         | Role of the member in the parent resource. This is an optional parameter.                                                                           |
| `member`       | string  |     ✅    | `"1210124065021206"` | GID of the member (user or team) to add to the parent resource. Must be a numeric GID string (e.g., '1210124065021206').                            |
| `parent`       | string  |     ✅    | `"1210474562469922"` | GID of the parent resource (project, goal, or portfolio) to add the member to. Must be a numeric GID string (e.g., '1210474562469922').             |
| `opt_pretty`   | boolean |          | `true`               | Provides 'pretty' output with proper line breaking and indentation for debugging. May increase response size.                                       |
| `access_level` | string  |          | `"editor"`           | Access level for the member in the parent resource. Common values: 'admin', 'editor', 'commenter', 'viewer'. Defaults to 'editor' if not specified. |

***

### `Asana Create Project Brief`

Integration name: **ASANA\_CREATE\_PROJECT\_BRIEF**

Tool to create a project brief for a project. Use when you need to add a detailed explanation (what and why) to a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                             | Description                                                                                                                                                                                                                                                                                   |
| ------------- | ------- | :------: | --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `html_text`   | string  |     ✅    | `"<body>This is the project brief content.</body>"` | Rich text content wrapped in HTML body tag. The content must be wrapped in a tag, e.g., 'Project brief content here'.                                                                                                                                                                         |
| `opt_fields`  | array   |          | —                                                   | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. Available options: html\_text, permalink\_url, project, project.name, text, title |
| `opt_pretty`  | boolean |          | —                                                   | Provides 'pretty' output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                       |
| `project_gid` | string  |     ✅    | `"1331"`                                            | Globally unique identifier for the project.                                                                                                                                                                                                                                                   |

***

### `Asana Create Project For Team`

Integration name: **ASANA\_CREATE\_PROJECT\_FOR\_TEAM**

Tool to create a project in a team. Use when you need to create a new project within a specific Asana team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                     | Description                                                                                                                                            |
| ------------ | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data`       | object  |     ✅    | —                                           | Project data payload containing the project details to create.                                                                                         |
| `team_gid`   | string  |     ✅    | `"1210124791807950"`                        | Globally unique identifier for the team. This is the team where the project will be created.                                                           |
| `opt_fields` | array   |          | `["name","notes","owner","workspace.name"]` | Array of optional field names to include in the response (e.g., 'name', 'notes', 'owner', 'workspace.name'). By default, some properties are excluded. |
| `opt_pretty` | boolean |          | `true`                                      | Provides 'pretty' output with proper line breaking and indentation for debugging. Note: increases response size and processing time.                   |

***

### `Asana Create Project For Workspace`

Integration name: **ASANA\_CREATE\_PROJECT\_FOR\_WORKSPACE**

Tool to create a project in a workspace. Use when you need to create a new project within a specific Asana workspace. Note: The team field is required when creating projects in workspaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                 | Description                                                                                                                                                         |
| --------------- | ------- | :------: | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`          | object  |     ✅    | —                                                       | Project data payload containing the project details to create.                                                                                                      |
| `opt_fields`    | array   |          | `["name","notes","owner","team.name","workspace.name"]` | Array of optional field names to include in the response (e.g., 'name', 'notes', 'owner', 'team.name', 'workspace.name'). By default, some properties are excluded. |
| `opt_pretty`    | boolean |          | `true`                                                  | Provides 'pretty' output with proper line breaking and indentation for debugging. Note: increases response size and processing time.                                |
| `workspace_gid` | string  |     ✅    | `"1205766922013215"`                                    | Globally unique identifier for the workspace or organization where the project will be created.                                                                     |

***

### `Asana Create Project Status Update`

Integration name: **ASANA\_CREATE\_PROJECT\_STATUS\_UPDATE**

Tool to create a new status update on a project. Use when you need to communicate the current status, progress, or any blockers related to a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                                            | Description                                                                              |
| ------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `text`        | string |     ✅    | `"<h1>Weekly Update</h1><p>We are on track to complete the deliverables by end of next week.</p>"` | The HTML content of the status update.                                                   |
| `color`       | string |     ✅    | `"GREEN"`                                                                                          | Color of the status update. Supported values: GREEN, YELLOW, RED, BLUE, COMPLETE.        |
| `title`       | string |     ✅    | `"Project Alpha Status - Week 5"`                                                                  | The title of the project status update.                                                  |
| `project_gid` | string |     ✅    | `"12345"`                                                                                          | Globally unique identifier for the project.                                              |
| `status_type` | string |     ✅    | `"on_track"`                                                                                       | The type of status. Must be one of: on\_track, at\_risk, off\_track, on\_hold, complete. |

***

### `Asana Create Section In Project`

Integration name: **ASANA\_CREATE\_SECTION\_IN\_PROJECT**

Creates a new SECTION (not a task) in a project. Sections are organizational containers within a project used to group and categorize tasks (e.g., 'To Do', 'In Progress', 'Done', 'Backlog'). The new section can be optionally positioned relative to an existing section in the same project. IMPORTANT: This action creates SECTIONS only. Do NOT use this action to create tasks. To create a task, use the ASANA\_CREATE\_A\_TASK action instead. Task-related fields like 'assignee', 'notes', 'due\_date', 'description' are NOT supported by this action.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                        |
| --------------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string |     ✅    | `"To Do"`            | Name for the new section. This is a section name (e.g., 'To Do', 'In Progress'), NOT a task name.                                                  |
| `project_gid`   | string |     ✅    | `"1210473471812630"` | GID of the project where the section will be created. Must be a valid project GID.                                                                 |
| `insert_after`  | string |          | `"12345"`            | GID of an existing section to insert the new section after; if omitted (and `insert_before` is also omitted), the new section is added at the end. |
| `insert_before` | string |          | `"12345"`            | GID of an existing section to insert the new section before; if omitted, the new section is added at the end.                                      |

***

### `Asana Create Status For Object`

Integration name: **ASANA\_CREATE\_STATUS\_FOR\_OBJECT**

Tool to create a status update on a project, portfolio, or goal. Use when you need to communicate progress, blockers, or current state to all followers of an object.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                    | Description                                                                                                                                                                                                  |
| ------------- | ------- | :------: | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `text`        | string  |     ✅    | `"Project is progressing well. All milestones on track."`  | The text content of the status update. This is the body of the status update that will be sent to all followers of the parent object.                                                                        |
| `title`       | string  |          | `"Weekly Status Update"`                                   | The title of the status update. If not provided, Asana may auto-generate a title based on the status\_type.                                                                                                  |
| `parent`      | string  |     ✅    | `"1210124791807961"`                                       | Globally unique identifier (GID) of the object to create a status update on. Can be a project, portfolio, or goal GID. GIDs are long numeric strings (e.g., '1210124791807961').                             |
| `opt_fields`  | array   |          | `["gid","title","status_type","created_at","author.name"]` | List of optional field names to include in the response. Common fields include: gid, title, text, status\_type, created\_at, created\_by, author, parent, resource\_subtype, html\_text, etc.                |
| `opt_pretty`  | boolean |          | `true`                                                     | Provides 'pretty' JSON output with line breaks and indentation. Useful for debugging; may increase response time and size.                                                                                   |
| `status_type` | string  |     ✅    | `"on_track"`                                               | The type of status update. Must be one of: on\_track (project is on track), at\_risk (project is at risk), off\_track (project is off track), on\_hold (project is on hold), complete (project is complete). |

***

### `Asana Create Subtask`

Integration name: **ASANA\_CREATE\_SUBTASK**

Creates a new Asana subtask under an existing parent task (`task_gid`); `due_on` and `due_at` are mutually exclusive and cannot be set simultaneously.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                         | Description                                                                                                                                                                                         |
| ----------- | ------- | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`      | string  |     ✅    | `"Complete subtask"`                            | The name of the subtask to be created.                                                                                                                                                              |
| `notes`     | string  |          | `"This subtask involves reviewing section 2.1"` | Optional descriptive text for the subtask.                                                                                                                                                          |
| `due_at`    | string  |          | `"2024-03-15T14:00:00Z"`                        | Optional due date and time for the subtask in ISO 8601 format (e.g., YYYY-MM-DDTHH:mm:ssZ), which is more specific than `due_on`.                                                                   |
| `due_on`    | string  |          | `"2024-03-15"`                                  | Optional due date for the subtask in YYYY-MM-DD format, representing the end of the day for the task.                                                                                               |
| `assignee`  | string  |          | `"1234567890123456"`                            | User to assign to this subtask. Accepts either a numeric user GID (e.g., '1234567890123456') or the special value 'me' for the authenticated user. If not provided, the subtask will be unassigned. |
| `task_gid`  | string  |     ✅    | `"12345"`                                       | The numeric Global ID (GID) of the parent task under which the subtask will be created. Must be a numeric string (digits only). Special values like 'me' are not accepted.                          |
| `completed` | boolean |          | `true`                                          | Optional flag to mark the subtask as completed upon creation. Defaults to false if not specified.                                                                                                   |
| `followers` | array   |          | `["12345","67890"]`                             | Optional array of user Global IDs (GIDs) to add as followers to the subtask. Followers receive notifications about subtask updates.                                                                 |

***

### `Asana Create Tag`

Integration name: **ASANA\_CREATE\_TAG**

Tool to create a new tag in an Asana workspace. Use when you need to create a tag for categorizing tasks. Tags help organize and filter tasks across projects but are not automatically applied to any tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                             | Description                                                                                                                           |
| ------------ | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object  |     ✅    | —                                   | The properties for the tag to be created.                                                                                             |
| `opt_fields` | array   |          | `["name","color","workspace.name"]` | List of field names to include in the response. Common fields: color, created\_at, followers, name, notes, permalink\_url, workspace. |
| `opt_pretty` | boolean |          | —                                   | If true, provides pretty-printed JSON response. Useful for debugging but may increase response size.                                  |

***

### `Asana Create Task Comment`

Integration name: **ASANA\_CREATE\_TASK\_COMMENT**

Adds a new text comment (story) to an existing Asana task, appearing in its activity feed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                           | Description                                                                                                        |
| --------- | ------ | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `text`    | string |     ✅    | `"This is a comment on the task"` | The plain text content of the comment to be posted on the task. HTML or rich text is not supported via this field. |
| `task_id` | string |     ✅    | `"1234567890"`                    | The globally unique identifier (GID) of the Asana task to which the comment will be added.                         |

***

### `Asana Create Team`

Integration name: **ASANA\_CREATE\_TEAM**

Tool to create a new team in an Asana workspace. Use when you need to establish a new team for collaboration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                           |
| --------- | ------ | :------: | ------- | ------------------------------------- |
| `data`    | object |     ✅    | —       | The request data for creating a team. |

***

### `Asana Delete Allocation`

Integration name: **ASANA\_DELETE\_ALLOCATION**

Tool to delete an allocation by its ID. Use this when you need to remove a specific resource allocation in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                         |
| ---------------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`     | boolean |          | —         | Provides “pretty” output. Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `allocation_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the allocation.                                                                                                                                                                                                                                      |

***

### `Asana Delete Attachment`

Integration name: **ASANA\_DELETE\_ATTACHMENT**

Tool to delete an attachment by its globally unique identifier. Use when you need to remove an existing attachment from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                    |
| ---------------- | ------- | :------: | --------- | ---------------------------------------------- |
| `opt_pretty`     | boolean |          | —         | Provides “pretty” output.                      |
| `attachment_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the attachment. |

***

### `Asana Delete Custom Field`

Integration name: **ASANA\_DELETE\_CUSTOM\_FIELD**

Tool to delete a custom field by its globally unique identifier. Use when you need to remove an existing custom field from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example   | Description                                      |
| ------------------ | ------ | :------: | --------- | ------------------------------------------------ |
| `custom_field_gid` | string |     ✅    | `"12345"` | Globally unique identifier for the custom field. |

***

### `Asana Delete Membership`

Integration name: **ASANA\_DELETE\_MEMBERSHIP**

Tool to delete a membership by its GID. Use this when you need to remove a user or team's access to a project, portfolio, goal, or custom field in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                         |
| ---------------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`     | boolean |          | —         | Provides "pretty" output. Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `membership_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the membership.                                                                                                                                                                                                                                      |

***

### `Asana Delete Project`

Integration name: **ASANA\_DELETE\_PROJECT**

Delete a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                                                                                                                                                                                               |
| ------------- | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`  | boolean |          | —         | Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the project.                                                                                                                                                                                                               |

***

### `Asana Delete Project Brief`

Integration name: **ASANA\_DELETE\_PROJECT\_BRIEF**

Tool to delete a project brief by its GID. Use when you need to remove a project brief from Asana. Note: This requires the project\_brief\_gid (not the project\_gid).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                       |
| ------------------- | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`        | boolean |          | —         | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_brief_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the project brief to delete. Must be a numeric string.                                                                                                                                                                                             |

***

### `Asana Delete Project Status`

Integration name: **ASANA\_DELETE\_PROJECT\_STATUS**

Tool to delete a project status by its GID. Use when you need to remove a specific project status update from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                       |
| -------------------- | ------- | :------: | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`         | boolean |          | —          | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_status_gid` | string  |     ✅    | `"321654"` | Globally unique identifier for the project status to delete. Must be a numeric string.                                                                                                                                                                                            |

***

### `Asana Delete Section`

Integration name: **ASANA\_DELETE\_SECTION**

Tool to delete a section by its GID. Use when you need to permanently remove a section from a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                       |
| ------------- | ------- | :------: | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`  | boolean |          | —          | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `section_gid` | string  |     ✅    | `"321654"` | The globally unique identifier for the section to delete.                                                                                                                                                                                                                         |

***

### `Asana Delete Status Update`

Integration name: **ASANA\_DELETE\_STATUS\_UPDATE**

Tool to delete a status update by its GID. Use when you need to remove a specific status update from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                       |
| ------------------- | ------- | :------: | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`        | boolean |          | —          | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `status_update_gid` | string  |     ✅    | `"321654"` | Globally unique identifier for the status update to delete.                                                                                                                                                                                                                       |

***

### `Asana Delete Story`

Integration name: **ASANA\_DELETE\_STORY**

Tool to delete a story by its GID. Use when you need to remove a story from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `story_gid`  | string  |     ✅    | `"35678"` | Globally unique identifier for the story.                                                                                                                                                                                                                                         |
| `opt_pretty` | boolean |          | —         | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Delete Tag`

Integration name: **ASANA\_DELETE\_TAG**

Tool to delete a specific tag by its GID. Use when you need to remove an existing tag from Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                                                                                                                                                                                             |
| ------------ | ------- | :------: | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag_gid`    | string  |     ✅    | `"12345"` | The globally unique identifier for the tag.                                                                                                                                                                                             |
| `opt_pretty` | boolean |          | —         | Provides “pretty” output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Delete Task`

Integration name: **ASANA\_DELETE\_TASK**

Delete a task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                                                                                                                                                                                                                                         |
| ------------ | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_gid`   | string  |     ✅    | `"12345"` | Globally unique identifier for the task to delete. Must be a numeric string.                                                                                                                                                                                                        |
| `opt_pretty` | boolean |          | —         | Provides "pretty" output. Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Duplicate Project`

Integration name: **ASANA\_DUPLICATE\_PROJECT**

Duplicate a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                                  |
| ---------------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------------------- |
| `name`           | string |     ✅    | `"New Project Name"`       | The name of the new project.                                                 |
| `team`           | string |          | `"67890"`                  | Globally unique identifier for the team that the new project will belong to. |
| `include`        | array  |          | `["members","task_notes"]` | A list of elements to be included in the duplication.                        |
| `project_gid`    | string |     ✅    | `"12345"`                  | Globally unique identifier for the project to be duplicated.                 |
| `schedule_dates` | object |          | —                          | Scheduling information for the new project.                                  |

***

### `Asana Duplicate Task`

Integration name: **ASANA\_DUPLICATE\_TASK**

Duplicate a task

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                            |
| ---------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------- |
| `name`     | string |          | `"New Task Name"` | The name of the new task.                                              |
| `include`  | array  |          | —                 | A comma-separated string of properties to copy from the original task. |
| `task_gid` | string |     ✅    | `"12345"`         | The globally unique identifier for the task to be duplicated.          |

***

### `Asana Get Access Requests`

Integration name: **ASANA\_GET\_ACCESS\_REQUESTS**

Tool to retrieve access requests for a target object. Use when you need to get pending access requests for a specific resource like a project or portfolio.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                               | Description                                                                                                                                                                                                                             |
| ------------ | ------- | :------: | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`       | string  |          | `"me"`                                                                | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                        |
| `target`     | string  |     ✅    | `"1331"`                                                              | Globally unique identifier for the target object.                                                                                                                                                                                       |
| `opt_fields` | array   |          | `["approval_status","message","requester","requester.name","target"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                             |
| `opt_pretty` | boolean |          | —                                                                     | Provides "pretty" output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Get Allocation`

Integration name: **ASANA\_GET\_ALLOCATION**

Get an allocation by ID. Use when you need to retrieve the details of a specific allocation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                              | Description                                                                                                                                                                                                                             |
| ---------------- | ------- | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`     | array   |          | `["assignee","created_by","effort"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                             |
| `opt_pretty`     | boolean |          | —                                    | Provides “pretty” output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `allocation_gid` | string  |     ✅    | `"12345"`                            | Globally unique identifier for the allocation.                                                                                                                                                                                          |

***

### `Asana Get Allocations`

Integration name: **ASANA\_GET\_ALLOCATIONS**

Tool to get multiple allocations. Requires either 'parent' (project GID) OR both 'assignee' AND 'workspace' together.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `10`    | Results per page.                                                                                                                                                                                           |
| `offset`     | string  |          | —       | Offset token.                                                                                                                                                                                               |
| `parent`     | string  |          | —       | Globally unique identifier for the project to filter allocations by. Required if 'assignee' and 'workspace' are not both provided.                                                                          |
| `assignee`   | string  |          | —       | Globally unique identifier for the user or placeholder the allocation is assigned to. Must be provided together with 'workspace' if 'parent' is not specified.                                              |
| `workspace`  | string  |          | —       | Globally unique identifier for the workspace. Must be provided together with 'assignee' if 'parent' is not specified.                                                                                       |
| `opt_fields` | array   |          | —       | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | `true`  | Provides 'pretty' output.                                                                                                                                                                                   |

***

### `Asana Get A Project`

Integration name: **ASANA\_GET\_A\_PROJECT**

Retrieves a specific Asana project by its `project_gid`, with an option to include additional fields for comprehensive details using `opt_fields`; this action does not return tasks within the project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                                                                                                                                                           |
| ------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`  | array   |          | `"archived"`         | Defines a comma-separated list of optional fields for a more detailed project representation in the response, beyond the default compact view.                                                        |
| `opt_pretty`  | boolean |          | —                    | Pretty-prints the JSON response for readability, useful for debugging.                                                                                                                                |
| `project_gid` | string  |     ✅    | `"1234567890123456"` | Globally unique identifier for the project. Must be a numeric string (e.g., '1234567890123456'). Use ASANA\_GET\_MULTIPLE\_PROJECTS or ASANA\_GET\_WORKSPACE\_PROJECTS to retrieve valid project IDs. |

***

### `Asana Get A Task`

Integration name: **ASANA\_GET\_A\_TASK**

Retrieves full details for a specified task GID accessible by the user; use `opt_fields` to customize returned data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                          |
| ------------ | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `task_gid`   | string  |     ✅    | `"1202179584851234"`    | Globally unique identifier (GID) of the task.                                                                                                                                                                                                                                                                                        |
| `opt_fields` | array   |          | `["assignee","due_on"]` | Array of field names to include in the response for more detailed data beyond the default compact representation. Only specific field paths listed in the OptFieldsEnm0 enum are supported (not arbitrary nested paths). Examples of valid fields: assignee, due\_on, name, notes, custom\_fields.name, followers.name, parent.name. |
| `opt_pretty` | boolean |          | —                       | If true, formats JSON response with indentation for readability; for debugging, as it increases response size/time.                                                                                                                                                                                                                  |

***

### `Asana Get Attachment`

Integration name: **ASANA\_GET\_ATTACHMENT**

Tool to get a single attachment by its globally unique identifier. Use when you need to retrieve details about a specific file attached to a task or project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                                                                |
| ---------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------ |
| `opt_fields`     | string |          | `"name,size,url"` | A comma-separated list of fields to include in the response. For example: "name,size,url". |
| `attachment_gid` | string |     ✅    | `"12345"`         | The globally unique identifier for the attachment.                                         |

***

### `Asana Get Audit Log Events`

Integration name: **ASANA\_GET\_AUDIT\_LOG\_EVENTS**

Tool to get audit log events for a workspace. Use when you need to retrieve a log of actions performed within a specific Asana workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `50`                     | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                           |
| `end_at`        | string  |          | `"2023-10-27T10:00:00Z"` | Filter to events created before this time (exclusive).                                                                                                                                                                                                     |
| `offset`        | string  |          | `"abcdef123456"`         | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. |
| `start_at`      | string  |          | `"2023-10-26T10:00:00Z"` | Filter to events created after this time (inclusive).                                                                                                                                                                                                      |
| `actor_gid`     | string  |          | `"12345"`                | Filter to events triggered by the actor with this ID.                                                                                                                                                                                                      |
| `actor_type`    | string  |          | `"user"`                 | Filter to events with an actor of this type. This only needs to be included if querying for actor types without an ID. If actor\_gid is included, this should be excluded.                                                                                 |
| `event_type`    | string  |          | `"task_created"`         | Filter to events of this type. Refer to the supported audit log events for a full list of values.                                                                                                                                                          |
| `resource_gid`  | string  |          | `"12345"`                | Filter to events with this resource ID.                                                                                                                                                                                                                    |
| `workspace_gid` | string  |     ✅    | `"12345"`                | Globally unique identifier for the workspace or organization.                                                                                                                                                                                              |

***

### `Asana Get A User Task List`

Integration name: **ASANA\_GET\_A\_USER\_TASK\_LIST**

Retrieves a specific user's task list from Asana by its `user_task_list_gid`, optionally returning extended details like name, owner, and workspace if specified in `opt_fields`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                    |
| -------------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `workspace`          | string  |     ✅    | `"1205766922013215"` | The GID of the workspace to filter the user task list.                                                                                                                                                                                                                                         |
| `opt_fields`         | array   |          | `"name"`             | A list of optional field names to include in the response. By default, the response is compact and excludes some properties. Use this parameter to retrieve additional details. For example, to include the owner and workspace, provide `["owner", "workspace"]` as the value for this field. |
| `opt_pretty`         | boolean |          | —                    | Set to true to receive the API response in a pretty-printed JSON format. This is useful for debugging but may increase response size and processing time.                                                                                                                                      |
| `user_task_list_gid` | string  |     ✅    | `"me"`               | The user GID (not task list GID) to retrieve the task list for. This endpoint retrieves a user's task list by user GID, not by task list GID. Use 'me' for the authenticated user or a specific user GID.                                                                                      |

***

### `Asana Get Current User`

Integration name: **ASANA\_GET\_CURRENT\_USER**

Retrieves the authenticated user's full record, including accessible workspaces, often used as an initial call to establish user context for subsequent operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Asana Get Custom Field`

Integration name: **ASANA\_GET\_CUSTOM\_FIELD**

Tool to get a single custom field by its globally unique identifier. Use when you need to retrieve the complete metadata and properties of a specific custom field in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                 | Description                                                                                                                                                                                                 |
| ------------------ | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`       | array   |          | `["name","description","enum_options"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`       | boolean |          | `true`                                  | Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable.                                                                  |
| `custom_field_gid` | string  |     ✅    | `"12345"`                               | Globally unique identifier for the custom field.                                                                                                                                                            |

***

### `Asana Get Custom Fields For Workspace`

Integration name: **ASANA\_GET\_CUSTOM\_FIELDS\_FOR\_WORKSPACE**

Tool to get all custom fields in a workspace. Use when you need to retrieve a list of custom fields associated with a specific workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                                                                                                             |
| --------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —                        | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                        |
| `offset`        | string  |          | —                        | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request.                                                            |
| `opt_fields`    | array   |          | `["name","description"]` | This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                    |
| `opt_pretty`    | boolean |          | —                        | Provides “pretty” output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `workspace_gid` | string  |     ✅    | `"12345"`                | Globally unique identifier for the workspace or organization.                                                                                                                                                                           |

***

### `Asana Get Custom Types`

Integration name: **ASANA\_GET\_CUSTOM\_TYPES**

Tool to get all custom types associated with a project. Use when you need to retrieve custom types that extend Asana objects for categorization purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                            | Description                                                                                                                                                                                                                                                |
| ------------ | ------- | :------: | -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                               | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                           |
| `offset`     | string  |          | `"eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9"`           | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. |
| `project`    | string  |     ✅    | `"1331"`                                           | Globally unique identifier for the project, which is used as a filter when retrieving all custom types.                                                                                                                                                    |
| `opt_fields` | array   |          | `["name","status_options","status_options.color"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                |
| `opt_pretty` | boolean |          | —                                                  | Provides "pretty" output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                    |

***

### `Asana Get Events`

Integration name: **ASANA\_GET\_EVENTS**

Retrieve events on a resource to monitor changes. Use when you need to track activity or changes related to a specific Asana resource like a task, project, or tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| -------------- | ------- | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sync`         | string  |          | `"de4774f6915eae04714ca93bb2f5ee81:0"`        | A sync token received from a previous events GET request. If provided, the API will return only events that have occurred since the sync token was created. If omitted, the API will return all events.                                                                                                                                                                                                                                                                                      |
| `opt_fields`   | array   |          | `["action","resource","parent","created_at"]` | Defines fields to return. Some requests return compact representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should be sure to return for the objects. The field names should be provided as paths, described below. The id of included objects will always be returned, regardless of the field options. |
| `opt_pretty`   | boolean |          | —                                             | Provides “pretty” output. Provides the response in a “pretty” format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                                                                                                                                                                         |
| `resource_gid` | string  |     ✅    | `"12345"`                                     | Globally unique identifier for the resource.                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Asana Get Favorites For User`

Integration name: **ASANA\_GET\_FAVORITES\_FOR\_USER**

Tool to get a user's favorites within a specified workspace. Returns favorites ordered as they appear in the user's Asana sidebar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                  |
| --------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`         | integer |          | `50`                                     | Results per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                                                                       |
| `offset`        | string  |          | `"eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9"` | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. Note: You can only pass in an offset that was returned to you via a previously paginated request. |
| `user_gid`      | string  |     ✅    | `"me"`                                   | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                                                                                                                             |
| `workspace`     | string  |     ✅    | `"1234"`                                 | The workspace in which to get favorites.                                                                                                                                                                                                                                                                                                                     |
| `opt_fields`    | array   |          | `["name","offset","path","uri"]`         | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                                  |
| `opt_pretty`    | boolean |          | —                                        | Provides 'pretty' output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                            |
| `resource_type` | string  |          | —                                        | The resource type of favorites to be returned.                                                                                                                                                                                                                                                                                                               |

***

### `Asana Get Goal`

Integration name: **ASANA\_GET\_GOAL**

Retrieve the full record for a single goal by its GID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                              |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `goal_gid`   | string |     ✅    | —       | Globally unique identifier for the goal.                                                 |
| `opt_fields` | string |          | —       | Comma-separated list of fields to include in the response. Example: "name,notes,due\_on" |

***

### `Asana Get Goal Relationships`

Integration name: **ASANA\_GET\_GOAL\_RELATIONSHIPS**

Tool to retrieve goal relationships. Use when you need to get the relationships associated with a specific goal in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example          | Description                                  |
| ------------ | ------- | :------: | ---------------- | -------------------------------------------- |
| `limit`      | integer |          | `20`             | The number of objects to return per page.    |
| `offset`     | string  |          | `"abcdefg"`      | Offset token for pagination.                 |
| `goal_gid`   | string  |     ✅    | `"12345"`        | The globally unique identifier for the goal. |
| `opt_fields` | array   |          | `["name","gid"]` | Defines fields to return.                    |
| `opt_pretty` | boolean |          | `true`           | Provides “pretty” output.                    |

***

### `Asana Get Goals`

Integration name: **ASANA\_GET\_GOALS**

Tool to retrieve multiple goals. Requires exactly one scope parameter (workspace, team, portfolio, or project) to be specified. Can be optionally filtered by time period or archived status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example     | Description                                                                                                                                                                                                                                                    |
| -------------------- | ------- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team`               | string  |          | `"14916"`   | Globally unique identifier for the team. Exactly one of workspace, team, portfolio, or project must be specified.                                                                                                                                              |
| `limit`              | integer |          | `20`        | The number of results to return.                                                                                                                                                                                                                               |
| `offset`             | string  |          | `"abcdefg"` | Offset token for pagination.                                                                                                                                                                                                                                   |
| `project`            | string  |          | `"12345"`   | Globally unique identifier for the project. Exactly one of workspace, team, portfolio, or project must be specified.                                                                                                                                           |
| `archived`           | boolean |          | `false`     | Filter to archived goals.                                                                                                                                                                                                                                      |
| `portfolio`          | string  |          | `"12345"`   | Globally unique identifier for the portfolio. Exactly one of workspace, team, portfolio, or project must be specified.                                                                                                                                         |
| `workspace`          | string  |          | `"12345"`   | Globally unique identifier for the workspace or organization. Exactly one of workspace, team, portfolio, or project must be specified.                                                                                                                         |
| `opt_fields`         | array   |          | —           | Defines fields to return. Some requests support structured objects supporting cascades of multiple objects separated by commas; "data.gid" will return the gid field of the data object or "data.subtask.gid" will return the gid field of the subtask object. |
| `time_period`        | string  |          | `"12345"`   | Globally unique identifier for the time period.                                                                                                                                                                                                                |
| `is_workspace_level` | boolean |          | `true`      | Filter to goals at the workspace level.                                                                                                                                                                                                                        |

***

### `Asana Get Job`

Integration name: **ASANA\_GET\_JOB**

Tool to retrieve a job by its globally unique identifier. Use when you need to check the status of asynchronous operations like task duplication, project instantiation, or exports.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                                                        | Description                                                                                                                                                                                                                                                                  |
| ------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `job_gid`    | string  |     ✅    | `"12345"`                                                                                                                                                                                                                                                                                                                                                                                                                                      | Globally unique identifier for the job.                                                                                                                                                                                                                                      |
| `opt_fields` | array   |          | `["new_graph_export","new_graph_export.completed_at","new_graph_export.created_at","new_graph_export.download_url","new_project","new_project.name","new_project_template","new_project_template.name","new_resource_export","new_resource_export.completed_at","new_resource_export.created_at","new_resource_export.download_url","new_task","new_task.created_by","new_task.name","new_task.resource_subtype","resource_subtype","status"]` | A comma-separated list of properties to include in the response. This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —                                                                                                                                                                                                                                                                                                                                                                                                                                              | If true, provides "pretty" (i.e., human-readable) JSON output. Formatting dates and times as human-readable strings, numbers as strings, and including newlines and indentation.                                                                                             |

***

### `Asana Get Membership`

Integration name: **ASANA\_GET\_MEMBERSHIP**

Tool to retrieve a single membership by its ID. Use this when you need to get details about a specific membership relationship between a user/team and a goal, project, portfolio, or custom field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                                                                                              |
| ---------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_pretty`     | boolean |          | —         | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `membership_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the membership.                                                                                           |

***

### `Asana Get Memberships`

Integration name: **ASANA\_GET\_MEMBERSHIPS**

Tool to retrieve memberships for goals, projects, portfolios, or custom fields. Use this to find out who has access to a specific Asana resource or what resources a specific user/team has access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                | Description                                                                                                              |
| ------------ | ------- | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `limit`      | integer |          | `20`                                                   | The number of results to return per page.                                                                                |
| `member`     | string  |          | `"67890"`                                              | GID of the member (user or team) to filter memberships.                                                                  |
| `offset`     | string  |          | `"eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9..."`            | Offset token for pagination.                                                                                             |
| `parent`     | string  |          | `"12345"`                                              | GID of the parent resource (e.g., project\_gid, goal\_gid, portfolio\_gid, or custom\_field\_gid) to filter memberships. |
| `opt_fields` | string  |          | `"parent,member,access_level,parent.name,member.name"` | Comma-separated list of fields to include in the response (e.g., "parent,member,access\_level,parent.name,member.name"). |

***

### `Asana Get Multiple Projects`

Integration name: **ASANA\_GET\_MULTIPLE\_PROJECTS**

Returns a list of projects filtered by workspace or team (one required), with optional archived status filter, supporting pagination for large datasets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team`       | string  |          | `"1205029116228052"`       | GID of the team to filter projects by. Either workspace OR team is REQUIRED. GIDs are numeric strings (digits only, e.g., '1205029116228052').                                                                                                                                                                 |
| `limit`      | integer |          | `"20"`                     | Number of projects to return per page (1-100).                                                                                                                                                                                                                                                                 |
| `offset`     | string  |          | `"eyJ...example.token..."` | Pagination offset token (JWT format) from a previous response's `next_page.offset` field. IMPORTANT: Use the COMPLETE token exactly as returned - tokens are long strings (\~150-200 characters) with three base64 sections separated by dots (header.payload.signature). Do NOT truncate or modify the token. |
| `archived`   | boolean |          | `"false"`                  | Filter projects by archived status: `True` for archived only, `False` for unarchived only.                                                                                                                                                                                                                     |
| `workspace`  | string  |          | `"1205029116228052"`       | GID of the workspace or organization to filter projects by. Either workspace OR team is REQUIRED. GIDs are numeric strings (digits only, e.g., '1205029116228052'). To find your workspace GID, call GET /workspaces.                                                                                          |
| `opt_fields` | array   |          | `"name,archived,color"`    | Array of optional properties to include for richer project details, as the default response is compact. This is an array, not a comma-separated string. See `OptFieldsEnm0` for available fields.                                                                                                              |
| `opt_pretty` | boolean |          | `"false"`                  | Return JSON in a 'pretty' format (indented, line breaks). For debugging only due to increased response size/time.                                                                                                                                                                                              |

***

### `Asana Get Multiple Tasks`

Integration name: **ASANA\_GET\_MULTIPLE\_TASKS**

Retrieves a list of tasks, allowing filtering by assignee (requires `workspace`), project, section, `completed_since`, and `modified_since`; `workspace` also requires `assignee`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                              |
| ----------------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tag`             | string  |          | `"1234567890"`                          | Tag GID to filter tasks. Mutually exclusive with project, section, user\_task\_list, or assignee+workspace.                                                                                                                                                              |
| `limit`           | integer |          | `20`                                    | Number of task objects to return per page (1-100). Required when using assignee+workspace; defaults to 50 if omitted for that filter combination.                                                                                                                        |
| `offset`          | string  |          | `"eyJ...example.token..."`              | Offset token for pagination, from next\_page in a previous response. WARNING: Tokens expire after a short time. Use fresh tokens from recent API responses; do not cache for extended periods. If a token expires, restart pagination from the first page (omit offset). |
| `project`         | string  |          | `"1234567890"`                          | Project GID to filter tasks. Mutually exclusive with section, tag, user\_task\_list, or assignee+workspace.                                                                                                                                                              |
| `section`         | string  |          | `"1234567890"`                          | Section GID to filter tasks. Mutually exclusive with project, tag, user\_task\_list, or assignee+workspace.                                                                                                                                                              |
| `assignee`        | string  |          | `"1234567890"`                          | User identifier: 'me' for current user or a numeric GID. Must be used with `workspace`. When using assignee+workspace, always set a `limit` (defaults to 50 if omitted).                                                                                                 |
| `workspace`       | string  |          | `"1234567890"`                          | Workspace GID. Must be used with `assignee`. Mutually exclusive with project, section, tag, or user\_task\_list.                                                                                                                                                         |
| `opt_fields`      | array   |          | `["assignee","due_on","projects.name"]` | Optional fields to include. Use 'projects' (plural) for project data. See OptFieldsEnm0 for valid values.                                                                                                                                                                |
| `opt_pretty`      | boolean |          | `true`                                  | Format JSON output with indentation for debugging (may increase response time/size).                                                                                                                                                                                     |
| `modified_since`  | string  |          | `"2023-01-15T12:00:00.000Z"`            | ISO 8601 date-time. Returns tasks modified since this time (includes property/association changes).                                                                                                                                                                      |
| `user_task_list`  | string  |          | `"1234567890"`                          | User task list GID to filter tasks. Mutually exclusive with project, section, tag, or assignee+workspace.                                                                                                                                                                |
| `completed_since` | string  |          | `"2023-01-01T00:00:00.000Z"`            | Filter for tasks incomplete or completed since this ISO 8601 date-time or 'now'.                                                                                                                                                                                         |

***

### `Asana Get Multiple Users`

Integration name: **ASANA\_GET\_MULTIPLE\_USERS**

Returns a list of users in an Asana workspace or organization, optionally filtered by workspace or team GID, with support for pagination and specifying optional fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                    | Description                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team`       | string  |          | `"112233445566778"`                                        | The GID of the Asana team. Required when the authenticated user belongs to multiple workspaces (at least one of 'workspace' or 'team' must be provided). Filters results to users in this team.                           |
| `limit`      | integer |          | —                                                          | The maximum number of user objects to return per page (1-100).                                                                                                                                                            |
| `offset`     | string  |          | —                                                          | Opaque token for pagination to retrieve the subsequent page of results.                                                                                                                                                   |
| `workspace`  | string  |          | `"123456789012345"`                                        | The GID of the Asana workspace or organization. Required when the authenticated user belongs to multiple workspaces (at least one of 'workspace' or 'team' must be provided). Filters results to users in this workspace. |
| `opt_fields` | array   |          | `["email","name","photo.image_128x128","workspaces.name"]` | A list of optional field names to include in the response for each user. Available fields include 'email', 'name', 'photo' (and its specific sizes like 'photo.image\_1024x1024'), 'workspaces', 'uri', and 'offset'.     |
| `opt_pretty` | boolean |          | —                                                          | Return the response in a human-readable JSON format.                                                                                                                                                                      |

***

### `Asana Get Multiple Workspaces`

Integration name: **ASANA\_GET\_MULTIPLE\_WORKSPACES**

Retrieves all workspaces accessible by the authenticated user, returning an empty list if the user has no accessible workspaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                               | Description                                                                                                                                                                                                                                     |
| ------------ | ------- | :------: | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                                  | The maximum number of workspace objects to return per page. Must be an integer between 1 and 100, inclusive.                                                                                                                                    |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                   | An opaque token used for pagination, obtained from the 'next\_page' object in a previous response. If not provided, the first page of results is returned. Note: Pass only an offset token from a previous paginated request for this endpoint. |
| `opt_fields` | array   |          | `["email_domains","is_organization"]` | A comma-separated list of optional properties to include in the response. By default, only a compact representation of the resource is returned. Available options: 'email\_domains', 'is\_organization', 'name', 'offset', 'path', 'uri'.      |
| `opt_pretty` | boolean |          | —                                     | Set to true to receive the response in a human-readable JSON format with proper line breaking and indentation. Useful for debugging, but may increase response time and size.                                                                   |

***

### `Asana Get Portfolio`

Integration name: **ASANA\_GET\_PORTFOLIO**

Retrieve the full record for a single portfolio by its GID. Use this when you need to get detailed information about a specific portfolio.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                      |
| --------------- | ------- | :------: | ------- | ---------------------------------------------------------------- |
| `limit`         | integer |          | —       | Results per page. Max 100.                                       |
| `offset`        | string  |          | —       | Offset token for pagination.                                     |
| `opt_fields`    | array   |          | —       | Defines fields to return. Example: \["name", "color", "due\_on"] |
| `opt_pretty`    | boolean |          | —       | Provides “pretty” output.                                        |
| `portfolio_gid` | string  |     ✅    | —       | Globally unique identifier for the portfolio.                    |

***

### `Asana Get Portfolio Items`

Integration name: **ASANA\_GET\_PORTFOLIO\_ITEMS**

Retrieve items in a portfolio. Use this to get a list of projects or other portfolios contained within a specific portfolio.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                     | Description                                                                                                                                                            |
| --------------- | ------- | :------: | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `20`                        | Number of results to return per page.                                                                                                                                  |
| `offset`        | string  |          | `"eyJ0eXAiOJiV...`"         | Offset token to request next page.                                                                                                                                     |
| `opt_fields`    | array   |          | `["name","owner","due_on"]` | Fields to include in response. Common fields: archived, color, created\_at, current\_status\_update, due\_on, members, name, notes, owner, start\_on, team, workspace. |
| `portfolio_gid` | string  |     ✅    | `"12345"`                   | Globally unique identifier for the portfolio.                                                                                                                          |

***

### `Asana Get Portfolio Memberships`

Integration name: **ASANA\_GET\_PORTFOLIO\_MEMBERSHIPS**

Tool to retrieve multiple portfolio memberships. Use this tool when you need to list memberships for a specific portfolio, a user within a portfolio, or a user across all portfolios in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user`       | string  |          | `"me"`                                       | A string identifying a user. This can either be the string "me", an email, or the GID of a user.                                                                                                                                                                                                                                                                                                                               |
| `limit`      | integer |          | —                                            | Results per page. The number of objects to return per page. Must be between 1 and 100, inclusive.                                                                                                                                                                                                                                                                                                                              |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                          | Offset token. An offset to paginate from. This can be retrieved from the ‘next\_page’ field in the previous response.                                                                                                                                                                                                                                                                                                          |
| `portfolio`  | string  |          | `"12345"`                                    | The GID of the portfolio to filter memberships on.                                                                                                                                                                                                                                                                                                                                                                             |
| `workspace`  | string  |          | `"67890"`                                    | The GID of the workspace to filter memberships on.                                                                                                                                                                                                                                                                                                                                                                             |
| `opt_fields` | array   |          | `["user.name","portfolio.name","workspace"]` | Defines fields to return. Some requests return compact representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should be sure to return for the objects. The id of included objects will always be returned, regardless of the field options. |

***

### `Asana Get Portfolios`

Integration name: **ASANA\_GET\_PORTFOLIOS**

Retrieve multiple portfolios. Use when you need to list portfolios within a specific workspace, optionally filtered by owner.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                            |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —       | The number of objects to return per page. Must be between 1 and 100.                                                                   |
| `owner`      | string  |     ✅    | —       | The user GID who owns the portfolio. Use 'me' to refer to the current authenticated user. This parameter is required by the Asana API. |
| `offset`     | string  |          | —       | An offset token for pagination.                                                                                                        |
| `workspace`  | string  |     ✅    | —       | The workspace or organization GID to filter portfolios on. Must be a non-empty numeric GID (e.g., '1205766922013215').                 |
| `opt_fields` | array   |          | —       | Fields to include in the response. For example: \['name', 'color', 'owner'].                                                           |

***

### `Asana Get Project Brief`

Integration name: **ASANA\_GET\_PROJECT\_BRIEF**

Tool to retrieve a project brief by its GID. Use when you need to get the detailed explanation (what and why) of a project. Note: Requires the project\_brief\_gid (not the project\_gid). First call 'Get a project' with opt\_fields=\['project\_brief'] to obtain the project\_brief\_gid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                               |
| ------------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`        | array   |          | —                    | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. Available options: text                                                       |
| `opt_pretty`        | boolean |          | —                    | Provides 'pretty' output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                   |
| `project_brief_gid` | string  |     ✅    | `"1212598676699299"` | Globally unique identifier for the project brief. This is NOT the project GID. Must be a numeric string. To obtain a project\_brief\_gid, first call 'Get a project' with opt\_fields=\['project\_brief'] to retrieve the project's brief object, which contains the project\_brief\_gid. |

***

### `Asana Get Project Membership`

Integration name: **ASANA\_GET\_PROJECT\_MEMBERSHIP**

Tool to get a project membership by ID. Use when you need to retrieve details of a specific project membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                                                                                                     | Description                                                                                                                                                                                                                             |
| ------------------------ | ------- | :------: | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`             | array   |          | `["access_level","member","member.name","parent","parent.name","project","project.name","user","user.name","write_access"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                             |
| `opt_pretty`             | boolean |          | —                                                                                                                           | Provides "pretty" output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_membership_gid` | string  |     ✅    | `"1331"`                                                                                                                    | Globally unique identifier for the project membership.                                                                                                                                                                                  |

***

### `Asana Get Project Memberships`

Integration name: **ASANA\_GET\_PROJECT\_MEMBERSHIPS**

Tool to get memberships from a specific project. Use when you need to see who has access to a project and their permission levels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                | Description                                                                                                                                                                                                 |
| ------------- | ------- | :------: | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`        | string  |          | `"me"`                                                                                 | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                            |
| `limit`       | integer |          | `50`                                                                                   | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                            |
| `offset`      | string  |          | `"eyJ0eXAiOJiV...`"                                                                    | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request.                                |
| `opt_fields`  | array   |          | `["access_level","member","member.name","offset","parent","parent.name","path","uri"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`  | boolean |          | —                                                                                      | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                    |
| `project_gid` | string  |     ✅    | `"1331"`                                                                               | Globally unique identifier for the project.                                                                                                                                                                 |

***

### `Asana Get Projects For Task`

Integration name: **ASANA\_GET\_PROJECTS\_FOR\_TASK**

Tool to get all projects a task is in. Use when you need to retrieve project associations for a specific task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                               |
| `offset`     | string  |          | `"eyJ...example.token..."`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. *Note: You can only pass in an offset that was returned to you via a previously paginated request.* |
| `task_gid`   | string  |     ✅    | `"321654"`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | The task to operate on.                                                                                                                                                                                                                                                                                                                                        |
| `opt_fields` | array   |          | `["archived","color","completed","completed_at","completed_by","completed_by.name","created_at","created_from_template","created_from_template.name","current_status","current_status.author","current_status.author.name","current_status.color","current_status.created_at","current_status.created_by","current_status.created_by.name","current_status.html_text","current_status.modified_at","current_status.text","current_status.title","current_status_update","current_status_update.resource_subtype","current_status_update.title","custom_field_settings","custom_field_settings.custom_field","custom_field_settings.custom_field.asana_created_field","custom_field_settings.custom_field.created_by","custom_field_settings.custom_field.created_by.name","custom_field_settings.custom_field.currency_code","custom_field_settings.custom_field.custom_label","custom_field_settings.custom_field.custom_label_position","custom_field_settings.custom_field.date_value","custom_field_settings.custom_field.date_value.date","custom_field_settings.custom_field.date_value.date_time","custom_field_settings.custom_field.default_access_level","custom_field_settings.custom_field.description","custom_field_settings.custom_field.display_value","custom_field_settings.custom_field.enabled","custom_field_settings.custom_field.enum_options","custom_field_settings.custom_field.enum_options.color","custom_field_settings.custom_field.enum_options.enabled","custom_field_settings.custom_field.enum_options.name","custom_field_settings.custom_field.enum_value","custom_field_settings.custom_field.enum_value.color","custom_field_settings.custom_field.enum_value.enabled","custom_field_settings.custom_field.enum_value.name","custom_field_settings.custom_field.format","custom_field_settings.custom_field.has_notifications_enabled","custom_field_settings.custom_field.id_prefix","custom_field_settings.custom_field.input_restrictions","custom_field_settings.custom_field.is_formula_field","custom_field_settings.custom_field.is_global_to_workspace","custom_field_settings.custom_field.is_value_read_only","custom_field_settings.custom_field.multi_enum_values","custom_field_settings.custom_field.multi_enum_values.color","custom_field_settings.custom_field.multi_enum_values.enabled","custom_field_settings.custom_field.multi_enum_values.name","custom_field_settings.custom_field.name","custom_field_settings.custom_field.number_value","custom_field_settings.custom_field.people_value","custom_field_settings.custom_field.people_value.name","custom_field_settings.custom_field.precision","custom_field_settings.custom_field.privacy_setting","custom_field_settings.custom_field.reference_value","custom_field_settings.custom_field.reference_value.name","custom_field_settings.custom_field.representation_type","custom_field_settings.custom_field.resource_subtype","custom_field_settings.custom_field.text_value","custom_field_settings.custom_field.type","custom_field_settings.is_important","custom_field_settings.parent","custom_field_settings.parent.name","custom_field_settings.project","custom_field_settings.project.name","custom_fields","custom_fields.date_value","custom_fields.date_value.date","custom_fields.date_value.date_time","custom_fields.display_value","custom_fields.enabled","custom_fields.enum_options","custom_fields.enum_options.color","custom_fields.enum_options.enabled","custom_fields.enum_options.name","custom_fields.enum_value","custom_fields.enum_value.color","custom_fields.enum_value.enabled","custom_fields.enum_value.name","custom_fields.id_prefix","custom_fields.input_restrictions","custom_fields.is_formula_field","custom_fields.multi_enum_values","custom_fields.multi_enum_values.color","custom_fields.multi_enum_values.enabled","custom_fields.multi_enum_values.name","custom_fields.name","custom_fields.number_value","custom_fields.representation_type","custom_fields.text_value","custom_fields.type","default_access_level","default_view","due_date","due_on","followers","followers.name","html_notes","icon","members","members.name","minimum_access_level_for_customization","minimum_access_level_for_sharing","modified_at","name","notes","offset","owner","path","permalink_url","privacy_setting","project_brief","public","start_on","team","team.name","uri","workspace","workspace.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                                    |
| `opt_pretty` | boolean |          | —                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Provides 'pretty' output. Provides the response in a 'pretty' format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                            |

***

### `Asana Get Projects For Team`

Integration name: **ASANA\_GET\_PROJECTS\_FOR\_TEAM**

Tool to get a list of projects for a specific team in Asana. Use when you need to retrieve project details associated with a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                          | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                             | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                            |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"              | Offset token. An offset to the next page returned by the API.                                                                                                                                               |
| `archived`   | boolean |          | `false`                          | Only return projects whose `archived` field takes on the value of this parameter.                                                                                                                           |
| `team_gid`   | string  |     ✅    | `"12345"`                        | Globally unique identifier for the team. Must be a numeric string (digits only).                                                                                                                            |
| `opt_fields` | array   |          | `["name","gid","resource_type"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | `true`                           | Provides “pretty” output.                                                                                                                                                                                   |

***

### `Asana Get Project Status`

Integration name: **ASANA\_GET\_PROJECT\_STATUS**

Tool to retrieve the full record for a single project status by its GID. Use when you need to get the details of a specific project status update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                  | Description                                        |
| -------------------- | ------- | :------: | ------------------------ | -------------------------------------------------- |
| `opt_fields`         | array   |          | `["gid","title","text"]` | Fields to include in the response.                 |
| `opt_pretty`         | boolean |          | —                        | Provides “pretty” output.                          |
| `project_status_gid` | string  |     ✅    | `"12345"`                | Globally unique identifier for the project status. |

***

### `Asana Get Project Status Updates`

Integration name: **ASANA\_GET\_PROJECT\_STATUS\_UPDATES**

Tool to get status updates for a specific project. Use when you need to retrieve the latest or historical status reports associated with an Asana project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`       | integer |          | `20`                     | Results per page. The number of items to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                                                                                                                                                               |
| `offset`      | string  |          | `"eyJ0eXAiOJiV...`"      | Offset token. An offset to paginate from. This can be retrieved from the 'next\_page' field in a previous response.                                                                                                                                                                                                                                                                                                                                                                          |
| `opt_fields`  | array   |          | `["name","gid","notes"]` | Defines fields to return. Some requests return compact representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should be sure to return for the objects. The field names should be provided as paths, described below. The id of included objects will always be returned, regardless of the field options. |
| `opt_pretty`  | boolean |          | —                        | Provides “pretty” output. Adds indentation and newlines to the response. This can be useful when debugging but increases the response size.                                                                                                                                                                                                                                                                                                                                                  |
| `project_gid` | string  |     ✅    | `"12345"`                | Globally unique identifier for the project.                                                                                                                                                                                                                                                                                                                                                                                                                                                  |

***

### `Asana Get Project Templates`

Integration name: **ASANA\_GET\_PROJECT\_TEMPLATES**

Tool to retrieve multiple project templates. Use when you need to list available project templates in a workspace or team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                          | Description                                                                                                                                                                                                                                                                                                                     |
| --------------- | ------- | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `20`                             | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                |
| `offset`        | string  |          | `"eyJ0eXAiOJiV...`"              | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request.                                                                                                                                                    |
| `team_gid`      | string  |          | `"14916"`                        | Globally unique identifier for the team. Recommended when working with organizations. REQUIRED: At least one of workspace\_gid or team\_gid must be provided. Accepts both 'team\_gid' and 'team' as parameter names.                                                                                                           |
| `opt_fields`    | array   |          | `["name","description","owner"]` | A comma-separated list of fields to include in the response. For example: name,description,owner,team,public                                                                                                                                                                                                                    |
| `workspace_gid` | string  |          | `"12345"`                        | Globally unique identifier for a regular workspace (not an organization). Only accepts workspace GIDs - organization GIDs will be rejected. For organizations, use team\_gid instead. REQUIRED: At least one of workspace\_gid or team\_gid must be provided. Accepts both 'workspace\_gid' and 'workspace' as parameter names. |

***

### `Asana Get Project Templates For Team`

Integration name: **ASANA\_GET\_PROJECT\_TEMPLATES\_FOR\_TEAM**

Tool to get a team's project templates in Asana. Use when you need to retrieve project templates associated with a specific team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                  | Description                                                                                                                                                                                                                                                                                                                                                  |
| ------------ | ------- | :------: | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`      | integer |          | `50`                                                     | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                             |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                      | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. Note: You can only pass in an offset that was returned to you via a previously paginated request. |
| `team_gid`   | string  |     ✅    | `"159874"`                                               | Globally unique identifier for the team.                                                                                                                                                                                                                                                                                                                     |
| `opt_fields` | array   |          | `["name","description","owner","team","public","color"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                                  |
| `opt_pretty` | boolean |          | `true`                                                   | Provides "pretty" output. Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                          |

***

### `Asana Get Reactions On Object`

Integration name: **ASANA\_GET\_REACTIONS\_ON\_OBJECT**

Tool to get reactions with a specific emoji base character on an object. Use when you need to retrieve user reactions (emoji responses) on a status update or story.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                 | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                  |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"  | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.                        |
| `target`     | string  |     ✅    | `"1212887201183176"` | Globally unique identifier for object to fetch reactions from. Must be a GID for a status update or story.                                                                                                                                                                        |
| `emoji_base` | string  |     ✅    | `"👍"`               | Only return reactions with this emoji base character.                                                                                                                                                                                                                             |
| `opt_pretty` | boolean |          | —                    | Provides 'pretty' output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Get Section`

Integration name: **ASANA\_GET\_SECTION**

Retrieve the full record for a single section by its GID. Use this when you need to get details about a specific section within a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                                                                                                 |
| ------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`  | array   |          | —       | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`  | boolean |          | —       | Provides “pretty” output.                                                                                                                                                                                   |
| `section_gid` | string  |     ✅    | —       | The globally unique identifier for the section.                                                                                                                                                             |

***

### `Asana Get Sections In Project`

Integration name: **ASANA\_GET\_SECTIONS\_IN\_PROJECT**

Returns compact records for all sections (used to group tasks) in a specified project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                    | Description                                                |
| ------------- | ------- | :------: | -------------------------- | ---------------------------------------------------------- |
| `limit`       | integer |          | `50`                       | Number of sections to return per page (1-100).             |
| `offset`      | string  |          | `"eyJ...example.token..."` | Token for pagination to retrieve the next page of results. |
| `project_gid` | string  |     ✅    | `"1210473471812630"`       | Globally unique identifier (GID) of the project.           |

***

### `Asana Get Status`

Integration name: **ASANA\_GET\_STATUS**

Tool to retrieve the full record for a single status update by its GID. Use when you need to get the details of a specific status update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                                                                                                                 | Description                                                                                                                                                                                                 |
| ------------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`        | array   |          | `["author","author.name","created_at","created_by","created_by.name","html_text","modified_at","parent","parent.name","resource_subtype","status_type","text","title"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`        | boolean |          | —                                                                                                                                                                       | Provides "pretty" output. Provides the response in a pretty format with proper line breaking and indentation.                                                                                               |
| `status_update_gid` | string  |     ✅    | `"321654"`                                                                                                                                                              | Globally unique identifier for the status update.                                                                                                                                                           |

***

### `Asana Get Status Updates`

Integration name: **ASANA\_GET\_STATUS\_UPDATES**

Retrieve status updates from an object. Use when you need to get the latest or historical status updates for a specific project, portfolio, or goal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                         | Description                                                                                                      |
| ------------ | ------- | :------: | ------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                            | The maximum number of items to return per page. The value must be between 1 and 100.                             |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"             | An offset token returned from a previous query that had a `next_page` property. This is used for pagination.     |
| `parent`     | string  |     ✅    | `"12345"`                       | Globally unique identifier (GID) of the object (project, portfolio, or goal) from which to fetch status updates. |
| `opt_fields` | array   |          | `["gid","title","status_type"]` | A comma-separated list of fields to include in the response. This allows customization of the returned data.     |

***

### `Asana Get Stories For Task`

Integration name: **ASANA\_GET\_STORIES\_FOR\_TASK**

Tool to get stories (comments, status updates, etc.) for a task. Use when you need to retrieve the history or discussion associated with a specific task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                 | Description                                                               |
| ------------ | ------- | :------: | ----------------------- | ------------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                    | Results per page. The number of results per page (between 1 and 100).     |
| `offset`     | string  |          | `"abcdefg"`             | Offset token for pagination.                                              |
| `task_gid`   | string  |     ✅    | `"12345"`               | The GID of the task to get stories from.                                  |
| `opt_fields` | array   |          | `["created_by","text"]` | A comma-separated list of optional properties to include in the response. |

***

### `Asana Get Story`

Integration name: **ASANA\_GET\_STORY**

Tool to retrieve a story. Use when you need to get the complete record for a single story.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                              | Description                                                  |
| ------------ | ------- | :------: | ------------------------------------ | ------------------------------------------------------------ |
| `story_gid`  | string  |     ✅    | `"12345"`                            | Globally unique identifier for the story.                    |
| `opt_fields` | array   |          | `["created_at","created_by","text"]` | A comma-separated list of fields to include in the response. |
| `opt_pretty` | boolean |          | —                                    | Provides "pretty" output.                                    |

***

### `Asana Get Tag`

Integration name: **ASANA\_GET\_TAG**

Tool to get a single tag by its globally unique identifier. Use when you need to retrieve detailed information about a specific tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                    | Description                                                      |
| ------------ | ------- | :------: | -------------------------- | ---------------------------------------------------------------- |
| `tag_gid`    | string  |     ✅    | `"12345"`                  | Globally unique identifier for the tag.                          |
| `opt_fields` | array   |          | `["name","notes","color"]` | A comma-separated list of properties to include in the response. |
| `opt_pretty` | boolean |          | —                          | If true, provides "pretty" (i.e., human-readable) JSON output.   |

***

### `Asana Get Tags`

Integration name: **ASANA\_GET\_TAGS**

Get multiple tags in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                  | Description                                                             |
| ------------ | ------- | :------: | ------------------------------------------------------------------------ | ----------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                                                                     | Results per page.                                                       |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                                      | Offset token for pagination.                                            |
| `workspace`  | string  |          | `"12345"`                                                                | The GID of the workspace to filter tags on.                             |
| `opt_fields` | array   |          | `["color","created_at","followers","notes","permalink_url","workspace"]` | Comma-separated list of optional properties to include in the response. |

***

### `Asana Get Tags For Task`

Integration name: **ASANA\_GET\_TAGS\_FOR\_TASK**

Tool to get all tags associated with a specific task. Use when you need to retrieve tags for categorization, filtering, or understanding task organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                                                 | Description                                                                  |
| ------------ | ------- | :------: | --------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                                                                                                                    | Results per page. The value must be between 1 and 100.                       |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                                                                                                     | Offset token for pagination. An offset to the next page returned by the API. |
| `task_gid`   | string  |     ✅    | `"321654"`                                                                                                                              | Globally unique identifier for the task.                                     |
| `opt_fields` | array   |          | `["color","created_at","followers","followers.name","name","notes","offset","path","permalink_url","uri","workspace","workspace.name"]` | A comma-separated list of properties to include in the response.             |
| `opt_pretty` | boolean |          | —                                                                                                                                       | If true, provides "pretty" (i.e., human-readable) JSON output.               |

***

### `Asana Get Tags For Workspace`

Integration name: **ASANA\_GET\_TAGS\_FOR\_WORKSPACE**

Tool to get all tags in a specific workspace. Use when you need to retrieve tags for categorizing tasks within a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                                                                           | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `50`                                                                                                              | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                            |
| `offset`        | string  |          | `"eyJ0eXAiOJiV...`"                                                                                               | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request.                                |
| `opt_fields`    | array   |          | `["color","created_at","followers","followers.name","name","notes","permalink_url","workspace","workspace.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —                                                                                                                 | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable.                                          |
| `workspace_gid` | string  |     ✅    | `"12345"`                                                                                                         | Globally unique identifier for the workspace or organization.                                                                                                                                               |

***

### `Asana Get Task Attachments`

Integration name: **ASANA\_GET\_TASK\_ATTACHMENTS**

Tool to get the list of attachments for a given task, project, or project\_brief. Use when you need to retrieve files attached to a specific Asana object.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                 | Description                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `20`                                    | The number of results per page.                                                                                                                                                                                                           |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                     | An offset token, used for pagination to retrieve the next page of results. If not provided or empty, the first page of results is returned.                                                                                               |
| `opt_fields` | array   |          | `["name","download_url","parent.name"]` | A comma-separated list of fields to include in the response for each attachment. Possible fields include: `created_at`, `download_url`, `host`, `name`, `parent`, `parent.name`, `permanent_url`, `resource_subtype`, `size`, `view_url`. |
| `parent_gid` | string  |     ✅    | `"1205766923323569"`                    | The GID of the task, project, or project\_brief to fetch attachments from.                                                                                                                                                                |

***

### `Asana Get Task Counts For Project`

Integration name: **ASANA\_GET\_TASK\_COUNTS\_FOR\_PROJECT**

Tool to get task count statistics for a project. Use when you need to retrieve the number of tasks, completed tasks, incomplete tasks, and milestone counts for a specific Asana project. Note that all fields are excluded by default - you must specify them in opt\_fields to get any data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                                                              | Description                                                                                                                                                                                                                                                                                                                              |
| ------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`  | array   |          | `["num_tasks","num_completed_tasks","num_incomplete_tasks","num_milestones","num_completed_milestones","num_incomplete_milestones"]` | Comma-separated list of fields to include in the response. Available fields: num\_tasks, num\_completed\_tasks, num\_incomplete\_tasks, num\_milestones, num\_completed\_milestones, num\_incomplete\_milestones. All fields are excluded by default, so you must opt in using this parameter to get any information from this endpoint. |
| `opt_pretty`  | boolean |          | —                                                                                                                                    | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                       |
| `project_gid` | string  |     ✅    | `"1331"`                                                                                                                             | Globally unique identifier for the project.                                                                                                                                                                                                                                                                                              |

***

### `Asana Get Tasks For Tag`

Integration name: **ASANA\_GET\_TASKS\_FOR\_TAG**

Tool to retrieve tasks associated with a specific Asana tag by tag GID. Use when you need to list all tasks that have been tagged with a particular label.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                                                                                                                  |
| ------------ | ------- | :------: | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`      | integer |          | `50`                            | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                             |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"             | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. Note: You can only pass in an offset that was returned to you via a previously paginated request. |
| `tag_gid`    | string  |     ✅    | `"1208891266930939"`            | Globally unique identifier for the tag.                                                                                                                                                                                                                                                                                                                      |
| `opt_fields` | array   |          | `["name","completed","due_on"]` | This endpoint returns a compact representation of a resource by default. To include optional properties, set this query parameter to a comma-separated list of the properties you wish to include (e.g., 'name', 'completed', 'due\_on', 'assignee').                                                                                                        |
| `opt_pretty` | boolean |          | —                               | Provides 'pretty' output. Provides the response in a 'pretty' format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                          |

***

### `Asana Get Tasks For User Task List`

Integration name: **ASANA\_GET\_TASKS\_FOR\_USER\_TASK\_LIST**

Tool to retrieve tasks from a user task list by user task list GID. Use when you need to list tasks assigned to a specific user's task list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                  |
| -------------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`              | integer |          | `50`                           | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                             |
| `offset`             | string  |          | `"eyJ0eXAiOJiV...`"            | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. Note: You can only pass in an offset that was returned to you via a previously paginated request. |
| `opt_fields`         | array   |          | `["name","assignee","due_on"]` | This endpoint returns a compact representation of a resource. To include additional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                                                    |
| `opt_pretty`         | boolean |          | —                              | Provides 'pretty' output. Provides the response in a 'pretty' format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                          |
| `completed_since`    | string  |          | `"2012-02-22T02:06:58.158Z"`   | Only return tasks that are either incomplete or that have been completed since this time. Accepts a date-time string (ISO 8601 format) or the keyword 'now'.                                                                                                                                                                                                 |
| `user_task_list_gid` | string  |     ✅    | `"1210124537178663"`           | Globally unique identifier (GID) of the user task list.                                                                                                                                                                                                                                                                                                      |

***

### `Asana Get Tasks From A Project`

Integration name: **ASANA\_GET\_TASKS\_FROM\_A\_PROJECT**

Retrieves tasks from a specified Asana project, allowing filtering by completion status and selection of optional fields for detailed responses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                      | Description                                                                                                                                                                                                                          |
| ----------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`           | integer |          | —                            | Maximum number of tasks to return per page. Defaults to 100 to enable pagination and avoid API errors on large projects.                                                                                                             |
| `offset`          | string  |          | —                            | Opaque pagination token from a previous response's 'next\_page.offset' field. Must be passed exactly as received without any modification or truncation. If omitted or empty, returns the first page. Tokens expire after some time. |
| `opt_fields`      | array   |          | `"assignee"`                 | Optional fields for a detailed task representation (e.g., 'assignee', 'due\_on'), as tasks are compact by default. Refer to Asana API docs for all field names.                                                                      |
| `opt_pretty`      | boolean |          | —                            | If true, returns human-readable JSON; useful for debugging but increases response size.                                                                                                                                              |
| `project_gid`     | string  |     ✅    | `"1202702190178032"`         | Globally unique identifier (GID) of the project.                                                                                                                                                                                     |
| `completed_since` | string  |          | `"2023-10-26T10:00:00.000Z"` | Filters tasks: returns incomplete tasks or those completed after the specified ISO 8601 date-time (e.g., '2023-10-26T10:00:00Z') or 'now'. If omitted or empty, no completion filter is applied.                                     |

***

### `Asana Get Tasks From Section`

Integration name: **ASANA\_GET\_TASKS\_FROM\_SECTION**

Tool to retrieve tasks that belong to a specific Asana section (column/header) by section GID. Use when you need to list tasks within a particular section, such as for agenda or carryover workflows. Board view only feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                        | Description                                                                                                                                                                                                                                      |
| ----------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`           | integer |          | `50`                           | Maximum number of tasks to return per page (1-100).                                                                                                                                                                                              |
| `offset`          | string  |          | `"eyJ0eXAiOJiV...`"            | Opaque pagination token from a previous response's 'next\_page.offset' field. Must be passed exactly as received without any modification or truncation. If omitted or empty, returns the first page. Tokens expire after some time.             |
| `opt_fields`      | array   |          | `["assignee","due_on","name"]` | Optional fields for a detailed task representation (e.g., 'assignee', 'due\_on', 'completed\_at'). By default, tasks are returned in compact format. Use this to request specific fields. Refer to Asana API docs for all available field names. |
| `opt_pretty`      | boolean |          | —                              | If true, returns human-readable JSON; useful for debugging but increases response size.                                                                                                                                                          |
| `section_gid`     | string  |     ✅    | `"1210473471812630"`           | Globally unique identifier (GID) of the section.                                                                                                                                                                                                 |
| `completed_since` | string  |          | `"2023-10-26T10:00:00.000Z"`   | Filters tasks: returns incomplete tasks or those completed after the specified ISO 8601 date-time (e.g., '2023-10-26T10:00:00Z') or 'now'. Omit to retrieve all tasks in the section.                                                            |

***

### `Asana Get Task Subtasks`

Integration name: **ASANA\_GET\_TASK\_SUBTASKS**

Tool to retrieve multiple task subtasks from a workspace. Use when you need to list or find available task subtasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —       | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                                                                                                                                                             |
| `offset`     | string  |          | —       | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.                                                                                                                                                                                                                                   |
| `task_gid`   | string  |     ✅    | —       | The globally unique identifier for the task.                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `opt_fields` | array   |          | —       | Defines fields to return. Some requests return compact representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should be sure to return for the objects. The field names should be provided as paths, described below. The id of included objects will always be returned, regardless of the field options. |

***

### `Asana Get Task Templates`

Integration name: **ASANA\_GET\_TASK\_TEMPLATES**

Tool to retrieve multiple task templates from a workspace. Use when you need to list or find available task templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example             | Description                                                                                             |
| --------------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `20`                | The number of objects to return per page.                                                               |
| `offset`        | string  |          | `"abcdefg"`         | Offset token for pagination.                                                                            |
| `opt_fields`    | string  |          | `"name,created_at"` | Comma-separated list of fields to include in the response. For example: 'name,created\_at,created\_by'. |
| `project_gid`   | string  |          | `"1234567890"`      | Globally unique identifier for the project. One of project or workspace must be specified.              |
| `workspace_gid` | string  |          | `"12345"`           | Globally unique identifier for the workspace. One of project or workspace must be specified.            |

***

### `Asana Get Team`

Integration name: **ASANA\_GET\_TEAM**

Tool to retrieve details of a specific team by its GID. Use when you need to fetch information about a particular team in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------ | ------- | :------: | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_gid`   | string  |     ✅    | `"159874"`                                                                                                  | Globally unique identifier for the team.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `opt_fields` | array   |          | `["description","html_description","name","organization","organization.name","permalink_url","visibility"]` | Defines fields to return. Some requests return *compact* representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should be sure to return for the objects. The field names should be provided as paths. The id of included objects will always be returned, regardless of the field options. |
| `opt_pretty` | boolean |          | —                                                                                                           | Provides “pretty” output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                                                                                                       |

***

### `Asana Get Team Membership`

Integration name: **ASANA\_GET\_TEAM\_MEMBERSHIP**

Tool to retrieve a complete team membership record by its GID. Use when you need to fetch details about a specific team membership in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                             | Description                                                                                                                                                                                                                             |
| --------------------- | ------- | :------: | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`          | array   |          | `["is_admin","is_guest","is_limited_access","team","team.name","user","user.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                             |
| `opt_pretty`          | boolean |          | —                                                                                   | Provides "pretty" output. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `team_membership_gid` | string  |     ✅    | `"724362"`                                                                          | Globally unique identifier for the team membership.                                                                                                                                                                                     |

***

### `Asana Get Team Memberships`

Integration name: **ASANA\_GET\_TEAM\_MEMBERSHIPS**

Tool to retrieve compact team membership records. Use when you need to list members of a team, teams a user belongs to, or all team memberships in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                      | Description                             |
| ------------ | ------- | :------: | -------------------------------------------- | --------------------------------------- |
| `team`       | string  |          | —                                            | The team to filter memberships to.      |
| `user`       | string  |          | —                                            | A user gid to filter memberships to.    |
| `limit`      | integer |          | —                                            | Results per page.                       |
| `offset`     | string  |          | —                                            | Offset token.                           |
| `workspace`  | string  |          | —                                            | The workspace to filter memberships to. |
| `opt_fields` | array   |          | `["gid","user.name","team.name","is_guest"]` | Defines fields to return.               |
| `opt_pretty` | boolean |          | —                                            | Adds indentation to JSON response.      |

***

### `Asana Get Team Memberships For Team`

Integration name: **ASANA\_GET\_TEAM\_MEMBERSHIPS\_FOR\_TEAM**

Tool to get memberships from a specific team. Use when you need to retrieve the list of users who are members of a particular team, including their membership details such as admin status and guest status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                             | Description                                                                                                                                                                                                                                                |
| ------------ | ------- | :------: | ----------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                                                                                   | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                           |
| `offset`     | string  |          | —                                                                                   | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. |
| `team_gid`   | string  |     ✅    | `"159874"`                                                                          | Globally unique identifier for the team.                                                                                                                                                                                                                   |
| `opt_fields` | array   |          | `["is_admin","is_guest","is_limited_access","team","team.name","user","user.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                |
| `opt_pretty` | boolean |          | —                                                                                   | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                   |

***

### `Asana Get Team Memberships For User`

Integration name: **ASANA\_GET\_TEAM\_MEMBERSHIPS\_FOR\_USER**

Tool to get team memberships for a specific user. Use when you need to retrieve all teams that a user belongs to within a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                               | Description                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                                                  | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                  |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                                   | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.                        |
| `user_gid`   | string  |     ✅    | `"me"`                                                                | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                                                  |
| `workspace`  | string  |     ✅    | `"31326"`                                                             | Globally unique identifier for the workspace.                                                                                                                                                                                                                                     |
| `opt_fields` | array   |          | `["is_admin","is_guest","is_limited_access","team.name","user.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                       |
| `opt_pretty` | boolean |          | —                                                                     | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Get Teams For User`

Integration name: **ASANA\_GET\_TEAMS\_FOR\_USER**

Tool to get teams for a specific user in an organization. Returns the team records for all teams in the organization or workspace to which the given user is assigned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                 | Description                                                                                                                                                                                                                                                |
| -------------- | ------- | :------: | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`        | integer |          | `50`                                                    | Results per page. The value must be between 1 and 100.                                                                                                                                                                                                     |
| `offset`       | string  |          | `"eyJ0eXAiOJiV...`"                                     | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. |
| `user_gid`     | string  |     ✅    | `"me"`                                                  | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                           |
| `opt_fields`   | array   |          | `["name","description","organization","permalink_url"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                |
| `opt_pretty`   | boolean |          | —                                                       | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                   |
| `organization` | string  |     ✅    | `"1331"`                                                | The workspace or organization to filter teams on.                                                                                                                                                                                                          |

***

### `Asana Get Teams In Workspace`

Integration name: **ASANA\_GET\_TEAMS\_IN\_WORKSPACE**

Returns the compact records for all teams in the workspace visible to the authorized user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                                                                                                                                                  |
| --------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `50`                 | Results per page. The value must be between 1 and 100.                                                                                                                       |
| `offset`        | string  |          | `"eyJ0eXAiO...`"     | Offset token from a previous API response for pagination to retrieve the next page of results. If an offset is not passed in, the API will return the first page of results. |
| `workspace_gid` | string  |     ✅    | `"1205766922013215"` | The Global ID (GID) of the workspace to get teams from.                                                                                                                      |

***

### `Asana Get Time Period`

Integration name: **ASANA\_GET\_TIME\_PERIOD**

Tool to retrieve the full record for a single time period by its GID. Use when you need to fetch detailed information about a specific time period, including its start/end dates, display name, and parent period.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                                          | Description                                                                                                                                |
| ----------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `opt_fields`      | array   |          | `["display_name","end_on","parent","parent.display_name","parent.end_on","parent.period","parent.start_on","period","start_on"]` | Comma-separated list of fields to include in the response.                                                                                 |
| `opt_pretty`      | boolean |          | —                                                                                                                                | Provides the response in a "pretty" format. In the case of JSON this means doing proper line breaking and indentation to make it readable. |
| `time_period_gid` | string  |     ✅    | `"917392"`                                                                                                                       | Globally unique identifier for the time period.                                                                                            |

***

### `Asana Get Time Periods`

Integration name: **ASANA\_GET\_TIME\_PERIODS**

Tool to retrieve compact or full representations of time periods. Use this when you need to fetch information about specific time periods, such as their start and end dates, display names, and parent periods.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                                        | Description                                                  |
| --------------- | ------- | :------: | ------------------------------------------------------------------------------ | ------------------------------------------------------------ |
| `limit`         | integer |          | —                                                                              | Results per page.                                            |
| `end_on`        | string  |          | —                                                                              | The last day of the time period, YYYY-MM-DD.                 |
| `offset`        | string  |          | —                                                                              | Offset token for pagination.                                 |
| `start_on`      | string  |          | —                                                                              | The first day of the time period, YYYY-MM-DD.                |
| `opt_fields`    | array   |          | `["gid","resource_type","start_on","end_on","period","display_name","parent"]` | A comma-separated list of fields to include in the response. |
| `opt_pretty`    | boolean |          | —                                                                              | Provides the response in "pretty" output.                    |
| `workspace_gid` | string  |     ✅    | `"12345"`                                                                      | Globally unique identifier for the workspace.                |

***

### `Asana Get Time Tracking Entries`

Integration name: **ASANA\_GET\_TIME\_TRACKING\_ENTRIES**

Tool to get multiple time tracking entries across workspace, tasks, or projects. Use when you need to retrieve time tracking information for filtering by workspace, task, portfolio, user, or date range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                                                                                           | Description                                                                                                                                                                                                                                                                                                                                         |
| --------------------------- | ------- | :------: | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task`                      | string  |          | `"12345"`                                                                                                                         | Globally unique identifier for the task to filter time tracking entries by.                                                                                                                                                                                                                                                                         |
| `user`                      | string  |          | `"12345"`                                                                                                                         | Globally unique identifier for the user to filter time tracking entries by.                                                                                                                                                                                                                                                                         |
| `limit`                     | integer |          | `50`                                                                                                                              | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                    |
| `offset`                    | string  |          | `"eyJ0eXAiOJiV...`"                                                                                                               | Offset token to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. *Note: You can only pass in an offset that was returned to you via a previously paginated request.* |
| `portfolio`                 | string  |          | `"12345"`                                                                                                                         | Globally unique identifier for the portfolio to filter time tracking entries by.                                                                                                                                                                                                                                                                    |
| `workspace`                 | string  |          | `"1205766922013215"`                                                                                                              | Globally unique identifier for the workspace. At least one of entered\_on\_start\_date or entered\_on\_end\_date must be provided when filtering by workspace.                                                                                                                                                                                      |
| `opt_fields`                | array   |          | `["attributable_to","attributable_to.name","created_by","created_by.name","duration_minutes","entered_on","offset","path","uri"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                         |
| `opt_pretty`                | boolean |          | `true`                                                                                                                            | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                                                                            |
| `attributable_to`           | string  |          | `"12345"`                                                                                                                         | Globally unique identifier for the project the time tracking entries are attributed to.                                                                                                                                                                                                                                                             |
| `entered_on_end_date`       | string  |          | `"2025-12-31"`                                                                                                                    | The end date for filtering time tracking entries by when they were entered.                                                                                                                                                                                                                                                                         |
| `entered_on_start_date`     | string  |          | `"2025-01-01"`                                                                                                                    | The start date for filtering time tracking entries by when they were entered.                                                                                                                                                                                                                                                                       |
| `timesheet_approval_status` | string  |          | `"12345"`                                                                                                                         | Globally unique identifier for the timesheet approval status to filter time tracking entries by.                                                                                                                                                                                                                                                    |

***

### `Asana Get Time Tracking Entries For Task`

Integration name: **ASANA\_GET\_TIME\_TRACKING\_ENTRIES\_FOR\_TASK**

Tool to get time tracking entries for a task. Use when you need to retrieve time tracking information recorded on a specific task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                                           | Description                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | --------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                                                                                                                                 | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                               |
| `offset`     | string  |          | —                                                                                                                                 | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. *Note: You can only pass in an offset that was returned to you via a previously paginated request.* |
| `task_gid`   | string  |     ✅    | `"321654"`                                                                                                                        | The task to operate on.                                                                                                                                                                                                                                                                                                                                        |
| `opt_fields` | array   |          | `["attributable_to","attributable_to.name","created_by","created_by.name","duration_minutes","entered_on","offset","path","uri"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                                                                                                    |
| `opt_pretty` | boolean |          | —                                                                                                                                 | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                                                                                       |

***

### `Asana Get Typeahead Objects`

Integration name: **ASANA\_GET\_TYPEAHEAD\_OBJECTS**

Tool to retrieve objects in a workspace via a typeahead search algorithm. Use when you need to quickly find objects like tasks, projects, users, etc., based on a search string. This is useful for implementing auto-completion features.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example            | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `count`         | integer |          | `10`               | The number of results to return. The default is 20 if this parameter is omitted, with a minimum of 1 and a maximum of 100.                                                                                  |
| `query`         | string  |          | `"John Doe"`       | The string that will be used to search for relevant objects. If an empty string is passed in, the API will return results.                                                                                  |
| `opt_fields`    | array   |          | `["name","email"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | `true`             | Provides “pretty” output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                    |
| `resource_type` | string  |          | `"user"`           | The type of values the typeahead should return.                                                                                                                                                             |
| `workspace_gid` | string  |     ✅    | `"12345"`          | Globally unique identifier for the workspace or organization.                                                                                                                                               |

***

### `Asana Get User`

Integration name: **ASANA\_GET\_USER**

Get a user by their ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_gid`   | string  |     ✅    | `"12345"` | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                            |
| `opt_fields` | array   |          | —         | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —         | Provides “pretty” output.                                                                                                                                                                                   |

***

### `Asana Get User For Workspace`

Integration name: **ASANA\_GET\_USER\_FOR\_WORKSPACE**

Tool to get a user in a workspace or organization by their GID. Use when you need to retrieve details about a specific user within a workspace context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example   | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_gid`      | string  |     ✅    | `"me"`    | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                            |
| `opt_fields`    | array   |          | —         | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —         | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                    |
| `workspace_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the workspace or organization.                                                                                                                                               |

***

### `Asana Get Users For Team`

Integration name: **ASANA\_GET\_USERS\_FOR\_TEAM**

Get users in a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example            | Description                                                                                                                                                                                                          |
| ------------ | ------- | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                  | Results per page. The maximum is 2000.                                                                                                                                                                               |
| `offset`     | string  |          | —                  | Offset token.                                                                                                                                                                                                        |
| `team_gid`   | string  |     ✅    | `"12345"`          | Globally unique identifier for the team.                                                                                                                                                                             |
| `opt_fields` | array   |          | `["name","email"]` | This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —                  | Provides “pretty” output.                                                                                                                                                                                            |

***

### `Asana Get Users For Workspace`

Integration name: **ASANA\_GET\_USERS\_FOR\_WORKSPACE**

Get users in a workspace or organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example             | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —                   | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                            |
| `offset`        | string  |          | —                   | Offset token for pagination requests.                                                                                                                                                                       |
| `opt_fields`    | array   |          | `["email","photo"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —                   | Provides “pretty” output.                                                                                                                                                                                   |
| `workspace_gid` | string  |     ✅    | `"12345"`           | Globally unique identifier for the workspace or organization.                                                                                                                                               |

***

### `Asana Get User Task List`

Integration name: **ASANA\_GET\_USER\_TASK\_LIST**

Tool to get a single user task list by its globally unique identifier. Use when you need to retrieve information about a specific user's My Tasks list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                        | Description                                                                                                                                                                                                 |
| -------------------- | ------- | :------: | ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`         | array   |          | `["name","owner","workspace"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`         | boolean |          | —                              | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                          |
| `user_task_list_gid` | string  |     ✅    | `"12345"`                      | Globally unique identifier for the user task list.                                                                                                                                                          |

***

### `Asana Get Webhooks`

Integration name: **ASANA\_GET\_WEBHOOKS**

Tool to retrieve multiple webhooks in a workspace. Use when you need to list all webhooks for a workspace or filter webhooks by a specific resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                        | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                                                           | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                            |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                                            | Offset token for pagination. An offset to the next page returned by the API.                                                                                                                                |
| `resource`   | string  |          | `"51648"`                                                                      | Only return webhooks for the given resource.                                                                                                                                                                |
| `workspace`  | string  |     ✅    | `"1331"`                                                                       | The workspace to query for webhooks in.                                                                                                                                                                     |
| `opt_fields` | array   |          | `["active","created_at","filters","last_success_at","target","resource.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —                                                                              | Provides "pretty" output.                                                                                                                                                                                   |

***

### `Asana Get Workspace`

Integration name: **ASANA\_GET\_WORKSPACE**

Tool to retrieve details of a specific workspace by its GID. Use when you need to get information about a particular Asana workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                    | Description                                                                                                                                                             |
| --------------- | ------- | :------: | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`    | array   |          | `["name","email_domains"]` | This results in a compact response, suitable for data-transfer sensitive applications. Valid values are: gid, name, resource\_type, email\_domains, is\_organization.   |
| `opt_pretty`    | boolean |          | —                          | Provides “pretty” output. Formatting dates and times as human-readable strings, numbers as strings, and including newlines and indentation. The default value is false. |
| `workspace_gid` | string  |     ✅    | `"12345"`                  | The globally unique identifier of the workspace.                                                                                                                        |

***

### `Asana Get Workspace Membership`

Integration name: **ASANA\_GET\_WORKSPACE\_MEMBERSHIP**

Tool to retrieve a specific workspace membership by its GID. Use when you need to get details about a user's membership in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                                                                                                                                                                                                                                                       | Description                                                                                                                                                                                                 |
| -------------------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `opt_fields`               | array   |          | `["created_at","is_active","is_admin","is_guest","is_view_only","user","user.name","user_task_list","user_task_list.name","user_task_list.owner","user_task_list.workspace","vacation_dates","vacation_dates.end_on","vacation_dates.start_on","workspace","workspace.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`               | boolean |          | —                                                                                                                                                                                                                                                                             | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                          |
| `workspace_membership_gid` | string  |     ✅    | `"12345"`                                                                                                                                                                                                                                                                     | Globally unique identifier for the workspace membership.                                                                                                                                                    |

***

### `Asana Get Workspace Memberships`

Integration name: **ASANA\_GET\_WORKSPACE\_MEMBERSHIPS**

Tool to retrieve the workspace memberships for a specific workspace. Use when you need to list members of a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------------- | ------- | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`          | string  |          | `"me"`                                       | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                                                                                                                                                                                                                                                  |
| `limit`         | integer |          | `20`                                         | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                                                                                                                                                                                                                                                  |
| `offset`        | string  |          | `"eyJ0eXAiOJiV...`"                          | Offset token.                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `opt_fields`    | array   |          | `["user.name","workspace.name","is_active"]` | Defines fields to return. Some requests return compact representations of objects in order to conserve resources and complete the request more efficiently. Other times requests return more information than you may need. This option allows you to list the exact set of fields that the API should return for each object. The field names should be provided as paths, described below. The id of included objects will always be returned, regardless of the field options. |
| `workspace_gid` | string  |     ✅    | `"12345"`                                    | Globally unique identifier for the workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Asana Get Workspace Memberships For User`

Integration name: **ASANA\_GET\_WORKSPACE\_MEMBERSHIPS\_FOR\_USER**

Tool to retrieve workspace memberships for a specific user. Use when you need to list all workspaces a user is a member of.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                                                                                                | Description                                                                                                                                                                                                                                                |
| ------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `50`                                                                                                                                                                   | Results per page. The number of objects to return per page. The value must be between 1 and 100.                                                                                                                                                           |
| `offset`     | string  |          | `"eyJ0eXAiOJiV...`"                                                                                                                                                    | Offset token. An offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results. |
| `user_gid`   | string  |     ✅    | `"me"`                                                                                                                                                                 | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                                                                           |
| `opt_fields` | array   |          | `["created_at","is_active","is_admin","is_guest","is_view_only","user.name","workspace.name","user_task_list.name","vacation_dates.start_on","vacation_dates.end_on"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                |
| `opt_pretty` | boolean |          | —                                                                                                                                                                      | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                         |

***

### `Asana Get Workspace Projects`

Integration name: **ASANA\_GET\_WORKSPACE\_PROJECTS**

Tool to retrieve the projects associated with a specific workspace. Use when you need to list all projects within a given Asana workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example             | Description                                                                                                                                                                            |
| --------------- | ------- | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | `20`                | Number of objects to return per page. For workspaces with many projects, this parameter is required to avoid pagination errors. Use the offset parameter to retrieve additional pages. |
| `offset`        | string  |          | `"eyJ0eXAiOJiV...`" | Offset token for pagination.                                                                                                                                                           |
| `opt_expand`    | array   |          | `["owner","team"]`  | Fields to expand in the response.                                                                                                                                                      |
| `opt_fields`    | array   |          | `["name","gid"]`    | Fields to include in the response.                                                                                                                                                     |
| `workspace_gid` | string  |     ✅    | `"12345"`           | Globally unique identifier for the workspace.                                                                                                                                          |

***

### `Asana Insert Enum Option For Custom Field`

Integration name: **ASANA\_INSERT\_ENUM\_OPTION\_FOR\_CUSTOM\_FIELD**

Tool to reorder an existing enum option within a custom field by moving it before or after another specified enum option. Use when you need to change the order/position of options in an enum or multi\_enum custom field. Note: To create new enum options, use 'Create Enum Option for Custom Field' action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                      | Description                                                                                                                                                                                                 |
| ------------------ | ------- | :------: | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`             | object  |     ✅    | —                            | The data for the enum option to be inserted or reordered.                                                                                                                                                   |
| `opt_fields`       | array   |          | `["name","color","enabled"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`       | boolean |          | —                            | Provides “pretty” output.                                                                                                                                                                                   |
| `custom_field_gid` | string  |     ✅    | `"12345"`                    | Globally unique identifier for the custom field.                                                                                                                                                            |

***

### `Asana Insert Section For Project`

Integration name: **ASANA\_INSERT\_SECTION\_FOR\_PROJECT**

Tool to move or reorder an existing section within a project by repositioning it before or after another section. Use when you need to change the position/order of sections in a project. Note: This action moves existing sections only. To create new sections, use 'Create Section in Project' action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                                                                                                                                        |
| ------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`        | object  |     ✅    | —                    | The data specifying which section to move and where to position it.                                                                                                                |
| `opt_pretty`  | boolean |          | —                    | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_gid` | string  |     ✅    | `"1210124791807961"` | Globally unique identifier for the project.                                                                                                                                        |

***

### `Asana Instantiate Project Template`

Integration name: **ASANA\_INSTANTIATE\_PROJECT\_TEMPLATE**

Instantiate (create) a real Asana project from a project template, returning the async job record. Use when you need to create a new project from a template with specific date and role assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                               | Description                                                                                                                               |
| ---------------------- | ------- | :------: | --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |     ✅    | `"Q1 Marketing Campaign"`                                             | The name for the new project that will be created from the template.                                                                      |
| `team`                 | string  |          | `"67890"`                                                             | Globally unique identifier for the team that the new project will belong to. Required if the template is a team template.                 |
| `is_strict`            | boolean |          | —                                                                     | If true, requires all date and role variables from the template to be provided. If false or omitted, missing variables will use defaults. |
| `opt_fields`           | array   |          | `["gid","status","new_project","new_project_template"]`               | Optional fields to include in the response. Common values: gid, status, new\_project, new\_project\_template.                             |
| `opt_pretty`           | boolean |          | —                                                                     | If true, returns human-readable JSON response (for debugging only due to size/processing impact).                                         |
| `privacy_setting`      | string  |          | `"public_to_workspace"`                                               | Privacy setting for the new project. If not specified, inherits from template or team settings.                                           |
| `requested_dates`      | array   |          | `[{"gid":"1","value":"2024-12-31"},{"gid":"2","value":"2025-01-15"}]` | Array of date variable assignments. Required if the template includes date variables and is\_strict is true.                              |
| `requested_roles`      | array   |          | `[{"gid":"role_gid_123","value":"user_gid_456"}]`                     | Array of role assignments mapping template roles to specific users.                                                                       |
| `project_template_gid` | string  |     ✅    | `"12345"`                                                             | Globally unique identifier for the project template to instantiate.                                                                       |

***

### `Asana Reject Access Request`

Integration name: **ASANA\_REJECT\_ACCESS\_REQUEST**

Tool to reject an access request. Use when you need to deny a user's request for access to a project or resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example   | Description                                                                            |
| -------------------- | ------ | :------: | --------- | -------------------------------------------------------------------------------------- |
| `access_request_gid` | string |     ✅    | `"12345"` | Globally unique identifier for the access request to reject. Must be a numeric string. |

***

### `Asana Remove Follower From Task`

Integration name: **ASANA\_REMOVE\_FOLLOWER\_FROM\_TASK**

Tool to remove one or more followers from a task. Use when you need to update the list of users following a specific task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example           | Description                                   |
| ----------- | ------ | :------: | ----------------- | --------------------------------------------- |
| `task_gid`  | string |     ✅    | `"12345"`         | The globally unique identifier for the task.  |
| `followers` | array  |     ✅    | `["1111","2222"]` | An array of user GIDs to remove as followers. |

***

### `Asana Remove Followers For Project`

Integration name: **ASANA\_REMOVE\_FOLLOWERS\_FOR\_PROJECT**

Tool to remove followers from a project in Asana. Use when you need to remove one or more users as followers from a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                         | Description                                                                                                                                                                                                                                                                       |
| ------------- | ------- | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `followers`   | string  |     ✅    | `"521621,621373"`                               | A comma-separated string of user identifiers. These can be the string "me", an email, or the gid of a user. For example: "521621,621373" or "me,<user@example.com>".                                                                                                              |
| `opt_fields`  | array   |          | `["name","notes","followers","followers.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include.                                                                       |
| `opt_pretty`  | boolean |          | —                                               | Provides "pretty" output. Provides the response in a pretty format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `project_gid` | string  |     ✅    | `"1210124791807961"`                            | Globally unique identifier for the project.                                                                                                                                                                                                                                       |

***

### `Asana Remove Item From Portfolio`

Integration name: **ASANA\_REMOVE\_ITEM\_FROM\_PORTFOLIO**

Tool to remove an item (e.g., a project) from an Asana portfolio. Use to undo/cleanup portfolio membership, support moves between portfolios, or enforce portfolio hygiene.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example      | Description                                                                                                                                                                                                                                  |
| --------------- | ------- | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item`          | string  |     ✅    | `"1331"`     | The globally unique identifier (GID) of the item (project or portfolio) to remove from the portfolio.                                                                                                                                        |
| `opt_fields`    | string  |          | `"name,gid"` | Comma-separated list of fields to include in the response. Limited utility for this endpoint as it returns an empty data block.                                                                                                              |
| `opt_pretty`    | boolean |          | —            | Provides 'pretty' output. Provides the response in a pretty format with proper line breaking and indentation for readability. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `portfolio_gid` | string  |     ✅    | `"12345"`    | The globally unique identifier for the portfolio.                                                                                                                                                                                            |

***

### `Asana Remove Members For Project`

Integration name: **ASANA\_REMOVE\_MEMBERS\_FOR\_PROJECT**

Tool to remove users from a project in Asana. Use this tool when you need to remove one or more users as members from a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                      | Description                                                                                                                                                                                                 |
| ------------- | ------- | :------: | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `members`     | string  |     ✅    | `"521621,621373"`            | A comma-separated string of user identifiers. These can be the string "me", an email, or the gid of a user.                                                                                                 |
| `opt_fields`  | array   |          | `["name","members","owner"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`  | boolean |          | —                            | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                          |
| `project_gid` | string  |     ✅    | `"1331"`                     | Globally unique identifier for the project.                                                                                                                                                                 |

***

### `Asana Remove Project From Task`

Integration name: **ASANA\_REMOVE\_PROJECT\_FROM\_TASK**

Tool to remove a project from a task in Asana. Use this when you need to disassociate a task from a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                                                                                                                                        |
| ------------ | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `project`    | string  |     ✅    | `"13579"`  | The project to remove the task from.                                                                                                                                               |
| `task_gid`   | string  |     ✅    | `"321654"` | The task to operate on.                                                                                                                                                            |
| `opt_pretty` | boolean |          | —          | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Remove Tag From Task`

Integration name: **ASANA\_REMOVE\_TAG\_FROM\_TASK**

Tool to remove an existing tag from a task in Asana. Use this tool when you need to detach a tag from a specific task for cleanup or retagging automation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                          | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`        | string  |     ✅    | `"13579"`                        | The globally unique identifier for the tag to remove from the task.                                                                                                                                         |
| `task_gid`   | string  |     ✅    | `"1202599807151278"`             | The globally unique identifier for the task.                                                                                                                                                                |
| `opt_fields` | array   |          | `["gid","name","resource_type"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —                                | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging.                          |

***

### `Asana Remove User For Team`

Integration name: **ASANA\_REMOVE\_USER\_FOR\_TEAM**

Tool to remove a user from a team. Use when you need to revoke team membership for a specific user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                                                                                                                                        |
| ------------ | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`       | string  |     ✅    | `"12345"`  | A string identifying a user. This can either be the string 'me', an email, or the gid of a user.                                                                                   |
| `team_gid`   | string  |     ✅    | `"159874"` | Globally unique identifier for the team.                                                                                                                                           |
| `opt_pretty` | boolean |          | —          | Provides 'pretty' output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging. |

***

### `Asana Remove User For Workspace`

Integration name: **ASANA\_REMOVE\_USER\_FOR\_WORKSPACE**

Tool to remove a user from a workspace or organization. Use when you need to revoke a user's access to a specific workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example   | Description                                                                                                                                                                        |
| --------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`          | string  |     ✅    | `"12345"` | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                   |
| `opt_pretty`    | boolean |          | —         | Provides "pretty" output. Provides the response in a pretty format. This will take extra time and increase the response size so it is advisable only to use this during debugging. |
| `workspace_gid` | string  |     ✅    | `"12345"` | Globally unique identifier for the workspace or organization.                                                                                                                      |

***

### `Asana Search Tasks In Workspace`

Integration name: **ASANA\_SEARCH\_TASKS\_IN\_WORKSPACE**

Tool to search tasks across a workspace with advanced filters. Use when performing complex queries such as overdue tasks, by project or custom field, for reporting or automation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                   | Description                                                                                                                                                                                                                                          |
| ---------------------------- | ------- | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`                       | string  |          | `"meeting"`                               | Search for tasks containing this text in name or notes. At least one search filter must be provided.                                                                                                                                                 |
| `limit`                      | integer |          | `"50"`                                    | Maximum number of results to return (1-100).                                                                                                                                                                                                         |
| `opt_fields`                 | array   |          | `["name","due_on","assignee"]`            | Additional fields to include in each task object; see Asana API docs for available fields.                                                                                                                                                           |
| `opt_pretty`                 | boolean |          | `true`                                    | Pretty-print the JSON response with indentation (useful for debugging).                                                                                                                                                                              |
| `assignee_any`               | array   |          | `["me"]`                                  | Return tasks assigned to any of these user GIDs; use 'me' for current user or 'null' for unassigned tasks. At least one search filter must be provided.                                                                                              |
| `projects_any`               | array   |          | `["1205766922013215","1205766922013216"]` | Return tasks in any of these project GIDs. Must contain valid numeric Asana project identifiers (e.g., '1205766922013215'). At least one search filter (projects\_any, assignee\_any, resource\_subtype, or text) must be provided.                  |
| `workspace_gid`              | string  |     ✅    | `"1205766922013215"`                      | Numeric GID of the workspace to search. Must be a valid numeric workspace identifier (e.g., '1205766922013215'). Note: Unlike assignee\_any, 'me' is not a valid value for workspace\_gid - use a numeric GID obtained from the workspaces endpoint. |
| `resource_subtype`           | string  |          | `"default_task"`                          | Filter by task subtype: 'default\_task' for regular tasks, 'milestone' for milestones. At least one search filter must be provided.                                                                                                                  |
| `composio_execution_message` | string  |          | —                                         | Message explaining any automatic modifications made to the request.                                                                                                                                                                                  |

***

### `Asana Set Parent For Task`

Integration name: **ASANA\_SET\_PARENT\_FOR\_TASK**

Tool to set the parent of a task in Asana. Use when you need to make a task a subtask of another task or remove the parent relationship.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                      | Description                                                                                                                                                                                                            |
| --------------- | ------- | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`        | string  |     ✅    | `"1213187208675417"`                         | The GID of the new parent task, or 'null' to remove the parent. Setting a parent makes this task a subtask of the parent.                                                                                              |
| `task_gid`      | string  |     ✅    | `"1213245048982427"`                         | The globally unique identifier (GID) of the task to set the parent for.                                                                                                                                                |
| `opt_fields`    | string  |          | `"name,parent,parent.name,resource_subtype"` | Comma-separated list of fields to include in the response. By default, the response returns a compact representation of the task. Use this to retrieve additional fields such as 'name', 'parent', 'parent.name', etc. |
| `opt_pretty`    | boolean |          | —                                            | Provides 'pretty' output with proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.                 |
| `insert_after`  | string  |          | `"124816"`                                   | A subtask GID of the parent to insert the task after, or 'null' to insert at the beginning of the subtask list. If not provided, the task will be inserted at an appropriate position.                                 |
| `insert_before` | string  |          | `"124816"`                                   | A subtask GID of the parent to insert the task before, or 'null' to insert at the end of the subtask list. If not provided, the task will be inserted at an appropriate position.                                      |

***

### `Asana Submit Parallel Requests`

Integration name: **ASANA\_SUBMIT\_PARALLEL\_REQUESTS**

Tool to submit multiple Asana API requests in parallel using the Batch API. Use when you need to perform several operations efficiently, such as fetching multiple tasks or creating multiple subtasks at once.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                               |
| --------- | ------ | :------: | ------- | --------------------------------------------------------- |
| `data`    | object |     ✅    | —       | Contains the list of actions to be performed in parallel. |

***

### `Asana Update Allocation`

Integration name: **ASANA\_UPDATE\_ALLOCATION**

Tool to update an existing allocation by its ID. Use this when you need to modify details like the start date, end date, effort, or assignee for an allocation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                  |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------ |
| `data`           | object  |     ✅    | —       | The data to update the allocation with.                      |
| `opt_fields`     | array   |          | —       | A comma-separated list of fields to include in the response. |
| `opt_pretty`     | boolean |          | —       | If true, the response will be in a human-readable format.    |
| `allocation_gid` | string  |     ✅    | —       | Globally unique identifier for the allocation to be updated. |

***

### `Asana Update A Task`

Integration name: **ASANA\_UPDATE\_A\_TASK**

Updates attributes of an existing Asana task identified by its task\_gid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                        |
| ------------ | ------- | :------: | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object  |     ✅    | —                              | An object containing the fields of the task to update.                                                                                                                                                                                                                                             |
| `task_gid`   | string  |     ✅    | `"123456789012345"`            | The GID of the task to update.                                                                                                                                                                                                                                                                     |
| `opt_fields` | array   |          | `["name","assignee","due_on"]` | Array of optional properties to include in the response object. By default, a compact representation of the task is returned. Use this to retrieve additional fields. The elements of this list should be valid field names for the task resource. This is an array, not a comma-separated string. |
| `opt_pretty` | boolean |          | —                              | If true, the response JSON will be 'pretty-printed' with indentation and line breaks, making it more readable. This is useful for debugging but may increase response time and size.                                                                                                               |

***

### `Asana Update Custom Field`

Integration name: **ASANA\_UPDATE\_CUSTOM\_FIELD**

Tool to update a custom field by its globally unique identifier. Use when you need to modify properties of an existing custom field in Asana.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                 | Description                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`             | object  |     ✅    | —                                       | The data to update the custom field with.                                                                                                                                                                            |
| `opt_fields`       | array   |          | `["name","description","enum_options"]` | This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`       | boolean |          | —                                       | Provides “pretty” output.                                                                                                                                                                                            |
| `custom_field_gid` | string  |     ✅    | `"12345"`                               | Globally unique identifier for the custom field.                                                                                                                                                                     |

***

### `Asana Update Enum Option`

Integration name: **ASANA\_UPDATE\_ENUM\_OPTION**

Tool to update an enum option for a custom field. Use when you need to modify the name, color, or enabled status of an existing enum option.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                      | Description                                                                                                                 |
| ----------------- | ------- | :------: | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `data`            | object  |     ✅    | —                            | The data to update the enum option with.                                                                                    |
| `opt_fields`      | array   |          | `["name","color","enabled"]` | Defines the fields to be returned in the response.                                                                          |
| `opt_pretty`      | boolean |          | —                            | Provides “pretty” output. Formatting of the result will follow JSON pretty print conventions (line breaks and indentation). |
| `enum_option_gid` | string  |     ✅    | `"12345"`                    | Globally unique identifier for the enum option.                                                                             |

***

### `Asana Update Project`

Integration name: **ASANA\_UPDATE\_PROJECT**

Update a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                     | Description                                                                                                                                                                                 |
| --------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string  |          | `"New Project Name"`                                        | The name of the project. Note: User task lists (My Tasks) are special system-managed projects whose names cannot be changed. Attempting to rename a user task list will result in an error. |
| `team`          | string  |          | `"12345"`                                                   | The GID of the team that this project is shared with.                                                                                                                                       |
| `color`         | string  |          | `"light-green"`                                             | Color of the project.                                                                                                                                                                       |
| `notes`         | string  |          | `"This is a new description for the project."`              | Free-form textual information associated with the project (its description).                                                                                                                |
| `owner`         | string  |          | `"12345"`                                                   | The GID of the new owner of the project. May be null.                                                                                                                                       |
| `due_on`        | string  |          | `"2023-12-31"`                                              | The day on which this project is due. This takes a date with format YYYY-MM-DD.                                                                                                             |
| `public`        | boolean |          | —                                                           | True if the project is public to its team.                                                                                                                                                  |
| `archived`      | boolean |          | —                                                           | True if the project is archived, false if not.                                                                                                                                              |
| `due_date`      | string  |          | `"2023-12-31"`                                              | The localized day on which this project is due. This takes a date with format YYYY-MM-DD.                                                                                                   |
| `start_on`      | string  |          | `"2023-01-01"`                                              | The day on which work for this project begins, or null if the project has no start date. This takes a date with YYYY-MM-DD format.                                                          |
| `html_notes`    | string  |          | `"<body>This is a new description for the project.</body>"` | [Opt In](broken://pages/1767a04d0562a7a7b848f78d1f2ac303851c2924). The notes of the project with formatting as HTML.                                                                        |
| `is_template`   | boolean |          | —                                                           | [Opt In](broken://pages/1767a04d0562a7a7b848f78d1f2ac303851c2924). True if the project is a template.                                                                                       |
| `project_gid`   | string  |     ✅    | `"12345"`                                                   | The GID of the project to update.                                                                                                                                                           |
| `default_view`  | string  |          | `"list"`                                                    | The default view (list, board, calendar, or timeline) of a project.                                                                                                                         |
| `custom_fields` | object  |          | `{"123":"value1","456":"value2"}`                           | An object where each key is the GID of a custom field and its corresponding value is the new value for that custom field.                                                                   |

***

### `Asana Update Project Brief`

Integration name: **ASANA\_UPDATE\_PROJECT\_BRIEF**

Tool to update a project brief by its GID. Use when you need to modify the content/description of a project brief. Note: Requires the project\_brief\_gid (not the project\_gid). First call 'Get a project' with opt\_fields=\['project\_brief'] to obtain the project\_brief\_gid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                                                              | Description                                                                                                                                                                                                                                                                                   |
| ------------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`              | string  |          | `"Updated project brief text - Testing the UPDATE_PROJECT_BRIEF endpoint with valid authentication and parameters."` | The plain text content of the project brief. This field updates the main content/description of the project brief.                                                                                                                                                                            |
| `opt_fields`        | array   |          | —                                                                                                                    | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. Available options: html\_text, permalink\_url, project, project.name, text, title |
| `opt_pretty`        | boolean |          | —                                                                                                                    | Provides 'pretty' output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                                                                                                      |
| `project_brief_gid` | string  |     ✅    | `"1212598676699299"`                                                                                                 | Globally unique identifier for the project brief. This is NOT the project GID. Must be a numeric string. To obtain a project\_brief\_gid, first call 'Get a project' with opt\_fields=\['project\_brief'] to retrieve the project's brief object, which contains the project\_brief\_gid.     |

***

### `Asana Update Section`

Integration name: **ASANA\_UPDATE\_SECTION**

Update a section's name or position within a project. Use when you need to rename a section or reorder sections by specifying insert\_before or insert\_after.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                          | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string  |          | `"Updated To Do Section"`                        | The new name for the section. This is the text displayed as the section header. Cannot be an empty string.                                                                                                  |
| `opt_fields`    | array   |          | `["created_at","name","project","project.name"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —                                                | Provides 'pretty' output with proper line breaking and indentation. Advisable only during debugging as it increases response time and size.                                                                 |
| `section_gid`   | string  |     ✅    | `"321654"`                                       | The globally unique identifier for the section to update.                                                                                                                                                   |
| `insert_after`  | string  |          | `"987654"`                                       | An existing section within this project after which the section should be inserted. Cannot be provided together with insert\_before.                                                                        |
| `insert_before` | string  |          | `"86420"`                                        | An existing section within this project before which the section should be inserted. Cannot be provided together with insert\_after.                                                                        |

***

### `Asana Update Story`

Integration name: **ASANA\_UPDATE\_STORY**

Tool to update a story on a task. Use when you need to modify the text, html\_text, or pin status of an existing story. Only comment stories can have text/html\_text updated, and only comment and attachment stories can be pinned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                              | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object  |     ✅    | —                                    | An object containing the fields of the story to update.                                                                                                                                                     |
| `story_gid`  | string  |     ✅    | `"35678"`                            | Globally unique identifier for the story.                                                                                                                                                                   |
| `opt_fields` | array   |          | `["text","created_at","created_by"]` | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty` | boolean |          | —                                    | Provides "pretty" output.                                                                                                                                                                                   |

***

### `Asana Update Tag`

Integration name: **ASANA\_UPDATE\_TAG**

Tool to update an existing tag by its globally unique identifier. Use when you need to change the name or color of a tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `data`    | object |     ✅    | —       | An object containing the fields to update.  |
| `tag_gid` | string |     ✅    | —       | The globally unique identifier for the tag. |

***

### `Asana Update Team`

Integration name: **ASANA\_UPDATE\_TEAM**

Tool to update details of an existing team. Use when you need to change a team's name, description, or organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                               | Description                                                                                          |
| -------------- | ------- | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `name`         | string  |          | `"New Team Name"`                     | The new name of the team.                                                                            |
| `team_gid`     | string  |     ✅    | `"12345"`                             | Globally unique identifier for the team.                                                             |
| `opt_fields`   | array   |          | —                                     | Defines fields to return.                                                                            |
| `opt_pretty`   | boolean |          | —                                     | Provides “pretty” output.                                                                            |
| `description`  | string  |          | `"This is the new team description."` | The new description of the team.                                                                     |
| `organization` | string  |          | `"67890"`                             | GID of the organization to which the team belongs. This is the GID of an organization, not its name. |

***

### `Asana Update User`

Integration name: **ASANA\_UPDATE\_USER**

Update a user's custom fields. Note: Asana's API has very limited user update capabilities - most user properties are read-only and managed by users themselves.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                          | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_gid`      | string  |     ✅    | `"me"`                           | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                            |
| `workspace`     | string  |          | `"12345"`                        | The workspace to filter results on.                                                                                                                                                                         |
| `opt_fields`    | array   |          | —                                | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —                                | Provides 'pretty' output. Provides the response in a pretty format.                                                                                                                                         |
| `custom_fields` | object  |          | `{"1234567890":"Updated value"}` | An object where each key is a custom field GID and the value is the new value for that custom field. Note: User objects have very limited update capabilities in Asana's API.                               |

***

### `Asana Update User For Workspace`

Integration name: **ASANA\_UPDATE\_USER\_FOR\_WORKSPACE**

Tool to update a user in a workspace or organization. Use when you need to modify user-specific custom field values for a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                      | Description                                                                                                                                                                                                 |
| --------------- | ------- | :------: | ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_gid`      | string  |     ✅    | `"12345"`                                                    | A string identifying a user. This can either be the string "me", an email, or the gid of a user.                                                                                                            |
| `opt_fields`    | array   |          | `["email","name","photo","workspaces"]`                      | This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. |
| `opt_pretty`    | boolean |          | —                                                            | Provides "pretty" output. This will take extra time and increase the response size so it is advisable only to use this during debugging.                                                                    |
| `custom_fields` | object  |          | `{"1234567890":"option_gid","0987654321":"Some text value"}` | Object mapping custom field GIDs to their values for the user. Values depend on field type: enum fields use option GIDs (strings), text fields use strings, number fields use numbers.                      |
| `workspace_gid` | string  |     ✅    | `"12345"`                                                    | Globally unique identifier for the workspace or organization.                                                                                                                                               |

***

### `Asana Update Webhook`

Integration name: **ASANA\_UPDATE\_WEBHOOK**

Tool to update an existing Asana webhook's filter configuration. Use when you need to modify which events trigger webhook notifications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                       | Description                                                                                                                                                                                                                                                                                |
| ------------- | ------- | :------: | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `filters`     | array   |          | `[{"action":"changed","fields":["name","completed"],"resource_type":"task"}]` | Array of WebhookFilter objects to specify which events should trigger this webhook. If a webhook event passes any of the filters, the event will be delivered; otherwise no event will be sent. Each filter can specify resource\_type, resource\_subtype, action, and/or fields to match. |
| `opt_fields`  | array   |          | `["active","filters","resource","target"]`                                    | Array of optional field names to include in the response. Common fields include: 'active', 'created\_at', 'filters', 'last\_failure\_at', 'last\_success\_at', 'resource', 'target'.                                                                                                       |
| `opt_pretty`  | boolean |          | —                                                                             | If true, the response JSON will be 'pretty-printed' with indentation and line breaks for readability. Useful for debugging but may increase response time and size.                                                                                                                        |
| `webhook_gid` | string  |     ✅    | `"1213245723496077"`                                                          | Globally unique identifier for the webhook to update.                                                                                                                                                                                                                                      |


# Attio

Your Toolhouse AI Worker can connect to Attio using 108 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](https://toolhouse.app/auth-connections?authkit_slugs=attio).

## Tools (108)

### `Attio Assert Company`

Integration name: **ATTIO\_ASSERT\_COMPANY**

Creates or updates a company record in Attio using a unique attribute to search for existing companies. If a company is found with the same value for the matching attribute, that company will be updated. If no company is found, a new one will be created. Use this when you prefer to update records on conflicts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                            |
| -------------------- | ------ | :------: | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string |          | `"Acme Corporation"`                                  | The name of the company. Optional but recommended.                                                                                                                                                                                                                                                                                                                                                                                     |
| `team`               | array  |          | `["john@example.com","jane@example.com"]`             | List of team member email addresses to associate with this company. These should be email addresses of people records in your workspace.                                                                                                                                                                                                                                                                                               |
| `domain`             | string |          | `"example.com"`                                       | Single website domain for the company (automatically converted to list format). Use this for convenience when providing a single domain. Alternatively, use 'domains' to provide multiple domains at once.                                                                                                                                                                                                                             |
| `domains`            | array  |          | `["example.com"]`                                     | List of website domains for the company. If matching\_attribute is 'domains', either 'domain' or 'domains' is typically required. For multiselect attributes like domains, new values will be added and existing values will not be deleted. Provide as simple strings (e.g., \['example.com', 'example.org']).                                                                                                                        |
| `description`        | string |          | `"Leading provider of enterprise software solutions"` | Description or summary of the company                                                                                                                                                                                                                                                                                                                                                                                                  |
| `primary_location`   | string |          | `"1 Infinite Loop, Cupertino, CA, 95014, US"`         | Physical business address of the company. Use string format: '1 Infinite Loop, Cupertino, CA, 95014, US' (recommended). Alternatively, you can provide an object with all 10 location fields.                                                                                                                                                                                                                                          |
| `matching_attribute` | string |     ✅    | `"domains"`                                           | The ID or slug of the attribute used to check if a company already exists. Must be an attribute with a uniqueness constraint. If a company is found with the same value for this attribute, it will be updated. If no company is found, a new one will be created. Common examples: 'domains' (most common) or any custom unique attribute slug. WARNING: 'name' is NOT a unique attribute and cannot be used as a matching attribute. |

***

### `Attio Assert Person`

Integration name: **ATTIO\_ASSERT\_PERSON**

Tool to create or update person records using a unique attribute to search for existing people. Use when you want to ensure a person exists with specific details without creating duplicates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                                                                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| -------------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`             | object |     ✅    | `{"name":[{"full_name":"John Doe","last_name":"Doe","first_name":"John"}],"job_title":"Software Engineer","description":"Developer met at conference","email_addresses":[{"email_address":"john.doe@example.com"}]}` | Dictionary of attribute slugs to values. **CRITICAL**: The matching attribute specified in 'matching\_attribute' MUST be included in the values. **ATTRIBUTE FORMATS**: (1) 'email\_addresses': Use \[{'email\_address': '<john@example.com>'}] or \['<john@example.com>']. (2) 'name': Use \[{'first\_name': 'John', 'last\_name': 'Doe', 'full\_name': 'John Doe'}] or \[{'full\_name': 'John Doe'}]. Both first\_name and last\_name are required by the API (default to empty string if not provided). (3) 'phone\_numbers': Use \[{'original\_phone\_number': '+15558675309', 'country\_code': 'US'}]. (4) 'primary\_location': Use string format like '1 Infinite Loop, Cupertino, CA, 95014, US'. (5) 'company': Use \[{'target\_object': 'companies', 'target\_record\_id': '\<company\_uuid>'}] for record reference. (6) 'linkedin': Use simple string URL. **MULTISELECT BEHAVIOR**: If the matching attribute is a multiselect, new values are added (existing kept). For other multiselect attributes, values are synced to match the supplied list. |
| `matching_attribute` | string |     ✅    | `"email_addresses"`                                                                                                                                                                                                  | The ID or slug of the unique attribute to check if a person already exists. For person records, email\_addresses is the only unique attribute by default. If a person is found with the same value for this attribute, that person will be updated. If no person with the same value is found, a new person will be created instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Attio Assert User Record`

Integration name: **ATTIO\_ASSERT\_USER\_RECORD**

Creates or updates a user record in Attio using a unique attribute to search for existing users. If a user is found with the same value for the matching attribute, that user will be updated. If no user is found, a new one will be created. Use this to ensure user records exist without duplicates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| -------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`             | object |     ✅    | `{"user_id":[{"value":"user_123"}],"primary_email_address":[{"email_address":"john.doe@example.com"}]}` | The attribute values for the user record as a dictionary where keys are attribute slugs and values are the attribute data. **CRITICAL - MATCHING ATTRIBUTE BEHAVIOR**: The matching attribute specified in the 'matching\_attribute' parameter MUST be included in the values. **ATTRIBUTE FORMATS**: (1) 'primary\_email\_address': Use \[{'email\_address': '<user@example.com>'}] or \['<user@example.com>'] format. (2) 'user\_id': Use \[{'value': 'user\_123'}] or simple string value. (3) 'person': Use \[{'target\_object': 'people', 'target\_record\_id': '\<person\_uuid>'}] for record reference. (4) 'workspace': Use \[{'target\_object': 'workspaces', 'target\_record\_id': '\<workspace\_uuid>'}] for record reference. **MULTISELECT BEHAVIOR**: If the matching attribute is a multiselect attribute, new values will be added and existing values will not be deleted. For any other multiselect attribute, all values will be either created or deleted as necessary to match the list of supplied values. |
| `matching_attribute` | string |     ✅    | `"primary_email_address"`                                                                               | The ID or slug of the unique attribute to check if a user record already exists. Must be a unique attribute. If a user is found with the same value for this attribute, it will be updated. If no user is found, a new one will be created. Common examples: 'primary\_email\_address', 'user\_id', or any custom unique attribute slug.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

***

### `Attio Assert Workspace`

Integration name: **ATTIO\_ASSERT\_WORKSPACE**

Creates or updates a workspace record in Attio using a unique attribute to search for existing workspaces. If a workspace is found with the same value for the matching attribute, that workspace will be updated. If no workspace is found, a new one will be created.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                            | Description                                                                                                                                                                                                                                                                                                                                    |
| -------------------- | ------ | :------: | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string |          | `"Production Workspace"`           | The name of the workspace.                                                                                                                                                                                                                                                                                                                     |
| `users`              | array  |          | `["user-uuid-1","user-uuid-2"]`    | List of user record IDs to associate with this workspace. These should be UUIDs of user records in your Attio workspace. Format: provide as list of record IDs which will be converted to record references.                                                                                                                                   |
| `company`            | string |          | `"company-uuid-123"`               | Company record ID to associate with this workspace. This should be the UUID of a company record in your Attio workspace. Will be converted to a record reference.                                                                                                                                                                              |
| `avatar_url`         | string |          | `"https://example.com/avatar.png"` | URL to the workspace's avatar image.                                                                                                                                                                                                                                                                                                           |
| `workspace_id`       | string |          | `"workspace-123"`                  | The unique identifier for the workspace. Use this when matching\_attribute is 'workspace\_id'.                                                                                                                                                                                                                                                 |
| `matching_attribute` | string |     ✅    | `"workspace_id"`                   | The ID or slug of the attribute used to check if a workspace already exists. Must be a unique attribute. If a workspace is found with the same value for this attribute, it will be updated. If no workspace is found, a new one will be created. Common examples: 'workspace\_id' (most common), 'name', or any custom unique attribute slug. |

***

### `Attio Create Attribute`

Integration name: **ATTIO\_CREATE\_ATTRIBUTE**

Tool to create a new attribute on an object or list in Attio. Use when you need to add custom fields to track additional information. For record-reference types, you can establish bidirectional relationships by supplying a relationship object.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example          | Description                                                                                                                                                                                                                               |
| ---------------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`           | string  |     ✅    | `"text"`         | Attribute type: text, number, checkbox, currency, date, timestamp, rating, status, select, record-reference, actor-reference, location, domain, email-address, phone-number, interaction, personal-name                                   |
| `title`          | string  |     ✅    | `"Custom Field"` | Display name for the attribute                                                                                                                                                                                                            |
| `config`         | object  |     ✅    | —                | Type-specific configuration settings (required for currency and record-reference types)                                                                                                                                                   |
| `target`         | string  |     ✅    | `"objects"`      | Whether the attribute is on an object or list.                                                                                                                                                                                            |
| `api_slug`       | string  |     ✅    | `"custom_field"` | Snake-case identifier for API calls (e.g., 'custom\_field')                                                                                                                                                                               |
| `is_unique`      | boolean |          | —                | Whether values must be distinct across records. Uniqueness restrictions apply only to new data, not retroactively. Some attribute types (e.g., 'select') do not support unique constraints; the API will return an error if incompatible. |
| `identifier`     | string  |     ✅    | `"people"`       | A UUID or slug identifying the object or list to create the attribute on                                                                                                                                                                  |
| `description`    | string  |          | —                | Explanatory text about the attribute                                                                                                                                                                                                      |
| `is_required`    | boolean |          | —                | Whether new records must have a value for this attribute. Note: Required attributes (is\_required=true) are not permitted on lists; only custom objects support required attributes.                                                      |
| `relationship`   | object  |          | —                | Bidirectional relationship configuration for record-reference attributes                                                                                                                                                                  |
| `default_value`  | object  |          | —                | Initial value assignment strategy                                                                                                                                                                                                         |
| `is_multiselect` | boolean |          | —                | Whether the attribute permits multiple values                                                                                                                                                                                             |

***

### `Attio Create Comment`

Integration name: **ATTIO\_CREATE\_COMMENT**

Tool to create a new comment on a thread, record, or list entry in Attio. Use when you need to add a comment to an existing conversation, a record (like a person, company, or deal), or a list entry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                                                                        |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `entry`     | object |          | —                                        | Reference to a list entry to attach the comment to.                                                                                                                |
| `author`    | object |     ✅    | —                                        | The workspace member who wrote this comment. Must include type='workspace-member' and the UUID of the workspace member.                                            |
| `format`    | string |          | —                                        | Format of the comment content. Currently only 'plaintext' is supported. Uses line feed character \n for new lines.                                                 |
| `record`    | object |          | —                                        | Reference to a record to attach the comment to.                                                                                                                    |
| `content`   | string |     ✅    | `"This is a test comment."`              | The plaintext content of the comment. Use \n for line breaks.                                                                                                      |
| `thread_id` | string |          | `"aa1dc1d9-93ac-4c6c-987e-16b6eea9aab2"` | UUID of an existing thread to add the comment to. Mutually exclusive with 'record' and 'entry'. Use this when adding a comment to an existing conversation thread. |

***

### `Attio Create Company`

Integration name: **ATTIO\_CREATE\_COMPANY**

Creates a new company record in Attio. This endpoint will throw an error on conflicts of unique attributes like domains. If you prefer to update company records on conflicts, use the Assert company record endpoint instead. Note: The logo\_url attribute cannot currently be set via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                                  |
| ------------------ | ------ | :------: | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string |          | `"Acme Corporation"`                                  | The name of the company. Optional but recommended.                                                                                                                                                                                                                                                                                           |
| `team`             | array  |          | `["john@example.com","jane@example.com"]`             | List of team member email addresses to associate with this company. These should be email addresses of people records in your workspace.                                                                                                                                                                                                     |
| `domains`          | array  |          | `["example.com"]`                                     | List of website domains for the company. This field has a uniqueness constraint - the endpoint will throw an error if any domain conflicts with an existing company record. If you prefer to update records on conflicts instead, use the Assert company record endpoint. Provide as simple strings (e.g., \['example.com', 'example.org']). |
| `description`      | string |          | `"Leading provider of enterprise software solutions"` | Description or summary of the company                                                                                                                                                                                                                                                                                                        |
| `primary_location` | —      |          | `"1 Infinite Loop, Cupertino, CA, 95014, US"`         | Physical business address of the company. Use string format: '1 Infinite Loop, Cupertino, CA, 95014, US' (recommended). Alternatively, you can provide an object with all 10 location fields.                                                                                                                                                |

***

### `Attio Create Deal Record`

Integration name: **ATTIO\_CREATE\_DEAL\_RECORD**

Tool to create a new deal record in Attio. Use when you need to track a new sales opportunity or deal. This endpoint will throw an error on conflicts of unique attributes. Minimal requirement is providing at least one attribute value.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type   | Required | Example                                    | Description                                                                                                                |
| --------------------------- | ------ | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
| `name`                      | string |          | `"Contract with Fundstack"`                | The name of the deal. Optional but recommended.                                                                            |
| `stage`                     | string |          | `"Lead"`                                   | The status/stage of the deal. Can be the status UUID or status title (e.g., 'Lead', 'In Progress', 'Won', 'Lost').         |
| `value`                     | number |          | `99.99`                                    | The monetary value of the deal. Decimal number with max 4 decimal places.                                                  |
| `owner_id`                  | string |          | `"92446133-64cf-4f83-bca9-594ca2f8da57"`   | UUID of the workspace member who owns this deal. Use owner\_email instead if you have the email address.                   |
| `owner_email`               | string |          | `"alice@attio.com"`                        | Email address of the workspace member who owns this deal. This is the preferred way to set the owner.                      |
| `associated_company_id`     | string |          | `"92446133-64cf-4f83-bca9-594ca2f8da57"`   | Company record UUID to associate with this deal. Use this if you have the company record ID.                               |
| `associated_people_ids`     | array  |          | `["92446133-64cf-4f83-bca9-594ca2f8da57"]` | List of person record UUIDs to associate with this deal. Use this if you have the person record IDs.                       |
| `associated_people_emails`  | array  |          | `["john@example.com","jane@example.com"]`  | List of email addresses to associate people with this deal. The system will find matching person records by email address. |
| `associated_company_domain` | string |          | `"example.com"`                            | Domain name to associate a company with this deal. The system will find the matching company record by domain.             |

***

### `Attio Create Entry`

Integration name: **ATTIO\_CREATE\_ENTRY**

DEPRECATED: Use ATTIO\_ATTIO\_POST\_V2\_LISTS\_LIST\_ENTRIES instead. Tool to add a record to a list as a new list entry in Attio. Use when you need to organize records into specific lists. Throws errors on unique attribute conflicts. Multiple list entries are allowed for the same parent record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                                                                                                          |
| ------------------ | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id`          | string |     ✅    | `"enterprise_sales"`                     | A UUID or slug identifying the list to add the entry to                                                                                              |
| `entry_values`     | object |          | —                                        | Custom attribute values for the list entry. Field values organized by attribute slug or ID. For multiselect attributes, all values must be specified |
| `parent_object`    | string |     ✅    | `"people"`                               | The UUID or slug of the parent object type (e.g., 'people', 'companies')                                                                             |
| `parent_record_id` | string |     ✅    | `"bf071e1f-6035-429d-b874-d83ea64ea13b"` | The UUID of the record being added to the list                                                                                                       |

***

### `Attio Create List`

Integration name: **ATTIO\_CREATE\_LIST**

Tool to create a new list in Attio. Use when you need to organize records into custom lists. Once created, add attributes using the Create Attribute API and add records using the Create Entry API. New lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                                                                  | Description                                                                                                                                                                                                                                                                                                  |
| ------------------------- | ------ | :------: | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                    | string |     ✅    | `"Enterprise Sales"`                                                                     | The human-readable name of the list                                                                                                                                                                                                                                                                          |
| `api_slug`                | string |     ✅    | `"enterprise_sales"`                                                                     | A unique, human-readable slug to access the list through API calls. Should be formatted in snake case                                                                                                                                                                                                        |
| `parent_object`           | string |     ✅    | `"people"`                                                                               | A UUID or slug to identify the allowed object type for records added to this list (e.g., 'people', 'companies')                                                                                                                                                                                              |
| `workspace_access`        | —      |     ✅    | `"read-and-write"`                                                                       | The level of access granted to all members of the workspace for this list. Pass null to keep the list private and only grant access to specific workspace members. Note: New lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level |
| `workspace_member_access` | array  |     ✅    | `[{"level":"full-access","workspace_member_id":"50cf242c-7fa3-4cad-87d0-75b1af71c57b"}]` | The level of access granted to specific workspace members for this list. Pass an empty array to grant access to no workspace members. Note: New lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level                              |

***

### `Attio Create Note`

Integration name: **ATTIO\_CREATE\_NOTE**

This tool creates a new note on a given record in Attio. The note can be attached to any record type (like person, company, or deal) and includes a title and content. It requires parameters such as parent\_object, parent\_record\_id, title, and content, with an optional created\_at timestamp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------ | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`            | string |     ✅    | `"Meeting Notes"`                             | The title of the note                                                                                                                                                                                                                                                                                                                                                                                         |
| `content`          | string |     ✅    | `"Discussed project timeline and next steps"` | The content of the note                                                                                                                                                                                                                                                                                                                                                                                       |
| `created_at`       | string |          | `"2023-12-25T10:30:00Z"`                      | Optional timestamp for when the note was created (ISO 8601 format)                                                                                                                                                                                                                                                                                                                                            |
| `parent_object`    | string |     ✅    | `"people"`                                    | The object type the note is associated with. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'.                                                                                                                                                                                                                                                                             |
| `parent_record_id` | string |     ✅    | `"f3b2962b-febb-4e01-8431-f7ffb4d87e5e"`      | **MUST BE A VALID UUID** - The unique identifier of the specific record within the object. Format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (32 hexadecimal characters with hyphens). Do NOT use placeholder strings like 'COMPANY\_ID' or 'RECORD\_ID' - only actual UUIDs are accepted. Obtain this value from previous API responses (e.g., ATTIO\_CREATE\_RECORD, ATTIO\_FIND\_RECORD, ATTIO\_LIST\_RECORDS). |

***

### `Attio Create Object`

Integration name: **ATTIO\_CREATE\_OBJECT**

Tool to create a new custom object in your Attio workspace. Use when you need to add a new object type beyond the standard objects (people, companies, deals, users, workspaces). Requires api\_slug (snake\_case identifier), singular\_noun, and plural\_noun.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                       |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `data`    | object |     ✅    | —       | The object configuration with API slug, singular noun, and plural noun. All three fields are required when creating a new object. |

***

### `Attio Create Person`

Integration name: **ATTIO\_CREATE\_PERSON**

Creates a new person record in Attio. This endpoint will throw an error on conflicts of unique attributes like email\_addresses. If you prefer to update person records on conflicts instead, use the Assert person record endpoint. Note: The avatar\_url attribute cannot currently be set via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                            | Description                                                                                                                                                                                                                                                                                                                         |
| ------------------ | ------ | :------: | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | array  |          | `[{"full_name":"John Doe","last_name":"Doe","first_name":"John"}]` | Person's name. Provide as array with first\_name, last\_name, and/or full\_name. If only full\_name is provided, it will be auto-split into first\_name and last\_name. If only first\_name and/or last\_name are provided, full\_name will be auto-generated.                                                                      |
| `company`          | array  |          | `["92446133-64cf-4f83-bca9-594ca2f8da57"]`                         | Associated company record IDs (UUIDs) to link this person to companies                                                                                                                                                                                                                                                              |
| `linkedin`         | string |          | `"https://www.linkedin.com/in/johndoe"`                            | LinkedIn profile URL                                                                                                                                                                                                                                                                                                                |
| `job_title`        | string |          | `"Software Engineer"`                                              | Person's job title                                                                                                                                                                                                                                                                                                                  |
| `description`      | string |          | `"Senior software engineer specializing in backend development"`   | Description of the person                                                                                                                                                                                                                                                                                                           |
| `phone_numbers`    | array  |          | `["+15558675309","+442071234567"]`                                 | Person's phone numbers in E.164 international format (leading '+' and country code, e.g. '+15558675309', '+442071234567'). 10-digit numeric inputs are auto-prefixed with '+1' (US). Common formatting characters (spaces, dashes, parens, dots) are stripped. Numbers that cannot be normalized are rejected with a helpful error. |
| `email_addresses`  | array  |          | `["john@example.com"]`                                             | Person's email addresses. This field has a uniqueness constraint - the endpoint will throw an error if any email conflicts with an existing person record. If you prefer to update records on conflicts instead, use the Assert person record endpoint.                                                                             |
| `primary_location` | —      |          | `"1 Infinite Loop, Cupertino, CA, 95014, US"`                      | Person's primary location. Use string format: '1 Infinite Loop, Cupertino, CA, 95014, US' (recommended). Alternatively, you can provide an object with location fields like line\_1, line\_2, city, state, postal\_code, country\_code, etc.                                                                                        |

***

### `Attio Create Record`

Integration name: **ATTIO\_CREATE\_RECORD**

This tool creates a new record in Attio for a specified object type (people, companies, deals, users, workspaces, etc.). It requires the object type and a values dictionary containing the attributes for the new record. IMPORTANT: Different object types have different attributes. For example: - 'people' object uses: name, email\_addresses, phone\_numbers, primary\_location, job\_title, etc. - 'users' object uses: primary\_email\_address, user\_id, person, workspace - 'companies' object uses: name, domains, description, etc. Always verify the correct attribute names for your target object type before creating records. Use the List Attributes API or check your workspace to see available attributes for each object type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`      | object |     ✅    | `{"name":[{"full_name":"John Doe","last_name":"Doe","first_name":"John"}],"job_title":"Software Engineer","phone_numbers":[{"country_code":"US","original_phone_number":"+15558675309"}],"email_addresses":[{"email_address":"john@example.com"}],"primary_location":[{"line_1":"1 Infinite Loop","line_2":null,"line_3":null,"line_4":null,"region":"CA","latitude":"37.331741","locality":"Cupertino","postcode":"95014","longitude":"-122.030333","country_code":"US"}]}` | Attribute values for the new record. Keys are attribute slugs, values are attribute data. CRITICAL: Call ATTIO\_LIST\_ATTRIBUTES (target='objects', identifier=\<object\_type>) to discover valid slugs and required attributes (is\_required=true) BEFORE creating records. Do NOT guess attribute names. **OBJECT-SPECIFIC ATTRIBUTES**: (1) 'people': 'name' (personal-name), 'email\_addresses', 'phone\_numbers', 'primary\_location', 'job\_title', 'company' (record-reference to companies). (2) 'companies': 'name' (text), 'domains', 'description', 'primary\_location', 'team' (record-reference to people). (3) 'deals': 'name' (deal title), 'owner' (actor-reference), 'stage' (status), 'value' (currency), 'associated\_company' (record-reference to companies), 'associated\_people' (record-reference to people). (4) 'users': 'primary\_email\_address', 'user\_id', 'person', 'workspace'. (5) Custom objects: slugs are workspace-specific, always use List Attributes. **VALUE FORMATS**: Multi-value attributes (email-address, phone-number, personal-name, location, domain) require arrays. Single-value attributes (text, number) accept simple values or single-element arrays. personal-name: requires 'first\_name', 'last\_name', 'full\_name' (full\_name auto-generated if omitted). email-address: use 'email\_address'. phone-number: use 'original\_phone\_number'. **ACTOR-REFERENCE** (e.g., 'owner', 'created\_by'): Reference workspace members by email address. Formats: email string, array with email, or object with workspace\_member\_email\_address field. **RECORD-REFERENCE** (e.g., 'company', 'associated\_company'): Include target\_object (API slug, e.g., 'people', 'companies') and target\_record\_id (UUID). Format: \[{"target\_object": "", "target\_record\_id": ""}]. **STATUS** (e.g., 'stage' for deals): Format: \[{"status": "\<title\_or\_uuid>"}]. Use ATTIO\_LIST\_ATTRIBUTE\_STATUSES to get available statuses. **LOCATION**: Use string format (recommended) or object with fields: line\_1, line\_2, line\_3, line\_4, locality, region, postcode, country\_code, latitude, longitude. **DOMAIN**: use \["example.com"] or \[{"domain": "example.com"}]. 'root\_domain' is output-only. **CURRENCY**: Use \[{"currency\_value": 1000.00}] or simple number. |
| `object_type` | string |     ✅    | `"people"`                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | The type of object to create a record for. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace. IMPORTANT: Each object type has different attributes - you must use the correct attribute names for the specific object type you're creating.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Attio Create Select Option`

Integration name: **ATTIO\_CREATE\_SELECT\_OPTION**

Tool to add a new select option to a select or multiselect attribute in Attio. Use when you need to add a new choice to an existing select field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example       | Description                                                                   |
| ------------ | ------ | :------: | ------------- | ----------------------------------------------------------------------------- |
| `data`       | object |     ✅    | —             | The data for the new select option                                            |
| `target`     | string |     ✅    | `"objects"`   | Whether the attribute is on an object or a list                               |
| `attribute`  | string |     ✅    | `"priority"`  | A UUID or slug to identify the select or multiselect attribute                |
| `identifier` | string |     ✅    | `"companies"` | A UUID or slug to identify the object or list the select attribute belongs to |

***

### `Attio Create Status`

Integration name: **ATTIO\_CREATE\_STATUS**

Tool to add a new status to a status attribute on either an object or a list. Use when you need to create a new status option for status attributes. Company and person objects do not support status attributes at this time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                          |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `data`       | object |     ✅    | —                                        | The status data containing the title and optional configuration.                                                                     |
| `target`     | string |     ✅    | `"lists"`                                | Whether the attribute is on an object or a list. Note that company and person objects do not support status attributes at this time. |
| `attribute`  | string |     ✅    | `"41252299-f8c7-4b5e-99c9-4ff8321d2f96"` | A UUID or slug to identify the attribute the status will belong to.                                                                  |
| `identifier` | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug to identify the object or list the status attribute belongs to.                                                       |

***

### `Attio Create Task`

Integration name: **ATTIO\_CREATE\_TASK**

Tool to create a new task in Attio. Use when you need to add a task with content and optional deadline, assignees, or linked records. Note: Tasks can only be created from plaintext without record reference formatting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                     | Description                                                                                                                                                                                               |
| ---------------- | ------- | :------: | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`        | string  |     ✅    | `"Follow up on current software solutions"` | The text content of the task. A maximum length of 2000 characters is enforced.                                                                                                                            |
| `assignees`      | array   |          | —                                           | Workspace members assigned to this task. Provide an array of objects with 'referenced\_actor\_type' and 'referenced\_actor\_id' properties.                                                               |
| `deadline_at`    | string  |          | `"2023-01-01T15:00:00.000000000Z"`          | The deadline of the task, in ISO 8601 format. Set to null if no deadline.                                                                                                                                 |
| `is_completed`   | boolean |          | `false`                                     | Whether the task has been completed.                                                                                                                                                                      |
| `linked_records` | array   |          | —                                           | Records linked to the task. Provide an array of objects with 'target\_object' and 'target\_record\_id' properties. Creating record links within task content text is not possible via the API at present. |

***

### `Attio Create User Record`

Integration name: **ATTIO\_CREATE\_USER\_RECORD**

Creates a new user record in Attio. User records represent workspace members or users in the system. Requires primary\_email\_address, user\_id, and workspace\_id. Optionally link to an existing person record. Note: Required attributes may vary based on workspace configuration - check the List Attributes action if you encounter missing\_value errors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                  | Description                                                                                                                            |
| ----------------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`               | string |     ✅    | `"test-user-123"`                        | Unique identifier for the user. This should be a unique string value that identifies the user in your system.                          |
| `person_id`             | string |          | `"a1b2c3d4-e5f6-7890-abcd-ef1234567890"` | Optional UUID of a person record to link this user to. If provided, this associates the user with an existing person in the workspace. |
| `workspace_id`          | string |     ✅    | `"07774c6b-5b0a-4142-b708-585a310d0d04"` | UUID of the workspace this user should belong to. Get workspace IDs using the List Workspace Records action.                           |
| `primary_email_address` | string |     ✅    | `"test.user@example.com"`                | Primary email address for the user. This is the email that will be used for user authentication and notifications.                     |

***

### `Attio Create Webhook`

Integration name: **ATTIO\_CREATE\_WEBHOOK**

Tool to create a webhook and subscribe to events in Attio. Use when you need to set up a new webhook endpoint to receive real-time event notifications. Returns the webhook configuration including a one-time signing secret for verifying event authenticity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                      | Description                                                                                                                |
| --------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `target_url`    | string |     ✅    | `"https://webhook.site/unique-endpoint-url"` | URL where the webhook events will be delivered to. Must be an HTTPS URL starting with 'https\://'.                         |
| `subscriptions` | array  |     ✅    | —                                            | One or more event subscriptions for the webhook. Each subscription specifies an event type and optional filter conditions. |

***

### `Attio Create Workspace Record`

Integration name: **ATTIO\_CREATE\_WORKSPACE\_RECORD**

Creates a new workspace record in Attio. The workspace\_id field is required and must be unique. This endpoint will throw an error on conflicts of unique attributes. Use when you need to create a new workspace entry in your Attio workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                           | Description                                                                                                                           |
| -------------- | ------ | :------: | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string |          | `"Production Workspace"`                                          | The name of the workspace                                                                                                             |
| `users`        | array  |          | `[{"target_object":"users","target_record_id":"abc-123-def"}]`    | User records associated with this Workspace (record-reference type). Format: \[{'target\_object': 'users', 'target\_record\_id': ''}] |
| `company`      | object |          | `{"target_object":"companies","target_record_id":"company-uuid"}` | A related Company record (record-reference type). Format: {'target\_object': 'companies', 'target\_record\_id': ''}                   |
| `avatar_url`   | string |          | `"https://example.com/avatar.png"`                                | The URL of an avatar image                                                                                                            |
| `workspace_id` | string |     ✅    | `"test-workspace-1739381532"`                                     | A unique identifier for this Workspace in your system. This is a required and unique attribute.                                       |

***

### `Attio Delete Comment`

Integration name: **ATTIO\_DELETE\_COMMENT**

Tool to delete a comment by its comment\_id. Use when you need to remove a comment from Attio. If the comment is at the head of a thread, all messages in the thread are also deleted. The operation is permanent and cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                  |
| ------------ | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `comment_id` | string |     ✅    | `"9d1695bb-eb63-443e-ba77-45f45344365d"` | The ID of the comment to delete. If deleting a comment at the head of a thread, all messages in the thread are also deleted. |

***

### `Attio Delete Company`

Integration name: **ATTIO\_DELETE\_COMPANY**

Tool to delete a company record from Attio by its record\_id. Use when you need to permanently remove a company record. The deletion is irreversible and cannot be recovered.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                  |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------ |
| `record_id` | string |     ✅    | `"99a03ff3-0435-47da-95cc-76b2caeb4dab"` | The unique identifier (UUID) of the company record to delete |

***

### `Attio Delete Deal`

Integration name: **ATTIO\_DELETE\_DEAL**

Tool to delete a deal record from Attio by its record\_id. Use when you need to permanently remove a deal record. The deletion is irreversible and cannot be recovered.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                               |
| ----------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------- |
| `record_id` | string |     ✅    | `"e11c655a-9b23-4891-a27d-078a87ac0cce"` | The unique identifier (UUID) of the deal record to delete |

***

### `Attio Delete Entry`

Integration name: **ATTIO\_DELETE\_ENTRY**

Tool to delete a single list entry by its entry\_id in Attio. Use when you need to remove an entry from a specific list. The operation is permanent and cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                         |
| ---------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------- |
| `list`     | string |     ✅    | `"enterprise_sales"`                     | A UUID or slug identifying the list the entry is in |
| `entry_id` | string |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"` | A UUID identifying the entry to delete              |

***

### `Attio Delete Note`

Integration name: **ATTIO\_DELETE\_NOTE**

This tool allows users to delete a specific note in Attio by its ID. It is implemented via DELETE <https://api.attio.com/v2/notes/{note\\_id}> and handles note deletion by validating the provided note\_id. It complements ATTIO\_CREATE\_NOTE functionality, providing complete note management capabilities within the Attio platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                  |
| --------- | ------ | :------: | --------------- | ---------------------------- |
| `note_id` | string |     ✅    | `"note_123abc"` | The ID of the note to delete |

***

### `Attio Delete Person`

Integration name: **ATTIO\_DELETE\_PERSON**

Tool to delete a person record from Attio by its record\_id. Use when you need to permanently remove a person record. The deletion is irreversible and cannot be recovered.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                 |
| ----------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------- |
| `record_id` | string |     ✅    | `"53d69b95-66f6-4dd3-860d-32be1b6e837c"` | The unique identifier (UUID) of the person record to delete |

***

### `Attio Delete Record`

Integration name: **ATTIO\_DELETE\_RECORD**

This tool allows you to delete a record from Attio permanently. The deletion is irreversible, and the data will eventually be removed from the system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                            | Description                                                                                                                                                                  |
| ------------- | ------ | :------: | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `record_id`   | string |     ✅    | `"rec_01H3PQWSN8KZQKM6KX2XS4W8PJ"` | The unique identifier of the record to delete                                                                                                                                |
| `object_type` | string |     ✅    | `"people"`                         | The type of object to delete. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace. |

***

### `Attio Delete Task`

Integration name: **ATTIO\_DELETE\_TASK**

Tool to delete a task by its task\_id. Use when you need to remove a task from Attio. The operation is permanent and cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                   |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------- |
| `task_id` | string |     ✅    | `"649e34f4-c39a-4f4d-99ef-48a36bef8f04"` | The ID of the task to delete. |

***

### `Attio Delete User`

Integration name: **ATTIO\_DELETE\_USER**

Tool to delete a user record from Attio by its record\_id. Use when you need to permanently remove a user record. The deletion is irreversible and cannot be recovered.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                               |
| ----------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------- |
| `record_id` | string |     ✅    | `"1153dd53-f5c1-5cc7-b76b-aa50f2b88c29"` | The unique identifier (UUID) of the user record to delete |

***

### `Attio Delete Webhook`

Integration name: **ATTIO\_DELETE\_WEBHOOK**

Tool to delete a webhook by its webhook\_id. Use when you need to remove a webhook subscription from Attio. The operation is permanent and cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                               |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------- |
| `webhook_id` | string |     ✅    | `"23e42eaf-323a-41da-b5bb-fd67eebda553"` | A UUID identifying the webhook to delete. |

***

### `Attio Delete Workspace Record`

Integration name: **ATTIO\_DELETE\_WORKSPACE\_RECORD**

Tool to delete a workspace record from Attio by its record\_id. Use when you need to permanently remove a workspace record. The deletion is irreversible and cannot be recovered.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------ |
| `record_id` | string |     ✅    | `"70887fd0-b0ad-44cd-ab5d-191ef8dead2d"` | The UUID of the workspace record to delete |

***

### `Attio Find Record`

Integration name: **ATTIO\_FIND\_RECORD**

This tool allows users to find a record in Attio by either its unique ID or by searching using unique attributes. It provides two methods: one for directly retrieving a record by its ID with the GET /v2/objects/{object}/records/{record\_id} endpoint, and another for searching by attributes using the POST /v2/objects/{object}/records/query endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                                        | Maximum number of records to return when searching.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `offset`     | integer |          | —                                        | Number of records to skip for pagination                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `object_id`  | string  |     ✅    | `"people"`                               | The UUID or slug identifying the object type to search in. Standard object type slugs include 'people', 'companies', 'deals', 'users', 'workspaces'. Note: 'lists' is NOT a valid object type - use list-specific actions (e.g., ATTIO\_LIST\_LISTS, ATTIO\_LIST\_LIST\_ENTRIES) to work with lists. Can also use 'object\_type' as an alias for this field.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `record_id`  | string  |          | `"f3b2962b-febb-4e01-8431-f7ffb4d87e5e"` | The unique ID of the record to retrieve directly                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `attributes` | object  |          | `{"email_addresses":"john@example.com"}` | Dictionary of attributes to search by using attribute slugs. CRITICAL: Validate slugs via ATTIO\_LIST\_ATTRIBUTES (target='objects', identifier=\<object\_id>) before filtering. System attributes (e.g., 'email\_addresses', 'name') are consistent across workspaces; custom attributes vary and invalid slugs cause 'unknown\_filter\_attribute\_slug' errors. Filtering syntax: - Simple values use shorthand ($eq implied) - Single-element lists unwrap to shorthand - Multi-element lists convert to $or conditions - Dict values with operators ({'$eq': v}, {'$contains': v}, {'$not\_empty': true}) pass through unchanged - Select/multi-select: use Attio option slugs or IDs (not plain text) - Record-reference (e.g., 'team', 'company'): to filter by referenced record attributes, use path filtering: {'path': \[\['object', 'attribute'], \['target\_object', 'target\_attribute']], 'constraints': {...}}. Nested field syntax like {'team': {'name': {...}}} is NOT supported. To filter by record\_id directly: {'attribute\_slug': {'target\_object': 'type', 'target\_record\_id': 'uuid'}}. - Interaction attributes (e.g., 'last\_email\_interaction'): filter on sub-properties: owner\_actor (nested type/id), interacted\_at ($eq/$gte/$gt/$lte/$lt, ISO 8601), interaction\_type ($eq/$not\_empty) |

***

### `Attio Get Attribute`

Integration name: **ATTIO\_GET\_ATTRIBUTE**

Tool to get information about a single attribute on either an object or a list. Use when you need detailed information about a specific attribute's configuration, type, or metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example       | Description                                                                                                                                                                          |
| ------------ | ------ | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `target`     | string |     ✅    | `"objects"`   | Whether the attribute is on an object or a list.                                                                                                                                     |
| `attribute`  | string |     ✅    | `"name"`      | A UUID or slug to identify the attribute to retrieve.                                                                                                                                |
| `identifier` | string |     ✅    | `"companies"` | A UUID or slug to identify the object or list the attribute belongs to. For objects, use slugs like 'people', 'companies', 'deals', or a UUID. For lists, use the list slug or UUID. |

***

### `Attio Get Comment`

Integration name: **ATTIO\_GET\_COMMENT**

Tool to get a single comment by its comment\_id in Attio. Use when you need to retrieve detailed information about a specific comment, including its content, author, thread, and resolution status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                      |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------ |
| `comment_id` | string |     ✅    | `"aa1dc1d9-93ac-4c6c-987e-16b6eea9aab2"` | A UUID which identifies the comment to retrieve. |

***

### `Attio Get Company`

Integration name: **ATTIO\_GET\_COMPANY**

Tool to get a single company record by its record\_id in Attio. Use when you need to retrieve detailed information about a specific company. Returns all attribute values for the company with temporal and audit metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                     |
| ----------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------- |
| `record_id` | string |     ✅    | `"0059945e-fdff-4ae1-a200-5995bdfd7831"` | UUID identifying the company record to retrieve |

***

### `Attio Get Deal Record`

Integration name: **ATTIO\_GET\_DEAL\_RECORD**

Tool to get a single deal record by its record\_id in Attio. Use when you need to retrieve detailed information about a specific deal. Returns all attribute values for the deal with temporal and audit metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                  |
| ----------- | ------ | :------: | ---------------------------------------- | -------------------------------------------- |
| `record_id` | string |     ✅    | `"7f454ed2-3069-4ea2-9b84-21edb1df82b5"` | UUID identifying the deal record to retrieve |

***

### `Attio Get List`

Integration name: **ATTIO\_GET\_LIST**

Tool to retrieve details of a single list in your Attio workspace. Use when you need to get information about a specific list by its UUID or slug.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                          |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------ |
| `list`    | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug to identify the list. |

***

### `Attio Get List Entry`

Integration name: **ATTIO\_GET\_LIST\_ENTRY**

Tool to get a single list entry by its entry\_id. Use when you need to retrieve detailed information about a specific entry in an Attio list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                          |
| ---------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `list`     | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug identifying the list the entry is in. |
| `entry_id` | string |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"` | A UUID identifying the entry.                        |

***

### `Attio Get Note`

Integration name: **ATTIO\_GET\_NOTE**

Tool to get a single note by its note\_id in Attio. Use when you need to retrieve detailed information about a specific note, including its title, content (plaintext and markdown), tags, and creator information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                   |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------- |
| `note_id` | string |     ✅    | `"ff3f3bd4-40f4-4f80-8187-cd02385af424"` | A UUID which identifies the note to retrieve. |

***

### `Attio Get Object`

Integration name: **ATTIO\_GET\_OBJECT**

Tool to get a single object by its object\_id or slug. Use to retrieve detailed schema information about a specific object type in the Attio workspace. Also use as a prerequisite validation step before calling ATTIO\_FIND\_RECORD, ATTIO\_LIST\_RECORDS, or ATTIO\_CREATE\_RECORD — attribute slugs must exactly match what this tool returns. The returned schema defines required attributes for record creation; omitting them causes invalid\_request\_error with code missing\_value (HTTP 400). Custom attributes (e.g., industry, category) vary by object type — verify their presence and data type here before building filters or record values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                                                                                                                                                                                                                                                                           |
| --------- | ------ | :------: | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`  | string |     ✅    | `"people"` | A UUID or slug to identify the object. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. Use ATTIO\_LIST\_OBJECTS alongside this tool to confirm object slugs — some concepts (e.g., tasks) may be modeled as deals or custom objects rather than dedicated types. |

***

### `Attio Get Record`

Integration name: **ATTIO\_GET\_RECORD**

DEPRECATED: Use ATTIO\_FIND\_RECORD instead. Tool to get a single person, company, or other record by its record\_id in Attio. Use when you need to retrieve detailed information about a specific record. Returns all attribute values for the record with temporal and audit metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                      |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `record_id`   | string |     ✅    | `"bf071e1f-6035-429d-b874-d83ea64ea13b"` | A UUID identifying the record Must be paired with the correct object\_type — using a record\_id from one object type with a different object\_type will fail. Always use object\_type and record\_id together as retrieved from prior responses. |
| `object_type` | string |     ✅    | `"people"`                               | A UUID or slug identifying the object that the record belongs to. Can also use 'object' as an alias for this field.                                                                                                                              |

***

### `Attio Get Record Entries`

Integration name: **ATTIO\_GET\_RECORD\_ENTRIES**

Tool to list all entries, across all lists, for which a record is the parent. Use when you need to find which lists a specific record belongs to. Returns list IDs, slugs, entry IDs, and creation timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------ |
| `limit`     | integer |          | —                                        | The maximum number of results to return. The default is 100 and the maximum is 1000. |
| `object`    | string  |     ✅    | `"people"`                               | A UUID or slug identifying the object that the record belongs to.                    |
| `offset`    | integer |          | —                                        | The number of results to skip over before returning. The default is 0.               |
| `record_id` | string  |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"` | A UUID identifying the record.                                                       |

***

### `Attio Get Self`

Integration name: **ATTIO\_GET\_SELF**

Tool to identify the current access token, the workspace it is linked to, and any permissions it has. Use when you need to verify token validity or retrieve workspace information associated with the current authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Attio Get Task`

Integration name: **ATTIO\_GET\_TASK**

Tool to get a single task by its task\_id in Attio. Use when you need to retrieve detailed information about a specific task, including its content, deadline, assignees, and linked records.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                     |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------- |
| `task_id` | string |     ✅    | `"649e34f4-c39a-4f4d-99ef-48a36bef8f04"` | The ID of the task to retrieve. |

***

### `Attio Get V2 Objects Object Records Record Id`

Integration name: **ATTIO\_GET\_V2\_OBJECTS\_OBJECT\_RECORDS\_RECORD\_ID**

DEPRECATED: Use ATTIO\_FIND\_RECORD instead. Tool to get a single person, company or other record by its record\_id. Use when you need to retrieve detailed information about a specific record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                       |
| ----------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------- |
| `object`    | string |     ✅    | `"people"`                               | A UUID or slug identifying the object that the record belongs to. |
| `record_id` | string |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"` | A UUID identifying the record.                                    |

***

### `Attio Get V2 Tasks`

Integration name: **ATTIO\_GET\_V2\_TASKS**

Tool to list all tasks in the workspace. Use when you need to retrieve tasks, optionally filtering by assignee, completion status, or linked records. Results are sorted by creation date from oldest to newest by default.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------ | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`             | string  |          | `"created_at:asc"`                       | Optionally sort the results. "created\_at:asc" returns oldest results first, "created\_at:desc" returns the newest results first. If unspecified, defaults to "created\_at:asc" (oldest results first).                                                                                                                                                                                               |
| `limit`            | integer |          | `10`                                     | The maximum number of results to return. Defaults to 500.                                                                                                                                                                                                                                                                                                                                             |
| `offset`           | integer |          | `0`                                      | The number of results to skip over before returning. Defaults to 0.                                                                                                                                                                                                                                                                                                                                   |
| `assignee`         | string  |          | `"user@example.com"`                     | Filter tasks by workspace member assignees. Workspace members can be referenced by either their email address or ID. Pass an empty value or the string `null` to find tasks with no assignee.                                                                                                                                                                                                         |
| `is_completed`     | boolean |          | `true`                                   | Filter tasks by whether they have been completed. By default, both completed and non-completed tasks are returned. Specify `true` to only return completed tasks, or `false` to only return non-completed tasks.                                                                                                                                                                                      |
| `linked_object`    | string  |          | `"people"`                               | Pass a value to this parameter to filter results to only those tasks that contain the specified record in the `linked_records` property of the task. This parameter should identify the object that the linked record belongs to. For example, if filtering to tasks that link to a specific person record, this parameter should be `people`. If provided, `linked_record_id` must also be provided. |
| `linked_record_id` | string  |          | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"` | Pass a value to this parameter to filter results to only those tasks that contain the specified record in the `linked_records` property of the task. This parameter should contain the record ID of the linked record. If provided, `linked_object` must also be provided.                                                                                                                            |

***

### `Attio Get V2 Workspace Members`

Integration name: **ATTIO\_GET\_V2\_WORKSPACE\_MEMBERS**

DEPRECATED: Use ATTIO\_LIST\_WORKSPACE\_MEMBERS instead. Tool to list all workspace members in the workspace. Use when you need to retrieve information about workspace members, their access levels, or their identities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Attio Get Webhook`

Integration name: **ATTIO\_GET\_WEBHOOK**

Tool to get a single webhook by its webhook\_id in Attio. Use when you need to retrieve detailed information about a specific webhook configuration. Returns the webhook's target URL, event subscriptions, status, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                          |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------ |
| `webhook_id` | string |     ✅    | `"23e42eaf-323a-41da-b5bb-fd67eebda553"` | A UUID which identifies the webhook. |

***

### `Attio Get Workspace Member`

Integration name: **ATTIO\_GET\_WORKSPACE\_MEMBER**

Tool to get a single workspace member by their workspace\_member\_id. Use when you need details about a specific workspace member, including their name, email, access level, and avatar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                  | Description                             |
| --------------------- | ------ | :------: | ---------------------------------------- | --------------------------------------- |
| `workspace_member_id` | string |     ✅    | `"50cf242c-7fa3-4cad-87d0-75b1af71c57b"` | A UUID to identify the workspace member |

***

### `Attio Get Workspace Record`

Integration name: **ATTIO\_GET\_WORKSPACE\_RECORD**

Tool to get a single workspace record by its record\_id. Use when you need to retrieve detailed information about a specific workspace. Returns all attribute values for the workspace record with temporal and audit metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                   | Description                                           |
| ----------- | ------ | :------: | ----------------------------------------- | ----------------------------------------------------- |
| `record_id` | string |     ✅    | `"72ef5feaf-4919-4208-b332-1339ab8ba040"` | UUID string identifying the workspace record to fetch |

***

### `Attio List Attribute Options`

Integration name: **ATTIO\_LIST\_ATTRIBUTE\_OPTIONS**

Tool to list all select options for a particular attribute on either an object or a list. Use when you need to discover available options for select or status type attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example        | Description                                                                                                                                                                        |
| --------------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —              | The maximum number of results to return for pagination purposes.                                                                                                                   |
| `offset`        | integer |          | —              | The number of results to skip before returning results.                                                                                                                            |
| `target`        | string  |     ✅    | `"objects"`    | Whether the attribute is on an object or a list.                                                                                                                                   |
| `attribute`     | string  |     ✅    | `"categories"` | A UUID or slug to identify the attribute you want to list select options on. This must be a select or status type attribute.                                                       |
| `identifier`    | string  |     ✅    | `"companies"`  | A UUID or slug to identify the object or list the select attribute belongs to. For objects, use slugs like 'companies', 'people', or a UUID. For lists, use the list slug or UUID. |
| `show_archived` | boolean |          | —              | Set to true if you want the results to include archived select options. Defaults to false.                                                                                         |

***

### `Attio List Attributes`

Integration name: **ATTIO\_LIST\_ATTRIBUTES**

Tool to list the attribute schema for an Attio object or list (including slugs, types, select/status config) to enable correct filtering and writes. Use when you need to discover what attributes exist on an object or list, their types, and their configuration (e.g., available options for select/status attributes). Returns attributes in UI sort order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example     | Description                                                                                                                                                                          |
| --------------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`         | integer |          | —           | The maximum number of results to return for pagination.                                                                                                                              |
| `offset`        | integer |          | —           | The number of results to skip before returning results.                                                                                                                              |
| `target`        | string  |     ✅    | `"objects"` | Whether the attributes are on an object or a list.                                                                                                                                   |
| `identifier`    | string  |     ✅    | `"people"`  | A UUID or slug to identify the object or list the attributes belong to. For objects, use slugs like 'people', 'companies', 'deals', or a UUID. For lists, use the list slug or UUID. |
| `show_archived` | boolean |          | —           | Whether archived attributes should be included in the results.                                                                                                                       |

***

### `Attio List Attribute Statuses`

Integration name: **ATTIO\_LIST\_ATTRIBUTE\_STATUSES**

Tool to list all statuses for a particular status attribute on either an object or a list. Use when you need to discover available statuses for a status attribute, including their IDs, titles, and configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                     |
| --------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `target`        | string  |     ✅    | `"lists"`                                | Whether the attribute is on an object or a list. Please note that the company and people objects do not support status attributes at this time. |
| `attribute`     | string  |     ✅    | `"41252299-f8c7-4b5e-99c9-4ff8321d2f96"` | A UUID or slug to identify the attribute you want to list statuses on.                                                                          |
| `identifier`    | string  |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug to identify the object or list the status attribute belongs to.                                                                  |
| `show_archived` | boolean |          | —                                        | True if you want the results to include archived statuses. Defaults to false if not specified.                                                  |

***

### `Attio List Call Recordings`

Integration name: **ATTIO\_LIST\_CALL\_RECORDINGS**

Tool to list all call recordings for a meeting in Attio. Use when you need to retrieve call recordings associated with a specific meeting. This endpoint is in beta.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                          | Description                                                                                               |
| ------------ | ------- | :------: | -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                                                                                | The maximum number of results to return. Defaults to 50 with a maximum of 200.                            |
| `cursor`     | string  |          | `"eyJkZXNjcmlwdGlvbiI6ICJ0aGlzIGlzIGEgY3Vyc29yIn0=.eM56CGbqZ6G1NHiJchTIkH4vKDr"` | A cursor for pagination. Use the next\_cursor from the previous response to get the next page of results. |
| `meeting_id` | string  |     ✅    | `"cb59ab17-ad15-460c-a126-0715617c0853"`                                         | The UUID of the meeting to list call recordings for. Must be in UUID format.                              |

***

### `Attio List Companies`

Integration name: **ATTIO\_LIST\_COMPANIES**

Tool to list company records in Attio with optional filtering and sorting. Use when you need to retrieve company records based on criteria like domain, name, or description.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of records to return. Defaults to 25.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `sorts`   | array   |          | —       | Array of sort specifications to order results. Each sort object specifies direction ('asc'/'desc'), attribute, and optionally field or path.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `filter`  | object  |          | —       | Attio filter object for server-side filtering. Supports both shorthand and verbose syntax with operators. Filter by attribute slugs (e.g., 'name', 'domains', 'description'). Multi-field attributes must be accessed via nested syntax: {'domains': {'domain': {'$eq': 'attio.com'}}}. Available operators: $eq (equality), $not\_empty (presence check), $in (set membership), $contains (substring), $starts\_with (prefix), $ends\_with (suffix), $lt/$lte/$gt/$gte (numeric/date comparison), $and/$or/$not (logical). Examples: {'name': 'Acme'} for shorthand, {'domains': {'domain': {'$eq': 'example.com'}}} for exact domain match, {'$and': \[{'name': {'$contains': 'Inc'}}, {'description': {'value': {'$not\_empty': True}}}]} for complex queries. |
| `offset`  | integer |          | —       | Number of records to skip for pagination                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

***

### `Attio List Company Attribute Values`

Integration name: **ATTIO\_LIST\_COMPANY\_ATTRIBUTE\_VALUES**

Tool to get all values for a given attribute on a company record. Historic values can be queried using the show\_historic query param. Historic values cannot be queried on COMINT or enriched attributes. Some attributes are subject to billing status and may return an empty array.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                |
| --------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —                                        | Maximum number of results to return                                                                        |
| `offset`        | integer |          | —                                        | Number of results to skip                                                                                  |
| `attribute`     | string  |     ✅    | `"name"`                                 | A UUID or slug to identify the attribute                                                                   |
| `record_id`     | string  |     ✅    | `"0059945e-fdff-4ae1-a200-5995bdfd7831"` | A UUID of the company record to fetch attribute values for                                                 |
| `show_historic` | boolean |          | —                                        | If true, returns all historic values; defaults to false. Cannot be used with COMINT or enriched attributes |

***

### `Attio List Company Record Entries`

Integration name: **ATTIO\_LIST\_COMPANY\_RECORD\_ENTRIES**

Tool to list all entries across all lists for which a company record is the parent in Attio. Use when you need to see which lists a particular company record belongs to. Returns list information and entry IDs for each list the company appears in.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `limit`     | integer |          | —                                        | Maximum number of results to return. Default is 100, maximum is 1000 |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0        |
| `record_id` | string  |     ✅    | `"01641312-4b94-4cbc-be9b-1e7770ce49a5"` | A UUID identifying the company record                                |

***

### `Attio List Deal Entries`

Integration name: **ATTIO\_LIST\_DEAL\_ENTRIES**

Tool to list all entries across all lists for which a deal record is the parent in Attio. Use when you need to see which lists a particular deal record belongs to. Returns list information and entry IDs for each list the deal appears in.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `limit`     | integer |          | —                                        | Maximum number of results to return. Default is 100, maximum is 1000 |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0        |
| `record_id` | string  |     ✅    | `"12345678-1234-1234-1234-123456789012"` | A UUID identifying the deal record                                   |

***

### `Attio List Deal Record Attribute Values`

Integration name: **ATTIO\_LIST\_DEAL\_RECORD\_ATTRIBUTE\_VALUES**

Tool to retrieve all values for a specified attribute on a deal record in Attio. Use when you need to see current or historic values for a specific deal attribute. Historic values can be queried using show\_historic param but cannot be queried on COMINT or enriched attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                                                                     |
| --------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —                                        | Maximum number of results to return                                                                                                                                                             |
| `offset`        | integer |          | —                                        | Number of results to skip before returning                                                                                                                                                      |
| `attribute`     | string  |     ✅    | `"owner"`                                | UUID or slug to identify the attribute you want to query values on                                                                                                                              |
| `record_id`     | string  |     ✅    | `"1eec4535-30a1-4bc0-be24-e255d3fb5ac5"` | UUID of the deal record to fetch attribute values for                                                                                                                                           |
| `show_historic` | boolean |          | —                                        | If true, returns all historic values for the attribute. If false, returns only currently active value(s). Defaults to false. Cannot be set to true for COMINT attributes or enriched attributes |

***

### `Attio List Deal Records`

Integration name: **ATTIO\_LIST\_DEAL\_RECORDS**

Tool to list deal records in Attio with the option to filter and sort results. Use when you need to retrieve deal records based on filter criteria or sorting requirements.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                   |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of results to return. Defaults to 500                                                                                                          |
| `sorts`   | array   |          | —       | Array of sort objects with direction, attribute, and field properties                                                                                         |
| `filter`  | object  |          | —       | Filter results to a subset. Supports operators like $and, $or, $not, $eq, $contains. Example: {'name': {'$contains': 'Acme'}} or {'status': {'$eq': 'open'}}. |
| `offset`  | integer |          | —       | Number of results to skip. Defaults to 0                                                                                                                      |

***

### `Attio List Entries`

Integration name: **ATTIO\_LIST\_ENTRIES**

DEPRECATED: Use ATTIO\_ATTIO\_POST\_V2\_LISTS\_LIST\_ENTRIES\_QUERY instead. Tool to list entries in a given list with filtering and sorting options. Use when you need to retrieve records added to a specific list in Attio. Entries are returned based on the filters and sorts provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`   | integer |          | —                    | Maximum number of results to return. Maximum 500                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `sorts`   | array   |          | —                    | Array of sort objects to sort results by attributes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `filter`  | object  |          | —                    | Filter entries by attribute values. Keys are attribute slugs (e.g., 'name', 'categories'). For status attributes, values can be either (1) status title strings (case-sensitive, e.g., 'In Progress', 'Lead') or (2) status\_id UUIDs for advanced filtering. Status titles must match exactly. Use ATTIO\_LIST\_ATTRIBUTE\_STATUSES to discover valid status options for a list. Example with text field: {'name': 'Acme Corp'}. Example with status field using title: {'deal\_stage': 'In Progress'}. Example with status field using UUID: {'deal\_stage': '0ebdb78d-3c9f-42b4-9df8-cb9d8b402c00'} |
| `offset`  | integer |          | —                    | Number of results to skip over before returning                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `list_id` | string  |     ✅    | `"enterprise_sales"` | A UUID or slug identifying the list to retrieve entries from                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Attio List List Entries`

Integration name: **ATTIO\_LIST\_LIST\_ENTRIES**

DEPRECATED: Use ATTIO\_ATTIO\_POST\_V2\_LISTS\_LIST\_ENTRIES\_QUERY instead. Tool to retrieve entries (records) that belong to a specific Attio list. Use when you need to enumerate list membership or access list-specific attribute values. This is distinct from listing all records of an object type - it specifically returns records that are members of a particular list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                                                                                                                           |
| --------- | ------- | :------: | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`    | string  |     ✅    | `"people-list"` | UUID or API slug identifying the list to retrieve entries from                                                                                                        |
| `limit`   | integer |          | —               | Maximum number of entries to return. Defaults to 500.                                                                                                                 |
| `sorts`   | array   |          | —               | Optional array of sort descriptors to order results. Each descriptor contains direction ('asc' or 'desc'), attribute name, and optionally a field for nested sorting. |
| `filter`  | object  |          | —               | Optional filter object to retrieve a subset of entries. Object with attribute names as keys and values to match. Omit or pass empty object to enumerate all entries.  |
| `offset`  | integer |          | —               | Number of entries to skip for pagination. Defaults to 0.                                                                                                              |

***

### `Attio List List Entry Attribute Values`

Integration name: **ATTIO\_LIST\_LIST\_ENTRY\_ATTRIBUTE\_VALUES**

Tool to retrieve all values for a specified attribute on a list entry in Attio. Use when you need to see the history of values for a specific attribute on a list entry. Can return only active values or include all historical values sorted chronologically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                                                                                                              |
| --------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`          | string  |     ✅    | `"press_outreach"`                       | A UUID or slug identifying the list the entry is in                                                                                                                                                                                      |
| `limit`         | integer |          | —                                        | Maximum number of results to return for pagination                                                                                                                                                                                       |
| `offset`        | integer |          | —                                        | Number of results to skip before returning                                                                                                                                                                                               |
| `entry_id`      | string  |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"` | A UUID identifying the entry                                                                                                                                                                                                             |
| `attribute`     | string  |     ✅    | `"status"`                               | A UUID or slug to identify the attribute you want to query values on                                                                                                                                                                     |
| `show_historic` | boolean |          | —                                        | If true, returns all historic values for the attribute. If false, returns only currently active value(s). Defaults to false. Can only be set to true for attributes which support historic data; will error for non-historic attributes. |

***

### `Attio List Lists`

Integration name: **ATTIO\_LIST\_LISTS**

This tool retrieves all lists available in the Attio workspace, sorted as they appear in the sidebar. Returns list metadata only (names, IDs, configuration) — not the records/entries within those lists. To fetch actual list entries, use ATTIO\_FIND\_RECORD with appropriate filters. This tool is a prerequisite for many list-related operations. Requires the list\_configuration:read permission scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Attio List Meetings`

Integration name: **ATTIO\_LIST\_MEETINGS**

Tool to list all meetings in the workspace using a deterministic sort order. Use when you need to retrieve meetings, optionally filtering by participants, linked records, or time ranges. This endpoint is in beta.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                    | Description                                                                                                                                                                                                                                                                                                                                                      |
| ------------------ | ------- | :------: | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`             | string  |          | —                                          | The order in which to sort the meetings. Defaults to start\_asc (earliest meetings first).                                                                                                                                                                                                                                                                       |
| `limit`            | integer |          | `50`                                       | The maximum number of meetings to return. Must be between 1 and 200. Defaults to 50.                                                                                                                                                                                                                                                                             |
| `cursor`           | string  |          | —                                          | A pagination cursor used to fetch the next page of meetings. Responses with more meetings will include a cursor for you to use here. If not provided, the first page will be returned.                                                                                                                                                                           |
| `timezone`         | string  |          | `"UTC"`                                    | The timezone to use when filtering meetings using ends\_from and starts\_before (IANA timezone format, e.g., 'America/New\_York'). Defaults to UTC. This property has no effect for non-all-day meetings.                                                                                                                                                        |
| `ends_from`        | string  |          | `"2024-01-01T00:00:00Z"`                   | Use ends\_from to filter meetings to only those that end after the specified timestamp (ISO 8601 format). ends\_from is inclusive, meaning that meetings that end at the exact timestamp will be included in results. When evaluating all-day meetings, we filter results from the perspective of a specific timezone (see timezone parameter).                  |
| `participants`     | string  |          | `"user@example.com,colleague@example.com"` | A comma-separated list of emails to filter meetings by. If provided, meetings will be filtered to only include meetings that include at least one of the provided emails as participants.                                                                                                                                                                        |
| `linked_object`    | string  |          | `"people"`                                 | The object to filter meetings by. Must be a valid object slug or ID (e.g., 'people', 'companies'). If provided, linked\_record\_id must also be provided.                                                                                                                                                                                                        |
| `starts_before`    | string  |          | `"2024-12-31T23:59:59Z"`                   | Use starts\_before to filter meetings to only those that start before the specified timestamp (ISO 8601 format). starts\_before is exclusive, meaning that meetings that start at the exact timestamp will not be included in results. When evaluating all-day meetings, we filter results from the perspective of a specific timezone (see timezone parameter). |
| `linked_record_id` | string  |          | `"92446133-64cf-4f83-bca9-594ca2f8da57"`   | Used to filter meetings to only those values that include a specific linked record. Must be a valid record ID (UUID format). If provided, linked\_object must also be provided.                                                                                                                                                                                  |

***

### `Attio List Notes`

Integration name: **ATTIO\_LIST\_NOTES**

Lists notes in Attio. Can list all notes in the workspace, or filter by parent object type and/or specific record. Notes are returned in reverse chronological order (newest first).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input.

| Parameter          | Type    | Required | Example                                  | Description                                                                                                                                                                                                                |
| ------------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`            | integer |          | —                                        | Maximum number of notes to return. Default is 10, maximum is 50.                                                                                                                                                           |
| `offset`           | integer |          | —                                        | The number of results to skip over before returning. Default is 0.                                                                                                                                                         |
| `parent_object`    | string  |          | `"people"`                               | The slug or ID of the parent object the notes belong to (e.g., 'people', 'companies', 'deals'). If provided, parent\_record\_id must also be specified. If omitted, lists all notes in the workspace.                      |
| `parent_record_id` | string  |          | `"92446133-64cf-4f83-bca9-594ca2f8da57"` | The UUID of the parent record to filter notes by. Must be in UUID format (e.g., '92446133-64cf-4f83-bca9-594ca2f8da57'). If provided, parent\_object must also be specified. If omitted, lists all notes in the workspace. |

***

### `Attio List Objects`

Integration name: **ATTIO\_LIST\_OBJECTS**

This tool retrieves a list of all available objects (both system-defined and user-defined) in the Attio workspace via GET /v2/objects, returning key metadata including slugs and IDs for each object. Call this tool first before ATTIO\_LIST\_RECORDS, ATTIO\_FIND\_RECORD, or ATTIO\_CREATE\_RECORD to discover valid object slugs — hardcoded slugs may not exist across workspaces. Concepts like tasks may be modeled as deals or custom objects rather than dedicated types, so confirm the correct object type before proceeding. Attribute values in responses can be arrays of time-bounded entries rather than simple scalars; downstream code must handle nested structures.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Attio List People Attribute Values`

Integration name: **ATTIO\_LIST\_PEOPLE\_ATTRIBUTE\_VALUES**

Tool to get all values for a given attribute on a person record. Use when you need to retrieve current or historic values for a specific person attribute. Historic values can be queried using the show\_historic param but cannot be queried on COMINT or enriched attributes (returns 400 error).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                        |
| --------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `limit`         | integer |          | —                                        | Maximum number of results to return                                                                                                |
| `offset`        | integer |          | —                                        | Number of results to skip                                                                                                          |
| `attribute`     | string  |     ✅    | `"name"`                                 | UUID or slug to identify the attribute                                                                                             |
| `record_id`     | string  |     ✅    | `"00d355cc-7bb2-4fc4-b648-b9516ae45540"` | UUID of the person record to fetch attribute values for                                                                            |
| `show_historic` | boolean |          | —                                        | If true, returns all historic values; defaults to false. Cannot be used with COMINT or enriched attributes (will return 400 error) |

***

### `Attio List People Record Entries`

Integration name: **ATTIO\_LIST\_PEOPLE\_RECORD\_ENTRIES**

Tool to list all entries across all lists for which a person record is the parent in Attio. Use when you need to see which lists a particular person record belongs to. Returns list information and entry IDs for each list the person appears in.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `limit`     | integer |          | —                                        | Maximum number of results to return. Default is 100, maximum is 1000 |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0        |
| `record_id` | string  |     ✅    | `"0bdd0060-7a16-4b12-af93-1c3547447d0c"` | A UUID identifying the person record                                 |

***

### `Attio List Record Attribute Values`

Integration name: **ATTIO\_LIST\_RECORD\_ATTRIBUTE\_VALUES**

Tool to retrieve all values for a specified attribute on a record in Attio. Use when you need to see the history of values for a specific attribute. Can return only active values or include historical values. Historic values cannot be queried on COMINT or enriched attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                    |
| --------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------ |
| `limit`         | integer |          | —                                        | Maximum results to return                                                      |
| `offset`        | integer |          | —                                        | Number of results to skip before returning                                     |
| `attribute`     | string  |     ✅    | `"email_addresses"`                      | Attribute identifier (UUID or slug)                                            |
| `record_id`     | string  |     ✅    | `"bf071e1f-6035-429d-b874-d83ea64ea13b"` | Record identifier (UUID)                                                       |
| `object_type`   | string  |     ✅    | `"people"`                               | Object identifier (UUID or slug)                                               |
| `show_historic` | boolean |          | —                                        | Returns all historical values when true; returns only active values when false |

***

### `Attio List Records`

Integration name: **ATTIO\_LIST\_RECORDS**

This tool lists records from a specific object type in Attio. It provides simple pagination support and returns records in creation order (oldest first). For complex filtering, use the FindRecord action instead. Standard object types include: people, companies, deals, users, workspaces. If you get a 404 error, verify the object type exists using the List Objects action first. Response attribute values are returned as arrays of time-bounded objects under a `values` map (e.g., `values['name']`), not simple scalars — handle arrays, nested objects, and empty arrays accordingly. Select attributes are accessed via `option.title`; currency, stage, and select fields may be null or empty arrays. Access records via `data.data` in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                                             |
| ------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`       | integer |          | —          | Maximum number of records to return Maximum is \~500. Check `has_more` in the response to detect additional pages; increment `offset` by `limit` to retrieve subsequent pages.                                                                                                                          |
| `offset`      | integer |          | —          | Number of records to skip for pagination                                                                                                                                                                                                                                                                |
| `object_type` | string  |     ✅    | `"people"` | The type/slug of object to list records for (also accepts 'object\_id' as an alias). Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace. Use the List Objects action to discover all available object types. |

***

### `Attio List Threads`

Integration name: **ATTIO\_LIST\_THREADS**

Tool to list threads of comments on a record or list entry in Attio. Use when you need to view all comment threads associated with a specific record or list entry. Threads contain one or more comments sorted chronologically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                                                                                                       |
| ----------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`      | string  |          | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | The list (slug or ID) to filter threads by. Must be provided together with 'entry\_id'. Use this to view threads on list entries.                 |
| `limit`     | integer |          | —                                        | Maximum number of threads to return. Default is 10, maximum is 50.                                                                                |
| `object`    | string  |          | `"people"`                               | The object type (slug or ID) to filter threads by. Must be provided together with 'record\_id'. Examples: 'people', 'companies', 'deals'.         |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0. Used for pagination.                                                               |
| `entry_id`  | string  |          | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"` | UUID of the specific list entry to filter threads by. Must be provided together with 'list'. Use this to view threads on a particular list entry. |
| `record_id` | string  |          | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"` | UUID of the specific record to filter threads by. Must be provided together with 'object'. Use this to view threads on a particular record.       |

***

### `Attio List User Record Entries`

Integration name: **ATTIO\_LIST\_USER\_RECORD\_ENTRIES**

Tool to list all entries across all lists for which a user record is the parent in Attio. Use when you need to see which lists a particular user record belongs to. Returns list information and entry IDs for each list the user appears in.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `limit`     | integer |          | —                                        | Maximum number of results to return. Default is 100, maximum is 1000 |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0        |
| `record_id` | string  |     ✅    | `"5e3fb280-007b-495a-a530-9354bde01de1"` | A UUID identifying the user record                                   |

***

### `Attio List User Records`

Integration name: **ATTIO\_LIST\_USER\_RECORDS**

Tool to list user records in Attio with optional filtering and sorting. Use when you need to retrieve workspace members or user records based on specific criteria.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                           |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of user records to return. Defaults to 500.                                                                                            |
| `sorts`   | array   |          | —       | Array of sort specifications to order results. Each sort object specifies direction ('asc'/'desc'), attribute, and optionally field or path.          |
| `filter`  | object  |          | —       | An object used to filter results to a subset of user records. Supports Attio filter syntax with operators like $eq, $not\_empty, $in, $contains, etc. |
| `offset`  | integer |          | —       | Number of user records to skip for pagination. Defaults to 0.                                                                                         |

***

### `Attio List Webhooks`

Integration name: **ATTIO\_LIST\_WEBHOOKS**

Tool to get all webhooks in your Attio workspace. Use when you need to retrieve a list of configured webhooks, their subscriptions, and statuses. Supports pagination via limit and offset parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                           |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | `10`    | The maximum number of results to return, between 10 and 100, defaults to 10. See the full guide to pagination in Attio documentation. |
| `offset`  | integer |          | `0`     | The number of results to skip over before returning, defaults to 0. See the full guide to pagination in Attio documentation.          |

***

### `Attio List Workspace Members`

Integration name: **ATTIO\_LIST\_WORKSPACE\_MEMBERS**

Tool to list workspace members (actors) so agents can reliably assign owners and resolve workspace-member IDs even when the optional Users standard object is disabled. Use when writing or assigning actor-reference attributes (e.g., record/list entry owners) that require referenced\_actor\_type=workspace-member and an actor id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Attio List Workspace Record Attribute Values`

Integration name: **ATTIO\_LIST\_WORKSPACE\_RECORD\_ATTRIBUTE\_VALUES**

Tool to retrieve all values for a specified attribute on a workspace record in Attio. Use when you need to see the history of values for a specific attribute on a workspace record. Can return only active values or include all historical values sorted chronologically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                    |
| --------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `limit`         | integer |          | —                                        | Maximum number of results to return for pagination                                                                             |
| `offset`        | integer |          | —                                        | Number of results to skip before returning                                                                                     |
| `attribute`     | string  |     ✅    | `"name"`                                 | The API slug of the attribute (e.g., 'name', 'workspace\_id', 'users', 'company', 'avatar\_url', 'created\_at', 'created\_by') |
| `record_id`     | string  |     ✅    | `"fbe4ce20-f086-40e6-a094-b693aec97862"` | A UUID identifying the workspace record                                                                                        |
| `show_historic` | boolean |          | —                                        | If true, returns all historic values for the attribute. If false, returns only currently active value(s). Defaults to false    |

***

### `Attio List Workspace Record Entries`

Integration name: **ATTIO\_LIST\_WORKSPACE\_RECORD\_ENTRIES**

Tool to list all entries across all lists for which a workspace record is the parent in Attio. Use when you need to see which lists a particular workspace record belongs to. Returns list information and entry IDs for each list the workspace appears in.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                          |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `limit`     | integer |          | —                                        | Maximum number of results to return. Default is 100, maximum is 1000 |
| `offset`    | integer |          | —                                        | Number of results to skip over before returning. Default is 0        |
| `record_id` | string  |     ✅    | `"00000000-0000-0000-0000-000000000000"` | A UUID identifying the workspace record                              |

***

### `Attio List Workspace Records`

Integration name: **ATTIO\_LIST\_WORKSPACE\_RECORDS**

Tool to list workspace records with filtering and sorting options. Use when you need to retrieve workspace-level records from Attio. Records are returned based on the filters and sorts provided. Requires record\_permission:read and object\_configuration:read scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                       |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of results to return. Defaults to 500                                                                                                                                                                                                              |
| `sorts`   | array   |          | —       | Array of sort objects to order results by attributes or paths                                                                                                                                                                                                     |
| `filter`  | object  |          | —       | Filter object to subset records. Supports operators like $and, $or, $eq, $ne, $in, $nin, etc. Example: {'$and': \[{'attribute\_slug': {'$eq': 'value'}}, {'another\_slug': {'$ne': 'other'}}]} Refer to Attio's filter syntax documentation for advanced queries. |
| `offset`  | integer |          | —       | Number of results to skip over before returning. Defaults to 0                                                                                                                                                                                                    |

***

### `Attio Patch Record`

Integration name: **ATTIO\_PATCH\_RECORD**

Tool to update people, companies, and other records by record\_id using PATCH method. For multiselect attributes, values supplied will be prepended to existing values. Use PUT endpoint to overwrite or remove multiselect values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------- | ------ | :------: | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`    | string |     ✅    | `"people"`                                                                        | A UUID or slug of the object the record belongs to. Standard object types include 'people', 'companies', 'deals'. You can also use custom object slugs from your workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `values`    | object |     ✅    | `{"tags":["Tag1","Tag2"],"status":"Active","description":"Updated via API test"}` | Attribute values keyed by api\_slug or attribute\_id. Single value for single-select, array for multiselect. PATCH behavior: multiselect values are PREPENDED to existing values. Use PUT to overwrite/remove. Type formats: text/number (plain string or number), select/status ('Option Title' string), multiselect (\['Option 1', 'Option 2']), currency {'currency\_value', 'currency\_code'}, date 'YYYY-MM-DD', personal-name {'first\_name', 'last\_name', 'full\_name'}, email {'email\_address'}, phone {'original\_phone\_number', 'country\_code'}, record-reference {'target\_record\_id', 'target\_object'}, domain ('example.com' or {'domain': '...'}). |
| `record_id` | string |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"`                                          | A UUID of the record to update.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Attio Patch V2 Lists List Entries Entry Id`

Integration name: **ATTIO\_PATCH\_V2\_LISTS\_LIST\_ENTRIES\_ENTRY\_ID**

Tool to update list entries by entry\_id in Attio. Use when you need to modify attribute values on existing list entries. For multiselect attributes, the values supplied will be created and prepended to existing values. Use the PUT endpoint to overwrite or remove multiselect attribute values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                                               | Description                                                                                                                                                                                                                                                                                                                         |
| -------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`         | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"`                                                                              | A UUID or slug of the list the list entry belongs to                                                                                                                                                                                                                                                                                |
| `entry_id`     | string |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"`                                                                              | A UUID of the list entry to update                                                                                                                                                                                                                                                                                                  |
| `entry_values` | object |     ✅    | `{"multiselect_attribute":["Select option 1","Select option 2"],"41252299-f8c7-4b5e-99c9-4ff8321d2f96":"Text value"}` | An object with an attribute `api_slug` or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For multiselect attributes, the values supplied will be created and prepended to the list of values that already exist (if any) |

***

### `Attio People Get Person`

Integration name: **ATTIO\_PEOPLE\_GET\_PERSON**

Tool to get a single person record by its record\_id in Attio. Use when you need to retrieve detailed information about a specific person. Returns all attribute values for the person with temporal and audit metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                    |
| ----------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------- |
| `record_id` | string |     ✅    | `"00d355cc-7bb2-4fc4-b648-b9516ae45540"` | UUID identifying the person record to retrieve |

***

### `Attio People List Persons`

Integration name: **ATTIO\_PEOPLE\_LIST\_PERSONS**

Tool to list person records from Attio with optional filtering and sorting. Use when you need to retrieve people based on specific criteria or get a paginated list of all people.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`   | integer |          | —       | Maximum number of records to return. Defaults to 500.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `sorts`   | array   |          | —       | Array of sort specifications to order results. Each sort object specifies direction ('asc'/'desc'), attribute, and optionally field or path.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `filter`  | object  |          | —       | Attio filter object for server-side filtering. Supports shorthand and verbose syntax. IMPORTANT: Filter by attribute slugs (e.g., 'name', 'email\_addresses'), NOT sub-properties directly. Multi-field attributes like 'name' have sub-properties (first\_name, last\_name, full\_name) accessed via nested syntax: {'name': {'first\_name': {'$eq': 'John'}}}. Do NOT use {'first\_name': 'John'} - first\_name is not a top-level attribute. CRITICAL: All operators must include the '$' prefix (e.g., $eq, NOT 'eq'). OPERATOR SUPPORT BY ATTRIBUTE TYPE: - Text: $eq, $not\_empty, $in, $contains, $starts\_with, $ends\_with, $and, $or, $not - Email-address sub-properties (email\_address, email\_domain, etc.): $eq, $contains, $starts\_with, $ends\_with. Note: $not\_empty is NOT supported for email-address sub-properties. - Personal-name sub-properties: $eq and string operators on first\_name, last\_name, full\_name - Numeric/Date: $eq, $not\_empty, $in, $lt, $lte, $gt, $gte, $and, $or, $not Examples: {'name': 'John'} for shorthand, {'name': {'last\_name': {'$contains': 'Smith'}}} for nested, {'email\_addresses': {'email\_address': {'$eq': '<user@example.com>'}}} for exact email match. |
| `offset`  | integer |          | —       | Number of records to skip for pagination. Defaults to 0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Attio Post V2 Lists List Entries`

Integration name: **ATTIO\_POST\_V2\_LISTS\_LIST\_ENTRIES**

Tool to add a record to a list as a new list entry in Attio. Use when you need to organize records into specific lists. This endpoint will throw on conflicts of unique attributes. Multiple list entries are allowed for the same parent record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                                                                               | Description                                                                                                                                                                                                                                                                                              |
| ------------------ | ------ | :------: | --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`             | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"`                                                                              | The UUID or slug identifying the list that the created list entry should belong to                                                                                                                                                                                                                       |
| `entry_values`     | object |          | `{"multiselect_attribute":["Select option 1","Select option 2"],"41252299-f8c7-4b5e-99c9-4ff8321d2f96":"Text value"}` | An object with an attribute `api_slug` or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For complete documentation on values for all attribute types, please see Attio's attribute type docs |
| `parent_object`    | string |     ✅    | `"people"`                                                                                                            | A UUID or slug identifying the object that the added parent record belongs to                                                                                                                                                                                                                            |
| `parent_record_id` | string |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"`                                                                              | A UUID identifying the record you want to add to the list. The record will become the 'parent' of the created list entry                                                                                                                                                                                 |

***

### `Attio Post V2 Lists List Entries Query`

Integration name: **ATTIO\_POST\_V2\_LISTS\_LIST\_ENTRIES\_QUERY**

Tool to list entries in a given list, with the option to filter and sort results. Use when you need to retrieve records that belong to a specific list with optional filtering and sorting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| --------- | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`    | string  |     ✅    | `"people-list"` | A UUID or slug identifying the list to retrieve entries from                                                                                                                                                                                                                                                                                                                                                                                    |
| `limit`   | integer |          | —               | The maximum number of results to return. Defaults to 500.                                                                                                                                                                                                                                                                                                                                                                                       |
| `sorts`   | array   |          | —               | An array of sort objects used to sort results. Each descriptor must contain direction ('asc' or 'desc') and either attribute or path.                                                                                                                                                                                                                                                                                                           |
| `filter`  | object  |          | —               | Filter object using list-specific attribute slugs (NOT parent object attributes). Use ATTIO\_LIST\_ATTRIBUTES with target='lists' to discover valid attribute slugs for this list. Supports shorthand syntax (e.g., {'attribute\_slug': 'value'}) for simple equality or verbose syntax with operators like $eq, $not\_empty, $in, $contains, $lt, $gt. See <https://docs.attio.com/rest-api/how-to/filtering-and-sorting> for complete syntax. |
| `offset`  | integer |          | —               | The number of results to skip over before returning. Defaults to 0.                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Attio Post V2 Objects Object Records`

Integration name: **ATTIO\_POST\_V2\_OBJECTS\_OBJECT\_RECORDS**

DEPRECATED: Use ATTIO\_CREATE\_RECORD instead. Creates a new person, company or other record. This endpoint will throw on conflicts of unique attributes. If you would prefer to update records on conflicts, please use the Assert record endpoint instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`  | string |     ✅    | `"people"`                                                                                                                           | The UUID or slug identifying the object the created record should belong to.                                                                                                                                                                                                                                                                                                                                                                                                       |
| `values`  | object |     ✅    | `{"name":[{"full_name":"John Doe","last_name":"Doe","first_name":"John"}],"email_addresses":[{"email_address":"john@example.com"}]}` | An object with an attribute `api_slug` or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For complete documentation on values for all attribute types, please see the Attio attribute type documentation. Example: {'name': \[{'first\_name': 'John', 'last\_name': 'Doe', 'full\_name': 'John Doe'}], 'email\_addresses': \[{'email\_address': '<john@example.com>'}]} |

***

### `Attio Post V2 Objects Object Records Query`

Integration name: **ATTIO\_POST\_V2\_OBJECTS\_OBJECT\_RECORDS\_QUERY**

Tool to list people, company or other records in Attio with the option to filter and sort results. Use when you need to retrieve records based on complex filter criteria or sorting requirements.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —          | Maximum number of records to return. Common values up to 500.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `sorts`   | array   |          | —          | Array of sort specifications to order results. Each sort object specifies direction ('asc'/'desc'), attribute, and optionally field or path. IMPORTANT: 'updated\_at' is NOT a valid attribute - use 'created\_at' or call List Attributes to discover valid sortable attributes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `filter`  | object  |          | —          | Attio filter object. Supports shorthand, verbose, and path-based filtering. IMPORTANT: Filter by attribute slugs (e.g., 'name', 'email\_addresses'), NOT sub-properties directly. Use ATTIO\_LIST\_ATTRIBUTES to discover correct slugs - names may differ from display titles (e.g., 'company' not 'companies'). Multi-field attributes like 'name' have sub-properties (first\_name, last\_name, full\_name) accessed via nested syntax: {'name': {'first\_name': {'$eq': 'John'}}}. Do NOT use {'first\_name': 'John'} - first\_name is not a top-level attribute. TIMESTAMP/DATE: 'created\_at' is the standard timestamp attribute. CRITICAL: 'updated\_at' is NOT valid in Attio. Use $eq/$gt/$gte/$lt/$lte on timestamp attributes: {'created\_at': {'$gte': '2024-01-01T00:00:00.000Z'}}. INTERACTION ATTRIBUTES (e.g., 'last\_email\_interaction'): Properties: owner\_member\_id ($eq/$not\_empty), interacted\_at ($eq/$gte/$gt/$lte/$lt - requires ISO8601, NOT $not\_empty), interaction\_type ($eq/$not\_empty). RECORD-REFERENCE: Use attribute slug with target\_object and target\_record\_id: {'company': {'target\_object': 'companies', 'target\_record\_id': 'id'}}. Use singular slug (e.g., 'company' not 'companies'). PATH-BASED FILTERING: {'path': \[\[object\_slug, attribute\_slug], ...], 'constraints': {property: value}}. Path is an array of \[object\_slug, attribute\_slug] pairs; constraints apply to the final attribute. Operators: $eq, $not\_empty, $in, $contains, $starts\_with, $ends\_with, $lt/$lte/$gt/$gte, $and/$or/$not. CRITICAL: All operators MUST include the $ prefix (use $gte, NOT gte). |
| `object`  | string  |     ✅    | `"people"` | The object slug or UUID to query records from (e.g., 'people', 'companies', or custom object UUID). Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `offset`  | integer |          | —          | Number of records to skip for pagination                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Attio Post V2 Objects Records Search`

Integration name: **ATTIO\_POST\_V2\_OBJECTS\_RECORDS\_SEARCH**

DEPRECATED: Use ATTIO\_SEARCH\_RECORDS instead. Tool to fuzzy search for records across one or more objects in Attio. Use when you need to find records by name, domain, email, phone number, or social handle. This endpoint is in beta and returns eventually consistent results. For results guaranteed to be up to date, use the record query endpoint instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example         | Description                                                                                                                                                                                                                   |
| ------------ | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —               | Maximum number of results to return. Defaults to 25. Range: 1-25.                                                                                                                                                             |
| `query`      | string  |     ✅    | `"alan mathis"` | Query string to search for (max 256 characters). An empty string returns a default set of results. Matches names, domains, emails, phone numbers and social handles on people and companies, and labels on all other objects. |
| `objects`    | array   |     ✅    | `["people"]`    | Specifies which objects to filter results by. At least one object must be specified. Accepts object slugs or IDs.                                                                                                             |
| `request_as` | —       |     ✅    | —               | Specifies the context in which to perform the search. Use 'workspace' to return all search results or specify a workspace member to limit results to what one specific person in your workspace can see.                      |

***

### `Attio Put V2 Lists List Entries`

Integration name: **ATTIO\_PUT\_V2\_LISTS\_LIST\_ENTRIES**

Tool to create or update a list entry for a given parent record in Attio. If an entry with the specified parent record is found, that entry will be updated. If no such entry is found, a new entry will be created instead. For multiselect attributes, all values will be either created or deleted as necessary to match the list of values supplied in the request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                                                                               | Description                                                                                                                                                                                                                                                                                                                    |
| ------------------ | ------ | :------: | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `list`             | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"`                                                                              | A UUID or slug of the list the list entry belongs to.                                                                                                                                                                                                                                                                          |
| `entry_values`     | object |          | `{"multiselect_attribute":["Select option 1","Select option 2"],"41252299-f8c7-4b5e-99c9-4ff8321d2f96":"Text value"}` | An object with an attribute api\_slug or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For multiselect attributes, all values will be either created or deleted as necessary to match the list of values supplied. |
| `parent_object`    | string |     ✅    | `"people"`                                                                                                            | A UUID or slug identifying the object that the added parent record belongs to.                                                                                                                                                                                                                                                 |
| `parent_record_id` | string |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"`                                                                              | A UUID identifying the record you want to add to the list. The record will become the 'parent' of the created list entry.                                                                                                                                                                                                      |

***

### `Attio Put V2 Lists List Entries Entry Id`

Integration name: **ATTIO\_PUT\_V2\_LISTS\_LIST\_ENTRIES\_ENTRY\_ID**

Tool to update list entries by entry\_id in Attio using PUT method. Use when you need to completely replace attribute values on existing list entries. For multiselect attributes, the values supplied will overwrite/remove the list of values that already exist (if any). Use the PATCH endpoint to add multiselect attribute values without removing those that already exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                     |
| -------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`         | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"`                                                                              | A UUID or slug of the list the list entry belongs to                                                                                                                                                                                                                                                                                                                                                                            |
| `entry_id`     | string |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"`                                                                              | A UUID of the list entry to update                                                                                                                                                                                                                                                                                                                                                                                              |
| `entry_values` | object |     ✅    | `{"multiselect_attribute":["Select option 1","Select option 2"],"41252299-f8c7-4b5e-99c9-4ff8321d2f96":"Text value"}` | An object with an attribute `api_slug` or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For multiselect attributes, the values supplied will overwrite/remove the list of values that already exist (if any). Use the PATCH endpoint to add multiselect attribute values without removing those that already exist. |

***

### `Attio Put V2 Objects Object Records`

Integration name: **ATTIO\_PUT\_V2\_OBJECTS\_OBJECT\_RECORDS**

Tool to create or update people, companies and other records in Attio using a matching attribute. Use when you want to avoid duplicate records - if a record with the same value for the matching attribute is found, it will be updated; otherwise a new record is created. If you want to avoid matching and always create new records, use the Create Record endpoint instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| -------------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`             | string |     ✅    | `"people"`                                                                                                            | A UUID or slug to identify the object the record should belong to. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `values`             | object |     ✅    | `{"multiselect_attribute":["Select option 1","Select option 2"],"41252299-f8c7-4b5e-99c9-4ff8321d2f96":"Text value"}` | An object with an attribute api\_slug or attribute\_id as the key, and a single value (for single-select attributes), or an array of values (for single or multi-select attributes) as the values. For complete documentation on values for all attribute types, please see Attio's attribute type docs. Examples of value formats by attribute type: TEXT/NUMBER: 'Text value' or 123, EMAIL: \[{'email\_address': '<test@example.com>'}], PERSONAL-NAME: \[{'first\_name': 'Test', 'last\_name': 'User', 'full\_name': 'Test User'}], DOMAIN: \[{'domain': 'example.com'}], SELECT: \['Select option 1', 'Select option 2'], RECORD-REFERENCE: \[{'target\_object': 'people', 'target\_record\_id': 'uuid'}] |
| `matching_attribute` | string |     ✅    | `"email_addresses"`                                                                                                   | The ID or slug of the attribute to use to check if a record already exists. The attribute must be unique. If a record is found with the same value for the matching attribute, that record will be updated. If no record with the same value for the matching attribute is found, a new record will be created instead. IMPORTANT: For multiselect matching attributes, new values will be added and existing values will not be deleted. For any other multiselect attribute, all values will be either created or deleted as necessary to match the list of supplied values.                                                                                                                                 |

***

### `Attio Put V2 Objects Object Records Record Id`

Integration name: **ATTIO\_PUT\_V2\_OBJECTS\_OBJECT\_RECORDS\_RECORD\_ID**

Tool to update people, companies, and other records by record\_id using PUT method. For multiselect attributes, values supplied will overwrite/remove existing values. Use PATCH endpoint to append without removing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------- | ------ | :------: | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object`    | string |     ✅    | `"people"`                                                                        | A UUID or slug of the object the record belongs to. Standard object types include 'people', 'companies', 'deals'. You can also use custom object slugs from your workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `values`    | object |     ✅    | `{"tags":["Tag1","Tag2"],"status":"Active","description":"Updated via API test"}` | Attribute values keyed by api\_slug or attribute\_id. Single value for single-select, array for multiselect. PUT behavior: multiselect values OVERWRITE/REMOVE existing values. Use PATCH endpoint to append without removing. Type formats: text/number (plain string or number), select/status ('Option Title' string), multiselect (\['Option 1', 'Option 2']), currency {'currency\_value', 'currency\_code'}, date 'YYYY-MM-DD', personal-name {'first\_name', 'last\_name', 'full\_name'}, email {'email\_address'}, phone {'original\_phone\_number', 'country\_code'}, record-reference {'target\_record\_id', 'target\_object'}, domain ('example.com' or {'domain': '...'}). |
| `record_id` | string |     ✅    | `"891dcbfc-9141-415d-9b2a-2238a6cc012d"`                                          | A UUID of the record to update.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Attio Query Records`

Integration name: **ATTIO\_QUERY\_RECORDS**

Tool to query records for a specific Attio object using server-side filtering operators and sorting. Use when you need to retrieve records based on complex filter criteria (e.g., 'get all agreements where product=X and status in Y') rather than simple listing or ID-based lookup. This avoids downloading large pages and filtering locally, which is slow and costly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —          | Maximum number of records to return. Common values up to 500.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `sorts`   | array   |          | —          | Array of sort specifications to order results. Each sort object specifies direction ('asc'/'desc'), attribute, and optionally field or path.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `filter`  | object  |          | —          | Attio filter object for server-side filtering. IMPORTANT: Always filter by attribute slugs (e.g., 'name', 'email\_addresses'), NEVER by sub-properties directly at the top level. TIMESTAMP FILTERS: All timestamp comparisons MUST use ISO8601 string format (e.g., '2024-01-01T00:00:00.000Z'). Example: {'created\_at': {'$gte': '2024-01-01T00:00:00.000Z'}}. PERSONAL-NAME: 'name' sub-properties (first\_name, last\_name, full\_name) MUST be nested under 'name'. Correct: {'name': {'first\_name': {'$contains': 'John'}, 'last\_name': {'$contains': 'Smith'}}}. WRONG: {'first\_name': {...}} - fails with 'unknown\_filter\_attribute\_slug'. Shorthand: {'name': 'John Smith'}. EMAIL: email\_addresses supports $eq, $contains, $starts\_with, $ends\_with (NOT $not\_empty). INTERACTION (e.g., 'last\_email\_interaction'): Properties: owner\_member\_id ($eq/$not\_empty), interacted\_at ($eq/$gte/$gt/$lte/$lt with ISO8601), interaction\_type ($eq/$not\_empty). RECORD-REFERENCE: {'company': {'target\_object': 'companies', 'target\_record\_id': ''}}. Multiple: {'company': {'target\_object': 'companies', 'target\_record\_id': {'$in': \['', '']}}}. Path-based: {'path': \[\['companies', 'team'], \['people', 'name']], 'constraints': {'first\_name': {'$eq': 'John'}}}. OPERATORS: $eq, $not\_empty (varies by type), $in, $contains, $starts\_with, $ends\_with, $lt/$lte/$gt/$gte, $and/$or/$not. |
| `object`  | string  |     ✅    | `"people"` | The object slug or UUID to query records from (e.g., 'people', 'companies', or custom object UUID). Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `offset`  | integer |          | —          | Number of records to skip for pagination                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Attio Search Records`

Integration name: **ATTIO\_SEARCH\_RECORDS**

Tool to fuzzy search for records across multiple objects in Attio. Use when you need to find records by name, domain, email, phone number, or social handle. This endpoint is in beta and returns eventually consistent results. Matching strategy follows the in-product search approach.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example         | Description                                                                                                      |
| ------------ | ------- | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —               | Maximum number of results to return. Range: 1-25                                                                 |
| `query`      | string  |     ✅    | `"alan mathis"` | Query string to search for. An empty string returns a default set of results. Maximum 256 characters             |
| `objects`    | array   |     ✅    | `["people"]`    | Specifies which objects to filter results by. At least one object must be specified. Accepts object slugs or IDs |
| `request_as` | —       |     ✅    | —               | Specifies the context for the search request. Can be workspace or workspace-member                               |

***

### `Attio Update Attribute`

Integration name: **ATTIO\_UPDATE\_ATTRIBUTE**

Tool to update an existing attribute by its attribute\_id or slug. Use when you need to modify attribute properties such as title, description, validation rules, or configuration settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                                                                                        |
| ------------ | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`       | object |     ✅    | —                                        | The data object containing the attribute fields to update. At least one field (title, description, api\_slug, is\_required, is\_unique, default\_value, config, or is\_archived) must be provided. |
| `target`     | string |     ✅    | `"objects"`                              | Whether the attribute is on an object or a list.                                                                                                                                                   |
| `attribute`  | string |     ✅    | `"41252299-f8c7-4b5e-99c9-4ff8321d2f96"` | A UUID or slug to identify the attribute.                                                                                                                                                          |
| `identifier` | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug to identify the object or list the attribute belongs to.                                                                                                                            |

***

### `Attio Update Company`

Integration name: **ATTIO\_UPDATE\_COMPANY**

Tool to update a company record in Attio by its record\_id. Use when you need to modify company attributes like name, description, domains, or team. For multiselect attributes, values are prepended to existing values. Note: logo\_url cannot be updated via API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                                                                                                                                                                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`    | object |     ✅    | `{"name":[{"value":"Updated Company Name"}],"domains":[{"domain":"newdomain.com"}],"description":[{"value":"Updated company description via API test"}],"primary_location":["1 Infinite Loop, Cupertino, CA, 95014, US"]}` | Attribute values to update on the company record. Keys are attribute slugs; values are arrays of value objects. Type formats: text/number {'value': x}, currency {'currency\_value', 'currency\_code'}, date {'value': 'YYYY-MM-DD'}, domain {'domain': '...'} (do NOT include 'root\_domain'), select/status {'option': 'Title'} (must match workspace options; use List Attributes to discover), email {'email\_address': '...'}, phone {'original\_phone\_number', 'country\_code'}, record-reference {'target\_record\_id', 'target\_object'}, location (address string or object). For multiselect, values are prepended (not replaced). logo\_url cannot be updated via API. |
| `record_id` | string |     ✅    | `"0059945e-fdff-4ae1-a200-5995bdfd7831"`                                                                                                                                                                                   | The UUID identifying the company record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |

***

### `Attio Update Deal Record`

Integration name: **ATTIO\_UPDATE\_DEAL\_RECORD**

Tool to update an existing deal record in Attio by record ID. Uses PATCH to partially update only the provided fields, leaving other fields unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                                                                                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`    | object |     ✅    | `{"name":["Updated Deal Name - Test Successful"],"owner":["user@example.com"],"stage":["In Progress"],"value":[{"currency_value":5000}],"associated_company":[{"target_object":"companies","target_record_id":"92446133-64cf-4f83-bca9-594ca2f8da57"}]}` | Attribute values to update on the deal record. Keys are attribute slugs; values are arrays. Type formats: text/number use plain strings, currency {'currency\_value': N}, select/status use plain string (recommended) or {'option'/'status': 'Title'}, actor-reference use email string or {'workspace\_member\_email\_address': '...'} (use ATTIO\_LIST\_WORKSPACE\_MEMBERS for valid emails), record-reference {'target\_object': '...', 'target\_record\_id': 'uuid'}. Auto-correction: {'value': '...'} is auto-converted to a plain string. |
| `record_id` | string |     ✅    | `"edc68d6a-d682-4d29-8e21-328983291ef0"`                                                                                                                                                                                                                 | A UUID of the deal record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Attio Update Entry`

Integration name: **ATTIO\_UPDATE\_ENTRY**

DEPRECATED: Use ATTIO\_ATTIO\_PATCH\_V2\_LISTS\_LIST\_ENTRIES\_ENTRY\_ID instead. Tool to update list entries by their ID in Attio. Use when you need to modify attribute values on existing list entries. When multiselect attributes are included, the values supplied will be prepended to existing values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                                                                                                         |
| -------------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id`      | string |     ✅    | `"enterprise_sales"`                     | A UUID or slug identifying the list containing the entry                                                                                            |
| `entry_id`     | string |     ✅    | `"2e6e29ea-c4e0-4f44-842d-78a891f8c156"` | A UUID identifying the specific list entry to update                                                                                                |
| `entry_values` | object |     ✅    | —                                        | Attribute values to update. Field values organized by attribute slug or ID. For multiselect attributes, values will be prepended to existing values |

***

### `Attio Update List`

Integration name: **ATTIO\_UPDATE\_LIST**

Tool to update an existing list in Attio. Use when you need to modify list properties like name, api\_slug, or permissions. Lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level. Changing the parent object of a list is not possible through the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                                                                  | Description                                                                                                                                                                                                                                                                                              |
| ------------------------- | ------ | :------: | ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list`                    | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"`                                                 | A UUID or slug to identify the list to update                                                                                                                                                                                                                                                            |
| `name`                    | string |          | `"Enterprise Sales"`                                                                     | The human-readable name of the list                                                                                                                                                                                                                                                                      |
| `api_slug`                | string |          | `"enterprise_sales"`                                                                     | A unique, human-readable slug to access the list through API calls. Should be formatted in snake case                                                                                                                                                                                                    |
| `workspace_access`        | string |          | `"read-and-write"`                                                                       | The level of access granted to all members of the workspace for this list. Pass null to keep the list private and only grant access to specific workspace members. Note: Lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level |
| `workspace_member_access` | array  |          | `[{"level":"full-access","workspace_member_id":"50cf242c-7fa3-4cad-87d0-75b1af71c57b"}]` | The level of access granted to specific workspace members for this list. Pass an empty array to grant access to no workspace members. Note: Lists must have either workspace\_access set to 'full-access' or one or more workspace\_member\_access with 'full-access' level                              |

***

### `Attio Update Object`

Integration name: **ATTIO\_UPDATE\_OBJECT**

Tool to update a single object's configuration in Attio. Use when you need to modify an object's API slug, singular noun, or plural noun. Standard objects (people, companies, deals, users, workspaces) and custom objects can be updated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example    | Description                                                                                                                                                                                     |
| ----------- | ------ | :------: | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`      | object |     ✅    | —          | The object data to update. Provide at least one of api\_slug, singular\_noun, or plural\_noun.                                                                                                  |
| `object_id` | string |     ✅    | `"people"` | A UUID or slug to identify the object to update. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace. |

***

### `Attio Update Person`

Integration name: **ATTIO\_UPDATE\_PERSON**

Tool to update a person record in Attio by its record\_id. Use when you need to modify person attributes like name, email, job title, or phone numbers. For multiselect attributes, values are prepended to existing values. Note: avatar\_url cannot be updated via API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                                                                                                                                                                                                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`    | object |     ✅    | `{"name":[{"full_name":"John Doe","last_name":"Doe","first_name":"John"}],"job_title":[{"value":"Senior Software Engineer"}],"description":[{"value":"Updated person description via API"}],"email_addresses":[{"email_address":"john.doe@example.com"}]}` | Attribute values to update on the person record. Keys are attribute slugs; values are arrays of value objects. Type formats: text/number {'value': x}, personal-name {'first\_name', 'last\_name', 'full\_name'}, email {'email\_address': '...'}, phone {'original\_phone\_number', 'country\_code'}, currency {'currency\_value', 'currency\_code'}, date {'value': 'YYYY-MM-DD'}, select/status {'option': 'Title'} (must match workspace options; use List Attributes to discover), record-reference {'target\_record\_id', 'target\_object'}, location (address string or object). For multiselect, values are prepended (not replaced); use Assert Person to overwrite. avatar\_url cannot be updated via API. |
| `record_id` | string |     ✅    | `"00d355cc-7bb2-4fc4-b648-b9516ae45540"`                                                                                                                                                                                                                   | The UUID identifying the person record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Attio Update Record`

Integration name: **ATTIO\_UPDATE\_RECORD**

This tool updates an existing record in Attio for a specified object type (people, companies, deals, users, workspaces, etc.). It uses PATCH to partially update only the provided fields, leaving other fields unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                                                                                                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`      | object |     ✅    | `{"name":[{"full_name":"Jane Smith","last_name":"Smith","first_name":"Jane"}],"owner":["user@example.com"],"stage":["Active"],"job_title":["Senior Developer"],"categories":["Technology"],"credits_bought":[{"currency_value":1400}]}` | Attribute values to update on the record. Keys are attribute slugs; values are arrays. Type formats: text/number/date use plain strings, currency {'currency\_value': N}, select/status use plain string (recommended) or {'option'/'status': 'Title'}, personal-name {'first\_name', 'last\_name', 'full\_name'}, email {'email\_address': '...'}, phone {'original\_phone\_number', 'country\_code'}, actor-reference use email string or {'workspace\_member\_email\_address': '...'} (use ATTIO\_LIST\_WORKSPACE\_MEMBERS for valid emails), record-reference {'target\_object': '...', 'target\_record\_id': 'uuid'}. Auto-correction: {'value': '...'} is auto-converted to a plain string. |
| `record_id`   | string |     ✅    | `"92446133-64cf-4f83-bca9-594ca2f8da57"`                                                                                                                                                                                                | The unique identifier of the record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `object_type` | string |     ✅    | `"people"`                                                                                                                                                                                                                              | The type of object to update. Standard object types include 'people', 'companies', 'deals', 'users', 'workspaces'. You can also use custom object types from your workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Attio Update Select Option`

Integration name: **ATTIO\_UPDATE\_SELECT\_OPTION**

Tool to update an existing select option for a select or multiselect attribute in Attio. Use when you need to rename an option or archive it. Archived options are hidden from selection but preserve historical data for records that used them.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example       | Description                                                                   |
| ------------ | ------ | :------: | ------------- | ----------------------------------------------------------------------------- |
| `data`       | object |     ✅    | —             | The fields to update on the select option                                     |
| `option`     | string |     ✅    | `"Medium"`    | A UUID or select option title to identify the select option to update         |
| `target`     | string |     ✅    | `"objects"`   | Whether the attribute is on an object or a list.                              |
| `attribute`  | string |     ✅    | `"priority"`  | A UUID or slug to identify the select or multiselect attribute                |
| `identifier` | string |     ✅    | `"companies"` | A UUID or slug to identify the object or list the select attribute belongs to |

***

### `Attio Update Status`

Integration name: **ATTIO\_UPDATE\_STATUS**

Tool to update a status on a status attribute on either an object or a list in Attio. Use when you need to modify status properties like title, celebration settings, target time, or archive status. Company and person objects do not support status attributes at this time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                          |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `data`       | object |     ✅    | —                                        | The status data to update. At least one field must be provided.                                                                      |
| `status`     | string |     ✅    | `"e842b1d9-cd15-4d8a-9c93-8fd9c42071ac"` | A UUID or status title to identify the status to update                                                                              |
| `target`     | string |     ✅    | `"lists"`                                | Whether the attribute is on an object or a list. Note that company and person objects do not support status attributes at this time. |
| `attribute`  | string |     ✅    | `"41252299-f8c7-4b5e-99c9-4ff8321d2f96"` | A UUID or slug to identify the attribute to update the status on                                                                     |
| `identifier` | string |     ✅    | `"33ebdbe9-e529-47c9-b894-0ba25e9c15c0"` | A UUID or slug to identify the object or list the status attribute belongs to                                                        |

***

### `Attio Update Task`

Integration name: **ATTIO\_UPDATE\_TASK**

Tool to update an existing task in Attio by its task\_id. Use when you need to modify a task's deadline, completion status, linked records, or assignees. Only these four fields can be updated via this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                            |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `data`    | object |     ✅    | —                                        | The fields to update. Only deadline\_at, is\_completed, linked\_records, and assignees can be updated. |
| `task_id` | string |     ✅    | `"649e34f4-c39a-4f4d-99ef-48a36bef8f04"` | The ID of the task to update.                                                                          |

***

### `Attio Update User Record`

Integration name: **ATTIO\_UPDATE\_USER\_RECORD**

Tool to update a user record in Attio by its record\_id. Use when you need to modify user attributes like user\_id, primary\_email\_address, person, or workspace references. Attributes not included in the request will remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ----------- | ------ | :------: | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`    | object |     ✅    | `{"user_id":[{"value":"updated_user_456"}],"primary_email_address":[{"email_address":"user@example.com"}]}` | The attribute values to update on the user record. Each key is an attribute slug, and values are arrays of attribute value objects. Attributes that are not included in the request body will not be changed. Common user attributes include: user\_id, primary\_email\_address, person, workspace. Different attribute types require different value structures: (1) Text fields (e.g., user\_id): use \[{'value': 'text'}]. (2) Email fields (e.g., primary\_email\_address): use \[{'email\_address': '<user@example.com>'}]. (3) Record-reference fields (e.g., person, workspace): use \[{'target\_record\_id': 'uuid', 'target\_object': 'people'}]. |
| `record_id` | string |     ✅    | `"2c2dd684-f22f-4e2d-9dce-3077bb15a557"`                                                                    | The ID of the user record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Attio Update Webhook`

Integration name: **ATTIO\_UPDATE\_WEBHOOK**

Tool to update a webhook's target URL and/or event subscriptions. Use when you need to modify an existing webhook configuration in Attio.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                                               |
| --------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `target_url`    | string |          | `"https://example.com/webhook"`          | URL where the webhook events will be delivered to. Must be an HTTPS URL.                                                  |
| `webhook_id`    | string |     ✅    | `"23e42eaf-323a-41da-b5bb-fd67eebda553"` | A UUID which identifies the webhook.                                                                                      |
| `subscriptions` | array  |          | —                                        | One or more events the webhook is subscribed to. Each subscription contains an event type and optional filter conditions. |

***

### `Attio Update Workspace Record`

Integration name: **ATTIO\_UPDATE\_WORKSPACE\_RECORD**

Tool to update a workspace record by ID using PATCH method. Only the attributes provided in the request will be updated; other attributes remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------- | ------ | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`    | object |     ✅    | `{"name":[{"value":"Updated Workspace Name"}]}` | The attribute values to update on the workspace record. Only the attributes included will be updated; other attributes will remain unchanged. Common workspace attributes include: (1) 'name': workspace name as a text field, e.g., {"name": \[{"value": "Updated Workspace Name"}]}. (2) 'workspace\_id': workspace identifier. (3) 'users': record references to user records. (4) 'company': record reference to a company record. (5) 'avatar\_url': URL to workspace avatar image. Each attribute requires an array of value objects with attribute-type-specific fields. |
| `record_id` | string |     ✅    | `"c200d84d-67a2-5f8e-9ec3-8c8dec0cb221"`        | The UUID of the workspace record to update                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***


# Basecamp

Your Toolhouse AI Worker can connect to Basecamp using 140 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](https://toolhouse.app/auth-connections?authkit_slugs=basecamp).

## Tools (140)

### `Basecamp Complete Todo`

Integration name: **BASECAMP\_COMPLETE\_TODO**

Tool to mark a to-do as completed in Basecamp. Use when you need to complete a to-do item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                            |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------ |
| `todo_id`   | integer |     ✅    | `9378295361` | The ID of the specific to-do item to mark as completed |
| `bucket_id` | integer |     ✅    | `45141753`   | The ID of the project/bucket containing the to-do      |

***

### `Basecamp Create Card`

Integration name: **BASECAMP\_CREATE\_CARD**

Tool to create a new card in a column of a Basecamp card table. Use when you need to add a card to a card table column with optional content and due date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                                                | Description                                                                       |
| ----------- | ------- | :------: | ------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------- |
| `title`     | string  |     ✅    | `"Test Card via API"`                                                                                  | The card's title. This is required and should be a descriptive name for the card  |
| `due_on`    | string  |          | `"2025-12-20"`                                                                                         | Deadline for the card in ISO 8601 format (YYYY-MM-DD)                             |
| `notify`    | boolean |          | `false`                                                                                                | Whether to alert assignees. Defaults to false if not specified                    |
| `content`   | string  |          | `"This is a test card created via the Basecamp API to verify the CREATE_CARD endpoint functionality."` | Card description supporting HTML. Refer to the Rich text guide for permitted tags |
| `bucket_id` | integer |     ✅    | `45141753`                                                                                             | The project/bucket ID where the card table is located                             |
| `column_id` | integer |     ✅    | `9378040609`                                                                                           | The card table column/list ID where the card will be created                      |

***

### `Basecamp Create Card Step`

Integration name: **BASECAMP\_CREATE\_CARD\_STEP**

Tool to create a step within a card in a Basecamp card table. Use when you need to add a subtask or checklist item to an existing card with optional due date and assignees.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                              | Description                                             |
| ----------- | ------- | :------: | ------------------------------------ | ------------------------------------------------------- |
| `title`     | string  |     ✅    | `"Review and validate requirements"` | The name of the step being created. This is required.   |
| `due_on`    | string  |          | `"2021-01-01"`                       | Due date for the step in ISO 8601 format (YYYY-MM-DD).  |
| `card_id`   | integer |     ✅    | `9383747205`                         | The card ID where the step will be created.             |
| `assignees` | array   |          | `[30068628,270913789]`               | Array of person IDs that will be assigned to this step. |
| `bucket_id` | integer |     ✅    | `45163278`                           | The project/bucket ID where the card table is located.  |

***

### `Basecamp Create Chatbot`

Integration name: **BASECAMP\_CREATE\_CHATBOT**

Tool to create a new chatbot in a Basecamp Campfire chat. Use when you need to add an automated bot to a chat room for posting messages and responding to commands.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                         | Description                                                                                                                               |
| -------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`      | integer |     ✅    | `9378040573`                    | The ID of the Campfire chat to add the chatbot to                                                                                         |
| `bucket_id`    | integer |     ✅    | `45141753`                      | The ID of the project bucket containing the chat                                                                                          |
| `command_url`  | string  |          | `"https://example.com/webhook"` | HTTPS url that Basecamp should call when the bot is addressed. Optional for non-interactive bots.                                         |
| `service_name` | string  |     ✅    | `"testbot1734287400"`           | Chatbot name, which will be used to invoke queries and commands on interactive bots. No spaces, emoji or non-word characters are allowed. |

***

### `Basecamp Create Chatbot Line`

Integration name: **BASECAMP\_CREATE\_CHATBOT\_LINE**

Tool to post a message as a chatbot to a Basecamp Campfire. Use when you need to post messages via a chatbot integration without OAuth authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                         | Description                                                                                                                                                                                                             |
| ------------- | ------- | :------: | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`     | integer |     ✅    | `9378040573`                                    | The Campfire chat ID to post the message to.                                                                                                                                                                            |
| `content`     | string  |     ✅    | `"Hello from chatbot! This is a test message."` | The HTML body text for the Campfire message. Supports rich text formatting with permitted HTML tags including: strong, em, a, ul, ol, li, blockquote, pre, code, table, tr, td, th, thead, tbody, details, and summary. |
| `bucket_id`   | integer |     ✅    | `45141753`                                      | The project/bucket ID where the chat exists.                                                                                                                                                                            |
| `chatbot_key` | string  |     ✅    | `"your_chatbot_key_here"`                       | The unique authentication key for the chatbot. This key is provided when creating a chatbot integration and allows posting without OAuth.                                                                               |

***

### `Basecamp Create Document`

Integration name: **BASECAMP\_CREATE\_DOCUMENT**

Tool to create a new document in a Basecamp vault. Use when you need to publish a document in a specific project vault with title, HTML content, and optional publication status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                                                                                                       | Description                                                                                                                   |
| ----------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `title`     | string  |     ✅    | `"API Test Document"`                                                                                                                                         | The title of the document. This is required and should be a descriptive name.                                                 |
| `status`    | string  |          | `"active"`                                                                                                                                                    | Publication status. Set to 'active' to publish immediately upon creation. If not specified, document may be created as draft. |
| `content`   | string  |     ✅    | `"<div><strong>This is a test document created via API</strong><p>Testing the CREATE_DOCUMENT endpoint with proper authentication and parameters.</p></div>"` | Document body in HTML format. See Basecamp Rich text guide for permitted tags.                                                |
| `vault_id`  | integer |     ✅    | `9378040571`                                                                                                                                                  | The ID of the vault where the document will be created.                                                                       |
| `bucket_id` | integer |     ✅    | `45141753`                                                                                                                                                    | The ID of the project bucket where the vault exists.                                                                          |

***

### `Basecamp Create Project Construction`

Integration name: **BASECAMP\_CREATE\_PROJECT\_CONSTRUCTION**

Tool to create a new project from a Basecamp template asynchronously. Use when you need to instantiate a project based on an existing template. Poll the returned URL to monitor construction progress until status becomes 'completed'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example    | Description                                                                     |
| ------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------- |
| `project`     | object  |     ✅    | —          | Project details including the required name and optional description.           |
| `template_id` | integer |     ✅    | `45129806` | The ID of the template to use for creating the project. This field is required. |

***

### `Basecamp Create Todo`

Integration name: **BASECAMP\_CREATE\_TODO**

DEPRECATED: Use BASECAMP\_POST\_BUCKETS\_TODOLISTS\_TODOS instead. Tool to create a new to-do in a Basecamp to-do list. Use when you need to add a task with optional description, assignees, and due date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                                               | Description                                                                              |
| --------------------------- | ------- | :------: | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `due_on`                    | string  |          | `"2025-12-31"`                                                                        | Completion deadline in YYYY-MM-DD format.                                                |
| `notify`                    | boolean |          | `true`                                                                                | When true, notifies assignees of their assignment. Defaults to false if not specified.   |
| `content`                   | string  |     ✅    | `"Test TODO created via API"`                                                         | What the to-do is for (main title/content). This field is required.                      |
| `bucket_id`                 | integer |     ✅    | `45141753`                                                                            | The project/bucket ID where the to-do list exists.                                       |
| `starts_on`                 | string  |          | `"2025-12-15"`                                                                        | Start date in YYYY-MM-DD format; runs until due\_on.                                     |
| `description`               | string  |          | `"<div>This is a test todo to verify the CREATE_TODO endpoint works correctly</div>"` | Additional information about the task; supports HTML formatting per the Rich text guide. |
| `todolist_id`               | integer |     ✅    | `9378249076`                                                                          | The to-do list ID where the to-do will be created.                                       |
| `assignee_ids`              | array   |          | `[123,456]`                                                                           | User IDs to assign the to-do to; retrieve via Get people endpoint.                       |
| `completion_subscriber_ids` | array   |          | `[789,456]`                                                                           | User IDs to notify upon completion; retrieve via Get people endpoint.                    |

***

### `Basecamp Create Todolist Group`

Integration name: **BASECAMP\_CREATE\_TODOLIST\_GROUP**

Tool to create a new to-do group within a parent to-do list in Basecamp. Use when organizing todos into groups with optional color coding.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                    | Description                                                                                                                       |
| ------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string  |     ✅    | `"Testing Group Creation"` | The title/name of the to-do list group to create.                                                                                 |
| `color`       | string  |          | `"blue"`                   | Visual identifier color for the group. Accepted values: white, red, orange, yellow, green, blue, aqua, purple, gray, pink, brown. |
| `bucket_id`   | integer |     ✅    | `45163278`                 | The project/bucket ID where the to-do list exists.                                                                                |
| `todolist_id` | integer |     ✅    | `9383749466`               | The to-do list ID where the group will be created.                                                                                |

***

### `Basecamp Create Upload`

Integration name: **BASECAMP\_CREATE\_UPLOAD**

Tool to create a new upload (file) in a Basecamp vault. Use when you need to create an upload entry for a previously uploaded attachment in a specific project vault.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                         | Description                                                                                                          |
| ----------------- | ------- | :------: | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `vault_id`        | integer |     ✅    | `9378040571`                                    | The vault ID where the upload will be created.                                                                       |
| `base_name`       | string  |          | `"test_upload_file"`                            | A new filename without extension (e.g., 'pizza' for 'pizza.png'). The original extension is preserved.               |
| `bucket_id`       | integer |     ✅    | `45141753`                                      | The project/bucket ID where the vault exists.                                                                        |
| `description`     | string  |          | `"<div>Test upload file for API testing</div>"` | Information about the upload in HTML format. Supports HTML tags per the Rich text guide.                             |
| `attachable_sgid` | string  |     ✅    | `"your_signed_global_id_here"`                  | A signed global ID for an uploaded attachment obtained from the Create attachment endpoint (POST /attachments.json). |

***

### `Basecamp Create Vault`

Integration name: **BASECAMP\_CREATE\_VAULT**

Tool to create a new vault (folder) within an existing parent vault in a Basecamp project. Use when you need to organize documents and files hierarchically by creating nested vaults.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                              | Description                                              |
| ----------- | ------- | :------: | ------------------------------------ | -------------------------------------------------------- |
| `title`     | string  |     ✅    | `"Test Nested Vault Created by API"` | The name of the vault being created. This is required.   |
| `vault_id`  | integer |     ✅    | `9378040571`                         | The parent vault ID where the new vault will be created. |
| `bucket_id` | integer |     ✅    | `45141753`                           | The project/bucket ID where the parent vault exists.     |

***

### `Basecamp Delete Buckets Card Tables Columns On Hold`

Integration name: **BASECAMP\_DELETE\_BUCKETS\_CARD\_TABLES\_COLUMNS\_ON\_HOLD**

Tool to remove the on-hold section from a card table column. Use when you need to delete the on-hold section from a column in a Basecamp project's card table.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                          |
| ----------- | ------- | :------: | ------------ | -------------------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45129794`   | The project identifier (bucket ID) containing the card table.        |
| `column_id` | integer |     ✅    | `9374713934` | The unique identifier for the column to remove on-hold section from. |

***

### `Basecamp Delete Buckets Recordings Pin`

Integration name: **BASECAMP\_DELETE\_BUCKETS\_RECORDINGS\_PIN**

Tool to unpin a recording (message) in a Basecamp project. Use when you need to remove the pinned status from a message on a message board or project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45129794`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9376966465` | The ID of the recording (message) to unpin.              |

***

### `Basecamp Delete Campfire Line`

Integration name: **BASECAMP\_DELETE\_CAMPFIRE\_LINE**

Tool to delete a Campfire line from a chat conversation. Use when removing a specific message from a Basecamp Campfire chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                      |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------------- |
| `chat_id`   | integer |     ✅    | `9378040573` | The Campfire/chat conversation identifier                        |
| `line_id`   | integer |     ✅    | `9383680625` | The specific message line identifier to delete from the Campfire |
| `bucket_id` | integer |     ✅    | `45141753`   | The project identifier (bucket ID) containing the Campfire       |

***

### `Basecamp Delete Chatbot`

Integration name: **BASECAMP\_DELETE\_CHATBOT**

Tool to delete a chatbot from a Campfire chat. Use when removing a chatbot from the account. Note: Deletion is account-wide and only account administrators can delete chatbots.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                      |
| ------------ | ------- | :------: | ------------ | ---------------------------------------------------------------- |
| `chat_id`    | integer |     ✅    | `9378040573` | The Campfire/chat room identifier where the chatbot is installed |
| `bucket_id`  | integer |     ✅    | `45141753`   | The project/bucket identifier containing the chat                |
| `chatbot_id` | integer |     ✅    | `50630689`   | The chatbot's unique identifier to delete                        |

***

### `Basecamp Delete Message Type`

Integration name: **BASECAMP\_DELETE\_MESSAGE\_TYPE**

Tool to delete a message type from a Basecamp project. Use when removing a custom message category. Permanently removes the specified message type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example     | Description                           |
| ------------- | ------- | :------: | ----------- | ------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`  | The project identifier (bucket ID)    |
| `category_id` | integer |     ✅    | `108296377` | The message type identifier to delete |

***

### `Basecamp Delete Webhooks`

Integration name: **BASECAMP\_DELETE\_WEBHOOKS**

Tool to delete a webhook from a Basecamp project. Use when you need to remove a webhook subscription from a project. Permanently deletes the specified webhook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                        |
| ------------ | ------- | :------: | ---------- | ---------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753` | The project identifier (bucket ID) |
| `webhook_id` | integer |     ✅    | `1717951`  | The webhook identifier to delete   |

***

### `Basecamp Get Buckets Card Tables Lists Cards`

Integration name: **BASECAMP\_GET\_BUCKETS\_CARD\_TABLES\_LISTS\_CARDS**

Tool to retrieve a paginated list of cards from a card table column. Use when you need to fetch cards from a specific list/column within a Basecamp project's card table.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                           |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`          | Optional. Page number for pagination. Note: It's recommended to use the Link header from responses rather than manually constructing pagination URLs. |
| `list_id`   | integer |     ✅    | `9374713924` | The card table column identifier (also referred to as column\_id). This is the ID of the list/column containing the cards.                            |
| `bucket_id` | integer |     ✅    | `45129794`   | The project identifier (bucket ID) containing the card table.                                                                                         |

***

### `Basecamp Get Buckets Categories`

Integration name: **BASECAMP\_GET\_BUCKETS\_CATEGORIES**

Tool to retrieve all message types (categories) from a Basecamp project. Use when you need to list all available message categories for organizing messages in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example    | Description                                                 |
| ----------- | ------- | :------: | ---------- | ----------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45129794` | The ID of the project bucket to retrieve message types from |

***

### `Basecamp Get Buckets Chats Integrations`

Integration name: **BASECAMP\_GET\_BUCKETS\_CHATS\_INTEGRATIONS**

Tool to retrieve all chatbot integrations from a Campfire chat. Use when you need to get the list of chatbots accessible to the account with chat-specific line URLs for posting messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                               |
| ----------- | ------- | :------: | ------------ | --------------------------------------------------------- |
| `chat_id`   | integer |     ✅    | `9374713912` | The ID of the Campfire chat to retrieve integrations from |
| `bucket_id` | integer |     ✅    | `45129794`   | The ID of the project bucket containing the chat          |

***

### `Basecamp Get Buckets Chats Lines`

Integration name: **BASECAMP\_GET\_BUCKETS\_CHATS\_LINES**

Tool to retrieve a paginated list of Campfire lines from a specific chat. Use when you need to fetch messages from a Campfire conversation in a Basecamp project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                    |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------- |
| `chat_id`   | integer |     ✅    | `9374713912` | The Campfire ID whose lines to retrieve.       |
| `bucket_id` | integer |     ✅    | `45129794`   | The project/bucket ID containing the Campfire. |

***

### `Basecamp Get Buckets Inboxes Forwards`

Integration name: **BASECAMP\_GET\_BUCKETS\_INBOXES\_FORWARDS**

Tool to retrieve a paginated list of active email forwards from a project's inbox. Use when you need to fetch forwarded emails in a Basecamp inbox.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                            |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------ |
| `inbox_id`  | integer |     ✅    | `9374713920` | The ID of the specific inbox to retrieve forwards from |
| `bucket_id` | integer |     ✅    | `45129794`   | The ID of the project bucket containing the inbox      |

***

### `Basecamp Get Buckets Message Boards Messages`

Integration name: **BASECAMP\_GET\_BUCKETS\_MESSAGE\_BOARDS\_MESSAGES**

Tool to retrieve a paginated list of active messages from a message board in a Basecamp project. Use when you need to fetch messages from a specific message board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example      | Description                                                                                                       |
| ------------------ | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------- |
| `page`             | integer |          | —            | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of messages. |
| `bucket_id`        | integer |     ✅    | `45129794`   | The project identifier (bucket ID)                                                                                |
| `message_board_id` | integer |     ✅    | `9374713902` | The message board identifier                                                                                      |

***

### `Basecamp Get Buckets Question Answers`

Integration name: **BASECAMP\_GET\_BUCKETS\_QUESTION\_ANSWERS**

Tool to retrieve a specific question answer by ID from a Basecamp project. Use when you need to fetch details about an automatic check-in question answer including its content, creator, and associated comments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example    | Description                                                                |
| ----------- | ------- | :------: | ---------- | -------------------------------------------------------------------------- |
| `answer_id` | integer |     ✅    | `1`        | The unique identifier of the specific question answer to retrieve          |
| `bucket_id` | integer |     ✅    | `45129794` | The unique identifier of the project bucket containing the question answer |

***

### `Basecamp Get Buckets Questionnaires`

Integration name: **BASECAMP\_GET\_BUCKETS\_QUESTIONNAIRES**

Tool to retrieve a specific questionnaire (automatic check-ins) from a Basecamp project. Use when you need to fetch details about a questionnaire including its questions count and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example      | Description                        |
| ------------------ | ------- | :------: | ------------ | ---------------------------------- |
| `bucket_id`        | integer |     ✅    | `45141753`   | The project identifier (bucket ID) |
| `questionnaire_id` | integer |     ✅    | `9378040581` | The questionnaire identifier       |

***

### `Basecamp Get Buckets Questionnaires Questions`

Integration name: **BASECAMP\_GET\_BUCKETS\_QUESTIONNAIRES\_QUESTIONS**

Tool to retrieve a paginated list of questions from a questionnaire in a Basecamp project. Use when you need to fetch questions from a specific questionnaire.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example      | Description                                                                                                        |
| ------------------ | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------ |
| `page`             | integer |          | —            | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of questions. |
| `bucket_id`        | integer |     ✅    | `45138126`   | The project identifier (bucket ID)                                                                                 |
| `questionnaire_id` | integer |     ✅    | `9376974306` | The questionnaire identifier                                                                                       |

***

### `Basecamp Get Buckets Questions`

Integration name: **BASECAMP\_GET\_BUCKETS\_QUESTIONS**

Tool to retrieve a specific check-in question by ID from a Basecamp project. Use when you already know the question ID and need its details without listing all questions from a questionnaire.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                |
| ------------- | ------- | :------: | ------------ | ---------------------------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45138126`   | The project identifier (bucket ID)                         |
| `question_id` | integer |     ✅    | `9376974306` | The unique identifier of the specific question to retrieve |

***

### `Basecamp Get Buckets Recordings Events`

Integration name: **BASECAMP\_GET\_BUCKETS\_RECORDINGS\_EVENTS**

Tool to retrieve a paginated list of events for a recording. Use when you need to fetch change history from a specific recording in a Basecamp project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                     |
| -------------- | ------- | :------: | ------------ | ----------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45129794`   | The project/bucket ID containing the recording. |
| `recording_id` | integer |     ✅    | `9374717146` | The recording ID whose events to retrieve.      |

***

### `Basecamp Get Buckets Schedules Entries`

Integration name: **BASECAMP\_GET\_BUCKETS\_SCHEDULES\_ENTRIES**

Tool to retrieve a paginated list of schedule entries from a schedule. Use when you need to fetch entries from a specific schedule in a Basecamp project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                                                                             |
| ------------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------- |
| `status`      | string  |          | `"archived"` | Filter by entry status. Use 'archived' for archived entries, 'trashed' for trashed entries, or omit for active entries. |
| `bucket_id`   | integer |     ✅    | `45138126`   | The project identifier (bucket ID)                                                                                      |
| `schedule_id` | integer |     ✅    | `9376974305` | The schedule identifier                                                                                                 |

***

### `Basecamp Get Buckets Todolists Groups`

Integration name: **BASECAMP\_GET\_BUCKETS\_TODOLISTS\_GROUPS**

Tool to retrieve a paginated list of active groups from a to-do list in a Basecamp project. Use when you need to list all groups within a specific to-do list for organizing tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                                                                                                 |
| ------------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`        | integer |          | `1`          | Page number for pagination. Use the next\_page\_url from the response or increment manually. Omit to get the first page.                    |
| `status`      | string  |          | `"archived"` | Filter to return groups with specific status. Accepts 'archived' or 'trashed' to return groups with those statuses instead of active groups |
| `bucket_id`   | integer |     ✅    | `45138126`   | The ID of the project bucket containing the to-do list                                                                                      |
| `todolist_id` | integer |     ✅    | `9376982457` | The ID of the to-do list to retrieve groups from                                                                                            |

***

### `Basecamp Get Buckets Todolists Todos`

Integration name: **BASECAMP\_GET\_BUCKETS\_TODOLISTS\_TODOS**

Tool to retrieve a paginated list of to-dos from a specific to-do list in a Basecamp project. Use when you need to fetch to-do items from a to-do list, optionally filtering by status or completion state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                                                                                      |
| ------------- | ------- | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------------- |
| `page`        | integer |          | `1`          | Page number for pagination. Use the next\_page\_url from the response or increment manually. Omit to get the first page.         |
| `status`      | string  |          | —            | Filter by status. 'archived' returns archived items, 'trashed' returns trashed items. Omit for active items.                     |
| `bucket_id`   | integer |     ✅    | `45138160`   | The project's unique identifier (bucket ID)                                                                                      |
| `completed`   | boolean |          | —            | When true, returns only completed to-dos. Can be combined with status parameter. Default returns pending (not completed) to-dos. |
| `todolist_id` | integer |     ✅    | `9376982457` | The to-do list's unique identifier                                                                                               |

***

### `Basecamp Get Buckets Todos`

Integration name: **BASECAMP\_GET\_BUCKETS\_TODOS**

Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch a single to-do item including its content, title, assignees, completion status, and dates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                       |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------- |
| `todo_id`   | integer |     ✅    | `9376986708` | The ID of the specific to-do item to retrieve     |
| `bucket_id` | integer |     ✅    | `45138160`   | The ID of the project/bucket containing the to-do |

***

### `Basecamp Get Buckets Todosets Todolists`

Integration name: **BASECAMP\_GET\_BUCKETS\_TODOSETS\_TODOLISTS**

Tool to retrieve a paginated list of to-do lists within a specific to-do set in a Basecamp project. Use when you need to fetch all to-do lists from a to-do set, optionally filtering by status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                                                                                           |
| ------------ | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`          | Page number for pagination. Use the next\_page\_url from the response or increment manually. Omit to get the first page.              |
| `status`     | string  |          | `"archived"` | Filter by status. Accepts 'archived' or 'trashed' to retrieve todolists with those respective statuses. Default returns active lists. |
| `bucket_id`  | integer |     ✅    | `45138160`   | The project's unique identifier (bucket ID).                                                                                          |
| `todoset_id` | integer |     ✅    | `9376981592` | The to-do set's unique identifier.                                                                                                    |

***

### `Basecamp Get Buckets Uploads`

Integration name: **BASECAMP\_GET\_BUCKETS\_UPLOADS**

Tool to retrieve a specific upload by ID from a Basecamp project vault. Use when you need to fetch details about an uploaded file including its metadata, download URL, and dimensions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                    |
| ----------- | ------- | :------: | ------------ | ------------------------------ |
| `bucket_id` | integer |     ✅    | `45138160`   | The project/bucket identifier  |
| `upload_id` | integer |     ✅    | `9376989966` | The specific upload identifier |

***

### `Basecamp Get Buckets Vaults`

Integration name: **BASECAMP\_GET\_BUCKETS\_VAULTS**

Tool to retrieve a specific vault from a Basecamp project. Use when you need details about a vault including its documents, uploads, and nested vaults.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                        |
| ----------- | ------- | :------: | ------------ | ---------------------------------- |
| `vault_id`  | integer |     ✅    | `9376981593` | The vault identifier to retrieve   |
| `bucket_id` | integer |     ✅    | `45138160`   | The project identifier (bucket ID) |

***

### `Basecamp Get Buckets Vaults Documents`

Integration name: **BASECAMP\_GET\_BUCKETS\_VAULTS\_DOCUMENTS**

Tool to retrieve a paginated list of active documents from a vault in a Basecamp project. Use when you need to fetch all documents stored in a specific vault.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                     |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`          | Optional. Page number for pagination. It's recommended to use the Link header from responses rather than manually constructing pagination URLs. |
| `vault_id`  | integer |     ✅    | `9374713910` | The vault identifier where documents are stored                                                                                                 |
| `bucket_id` | integer |     ✅    | `45129794`   | The project identifier (bucket ID)                                                                                                              |

***

### `Basecamp Get Buckets Vaults Uploads`

Integration name: **BASECAMP\_GET\_BUCKETS\_VAULTS\_UPLOADS**

Tool to retrieve a paginated list of active uploads from a vault in a Basecamp project. Use when you need to fetch all uploaded files stored in a specific vault.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                     |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`          | Optional. Page number for pagination. It's recommended to use the Link header from responses rather than manually constructing pagination URLs. |
| `vault_id`  | integer |     ✅    | `9376981593` | The vault identifier where uploads are stored                                                                                                   |
| `bucket_id` | integer |     ✅    | `45138160`   | The project identifier (bucket ID)                                                                                                              |

***

### `Basecamp Get Buckets Vaults Vaults`

Integration name: **BASECAMP\_GET\_BUCKETS\_VAULTS\_VAULTS**

Tool to retrieve a paginated list of vaults nested within a parent vault in a Basecamp project. Use when you need to fetch child vaults from a specific vault.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                        |
| ----------- | ------- | :------: | ------------ | ---------------------------------- |
| `vault_id`  | integer |     ✅    | `9376981593` | The parent vault identifier        |
| `bucket_id` | integer |     ✅    | `45138160`   | The project identifier (bucket ID) |

***

### `Basecamp Get Buckets Webhooks`

Integration name: **BASECAMP\_GET\_BUCKETS\_WEBHOOKS**

Tool to retrieve all webhooks configured for a Basecamp project. Use when you need to list all webhook configurations including their payload URLs, event types, and active status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example    | Description                                                                                                       |
| ----------- | ------- | :------: | ---------- | ----------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | —          | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of webhooks. |
| `bucket_id` | integer |     ✅    | `45141753` | The ID of the project bucket to retrieve webhooks from                                                            |

***

### `Basecamp Get Campfire`

Integration name: **BASECAMP\_GET\_CAMPFIRE**

Tool to retrieve a specific Campfire (chat room) by ID from a Basecamp project. Use when you need to get complete Campfire details including metadata, URLs, topic, and creator information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                          |
| ------------- | ------- | :------: | ------------ | ---------------------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`   | The ID of the project bucket containing the Campfire |
| `campfire_id` | integer |     ✅    | `9378040573` | The unique identifier for the Campfire to retrieve   |

***

### `Basecamp Get Campfire Line`

Integration name: **BASECAMP\_GET\_CAMPFIRE\_LINE**

Tool to retrieve a specific Campfire line by ID from a Basecamp project. Use when you need to fetch a single message from a chat transcript.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                               |
| ----------- | ------- | :------: | ------------ | ----------------------------------------- |
| `chat_id`   | integer |     ✅    | `9378040573` | The Campfire/chat transcript identifier   |
| `line_id`   | integer |     ✅    | `9383674014` | The specific chat line/message identifier |
| `bucket_id` | integer |     ✅    | `45141753`   | The project/bucket identifier             |

***

### `Basecamp Get Card`

Integration name: **BASECAMP\_GET\_CARD**

Tool to get a specific card by ID from a card table. Use when you need to retrieve complete card details including title, description, status, assignees, steps, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                     |
| ----------- | ------- | :------: | ------------ | --------------------------------------------------------------- |
| `card_id`   | integer |     ✅    | `9383681997` | The unique identifier of the card to retrieve                   |
| `bucket_id` | integer |     ✅    | `45141753`   | The project identifier (bucket ID) where the card table resides |

***

### `Basecamp Get Card Table`

Integration name: **BASECAMP\_GET\_CARD\_TABLE**

Tool to retrieve a card table (Kanban board) for a project. Use when you need to fetch information about a specific card table including its columns, cards count, and subscribers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example      | Description                        |
| --------------- | ------- | :------: | ------------ | ---------------------------------- |
| `bucket_id`     | integer |     ✅    | `45141753`   | The project identifier (bucket ID) |
| `card_table_id` | integer |     ✅    | `9378040589` | The card table's unique identifier |

***

### `Basecamp Get Card Table Column`

Integration name: **BASECAMP\_GET\_CARD\_TABLE\_COLUMN**

Tool to get a specific column from a card table within a Basecamp project. Use when you need to fetch details about a card table column by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                   |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45163278`   | The project identifier (bucket ID) containing the card table. |
| `column_id` | integer |     ✅    | `9383738383` | The unique identifier for the column to retrieve.             |

***

### `Basecamp Get Chatbot`

Integration name: **BASECAMP\_GET\_CHATBOT**

Tool to get a specific chatbot by ID from a Basecamp Campfire chat. Use when you need to retrieve details about a chatbot, including its service name, command URL, and lines URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                             |
| ------------ | ------- | :------: | ------------ | --------------------------------------- |
| `chat_id`    | integer |     ✅    | `9378040573` | The Campfire/chat transcript identifier |
| `bucket_id`  | integer |     ✅    | `45141753`   | The project/bucket identifier           |
| `chatbot_id` | integer |     ✅    | `50632890`   | The chatbot identifier                  |

***

### `Basecamp Get Chats`

Integration name: **BASECAMP\_GET\_CHATS**

Tool to retrieve a paginated list of all active Campfires (chats) visible to the current user. Use when you need to list all available chat rooms in Basecamp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Basecamp Get Circles People`

Integration name: **BASECAMP\_GET\_CIRCLES\_PEOPLE**

Tool to retrieve all people on this Basecamp account who can be pinged. Use when you need to get a list of all pingable users in the account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                     |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | —       | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of people. |

***

### `Basecamp Get Comment`

Integration name: **BASECAMP\_GET\_COMMENT**

Tool to retrieve a specific comment by ID from a Basecamp project. Use when you need to fetch details about a particular comment including its content, creator, and parent resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                         |
| ------------ | ------- | :------: | ------------ | --------------------------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753`   | The ID of the project/bucket containing the comment |
| `comment_id` | integer |     ✅    | `9383675040` | The unique identifier of the comment to retrieve    |

***

### `Basecamp Get Document`

Integration name: **BASECAMP\_GET\_DOCUMENT**

Tool to get a specific document by ID from a Basecamp project bucket. Use when you need to retrieve complete document details including title, content, creator, metadata, and comments count.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                  |
| ------------- | ------- | :------: | ------------ | -------------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`   | The project identifier (bucket ID)           |
| `document_id` | integer |     ✅    | `9383673607` | The specific document identifier to retrieve |

***

### `Basecamp Get Inbox`

Integration name: **BASECAMP\_GET\_INBOX**

Tool to get the inbox (email forwards) for a Basecamp project. Use when you need to retrieve details about a specific inbox including its forwards count and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                             |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------- |
| `inbox_id`  | integer |     ✅    | `9378040586` | The inbox identifier to retrieve                        |
| `bucket_id` | integer |     ✅    | `45141753`   | The project identifier (bucket ID) containing the inbox |

***

### `Basecamp Get Message`

Integration name: **BASECAMP\_GET\_MESSAGE**

Tool to retrieve a specific message by ID from a Basecamp project message board. Use when you need to fetch details of a single message including its content, author, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                             |
| ------------ | ------- | :------: | ------------ | ------------------------------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753`   | The project/bucket identifier that contains the message |
| `message_id` | integer |     ✅    | `9383671427` | The unique identifier of the message to retrieve        |

***

### `Basecamp Get Message Board`

Integration name: **BASECAMP\_GET\_MESSAGE\_BOARD**

Tool to get the message board for a project. Use when you need to retrieve details about a specific message board including its title, creator, message count, and URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example      | Description                           |
| ------------------ | ------- | :------: | ------------ | ------------------------------------- |
| `bucket_id`        | integer |     ✅    | `45141753`   | The project identifier (bucket ID)    |
| `message_board_id` | integer |     ✅    | `9378040561` | The specific message board identifier |

***

### `Basecamp Get Message Type`

Integration name: **BASECAMP\_GET\_MESSAGE\_TYPE**

Tool to retrieve a specific message type by ID from a Basecamp project. Use when you need details about a specific message type/category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example     | Description                                                       |
| ------------- | ------- | :------: | ----------- | ----------------------------------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`  | The project identifier (bucket ID) where the message type belongs |
| `category_id` | integer |     ✅    | `108252819` | The unique identifier of the message type to retrieve             |

***

### `Basecamp Get My Profile`

Integration name: **BASECAMP\_GET\_MY\_PROFILE**

Tool to retrieve the current user's personal info including profile details, permissions, and settings. Use when you need to get information about the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Basecamp Get People`

Integration name: **BASECAMP\_GET\_PEOPLE**

Tool to retrieve all people visible to the current user in the Basecamp account. Use when you need to list users, check permissions, or get contact information for team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                     |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | —       | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of people. |

***

### `Basecamp Get People By Person Id`

Integration name: **BASECAMP\_GET\_PEOPLE\_BY\_PERSON\_ID**

Tool to retrieve the profile for a specific user by their ID. Use when you need to get detailed information about a specific person in the Basecamp account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example    | Description                                                           |
| ----------- | ------- | :------: | ---------- | --------------------------------------------------------------------- |
| `person_id` | integer |     ✅    | `50621601` | The numeric identifier of the person whose profile is being retrieved |

***

### `Basecamp Get Project`

Integration name: **BASECAMP\_GET\_PROJECT**

Tool to retrieve a specific project by its ID with complete details. Use when you need to get comprehensive information about a particular project including its status, metadata, and dock tools configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                               |
| ------------ | ------- | :------: | ---------- | --------------------------------------------------------- |
| `project_id` | integer |     ✅    | `45141753` | The unique numeric identifier for the project to retrieve |

***

### `Basecamp Get Projects`

Integration name: **BASECAMP\_GET\_PROJECTS**

Tool to retrieve a paginated list of projects visible to the current user, sorted by most recently created first. Use when you need to list all projects, filter by status (active/archived/trashed), or access project details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                                                                                                                                               |
| ------------ | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status`     | string  |          | `"archived"` | Filter projects by status. Accepts 'archived' or 'trashed' to retrieve archived/trashed projects. Omit to get active projects.                                                            |
| `account_id` | integer |          | `6135310`    | Basecamp account ID to use. If you have access to multiple Basecamp accounts, specify which account's projects to retrieve. Omit to use the account ID from the authenticated connection. |

***

### `Basecamp Get Projects By Project Id`

Integration name: **BASECAMP\_GET\_PROJECTS\_BY\_PROJECT\_ID**

Tool to retrieve a single project by its ID with full details including dock tools. Use when you need to get information about a specific project that the user has access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                       |
| ------------ | ------- | :------: | ---------- | ------------------------------------------------- |
| `project_id` | integer |     ✅    | `45129794` | The unique identifier for the project to retrieve |

***

### `Basecamp Get Projects People`

Integration name: **BASECAMP\_GET\_PROJECTS\_PEOPLE**

Tool to retrieve all active people assigned to a Basecamp project. Use when you need to list all members who have access to a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                            |
| ------------ | ------- | :------: | ---------- | ---------------------------------------------------------------------- |
| `project_id` | integer |     ✅    | `45129794` | The unique identifier of the project whose people you want to retrieve |

***

### `Basecamp Get Projects Recordings`

Integration name: **BASECAMP\_GET\_PROJECTS\_RECORDINGS**

Tool to retrieve a paginated list of records for a given type of recording across projects. Use when you need to list recordings of a specific type (Message, Document, Todo, etc.) with optional filtering by project, status, and sorting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example        | Description                                                                                                                                                                     |
| ---------------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`           | string |          | `"created_at"` | Order results by 'created\_at' or 'updated\_at'. Defaults to 'created\_at'.                                                                                                     |
| `bucket`         | string |          | `"123456"`     | Single or comma-separated project IDs. If not specified, defaults to all active projects accessible to current user.                                                            |
| `status`         | string |          | `"active"`     | Filter by status: 'active', 'archived', or 'trashed'. Defaults to 'active'.                                                                                                     |
| `direction`      | string |          | `"desc"`       | Sort order: 'desc' or 'asc'. Defaults to 'desc'.                                                                                                                                |
| `recording_type` | string |     ✅    | `"Message"`    | The recording category to retrieve. Acceptable values: Comment, Document, Kanban::Card, Kanban::Step, Message, Question::Answer, Schedule::Entry, Todo, Todolist, Upload, Vault |

***

### `Basecamp Get Reports Timesheet`

Integration name: **BASECAMP\_GET\_REPORTS\_TIMESHEET**

Tool to retrieve all timesheet entries across the Basecamp account within a given timeframe. Use when you need to generate time reports, track hours logged, or analyze time entries by person or project. Without date parameters, returns only the last month of entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example        | Description                                                                                                                                  |
| ------------ | ------- | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `end_date`   | string  |          | `"2025-12-12"` | Report end date in ISO 8601 format (YYYY-MM-DD). If provided, start\_date is also required. Without parameters, returns only the last month. |
| `bucket_id`  | integer |          | `45138126`     | Filter to a single project by bucket/project ID. Defaults to all projects if not provided.                                                   |
| `person_id`  | integer |          | `12345678`     | Filter to a single person by their ID. Defaults to all users if not provided.                                                                |
| `start_date` | string  |          | `"2025-11-01"` | Report start date in ISO 8601 format (YYYY-MM-DD). If provided, end\_date is also required. Without parameters, returns only the last month. |

***

### `Basecamp Get Schedule`

Integration name: **BASECAMP\_GET\_SCHEDULE**

Tool to retrieve schedule details for a specific project. Use when you need information about a schedule including entries count and configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                        |
| ------------- | ------- | :------: | ------------ | ---------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`   | The project identifier (bucket ID) |
| `schedule_id` | integer |     ✅    | `9378040576` | The schedule identifier            |

***

### `Basecamp Get Schedule Entry`

Integration name: **BASECAMP\_GET\_SCHEDULE\_ENTRY**

Tool to get a specific schedule entry by ID from a Basecamp project. Use when you need to retrieve details about a scheduled event including its time, participants, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                         |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------- |
| `entry_id`  | integer |     ✅    | `9378683419` | The unique identifier of the schedule entry to retrieve             |
| `bucket_id` | integer |     ✅    | `45141753`   | The project identifier (bucket ID) where the schedule entry belongs |

***

### `Basecamp Get Subscription`

Integration name: **BASECAMP\_GET\_SUBSCRIPTION**

Tool to get subscription information for a recording. Use when you need to check subscription status, view subscriber count, or get detailed information about all subscribers for a specific recording.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                                      |
| -------------- | ------- | :------: | ------------ | ---------------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45141753`   | The ID of the bucket containing the recording                    |
| `recording_id` | integer |     ✅    | `9383671427` | The ID of the recording to retrieve subscription information for |

***

### `Basecamp Get Templates`

Integration name: **BASECAMP\_GET\_TEMPLATES**

Tool to retrieve a paginated list of active templates visible to the current user, sorted by most recently created first. Use when you need to list templates or filter by status (active/archived/trashed).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                                                                                                                       |
| --------- | ------- | :------: | ------------ | --------------------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | —            | Page number for pagination. Basecamp returns results in pages; use this to retrieve subsequent pages of templates.                |
| `status`  | string  |          | `"archived"` | Filter templates by status. Accepts 'archived' or 'trashed' to retrieve archived/trashed templates. Omit to get active templates. |

***

### `Basecamp Get Templates By Template Id`

Integration name: **BASECAMP\_GET\_TEMPLATES\_BY\_TEMPLATE\_ID**

Tool to retrieve a single template by its ID with full details including dock tools. Use when you need to get information about a specific template that the user has access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example    | Description                                        |
| ------------- | ------- | :------: | ---------- | -------------------------------------------------- |
| `template_id` | integer |     ✅    | `45138149` | The unique identifier for the template to retrieve |

***

### `Basecamp Get Templates Project Constructions`

Integration name: **BASECAMP\_GET\_TEMPLATES\_PROJECT\_CONSTRUCTIONS**

Tool to retrieve the status of a project construction from a template. Use when you need to monitor the progress of a project being created from a template. Can be polled at intervals (no more than once per second) to track construction status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example    | Description                                                                |
| ----------------- | ------- | :------: | ---------- | -------------------------------------------------------------------------- |
| `template_id`     | integer |     ✅    | `45139914` | The unique identifier for the template containing the project construction |
| `construction_id` | integer |     ✅    | `1`        | The unique identifier for the project construction to retrieve             |

***

### `Basecamp Get Todo`

Integration name: **BASECAMP\_GET\_TODO**

Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch detailed information about a single to-do item including its content, title, assignees, completion status, dates, and parent relationships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                       |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------- |
| `todo_id`   | integer |     ✅    | `9383680256` | The ID of the specific to-do item to retrieve     |
| `bucket_id` | integer |     ✅    | `45141753`   | The ID of the project/bucket containing the to-do |

***

### `Basecamp Get Todolist`

Integration name: **BASECAMP\_GET\_TODOLIST**

Tool to retrieve a specific to-do list from a Basecamp project by its ID. Use when you need to get details about a to-do list including its title, description, completion status, and URLs for todos and groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                 |
| ------------- | ------- | :------: | ------------ | ------------------------------------------- |
| `bucket_id`   | integer |     ✅    | `45141753`   | The project's unique identifier (bucket ID) |
| `todolist_id` | integer |     ✅    | `9383679864` | The to-do list's unique identifier          |

***

### `Basecamp Get Todoset`

Integration name: **BASECAMP\_GET\_TODOSET**

Tool to retrieve a specific to-do set from a Basecamp project. Use when you need to get details about a to-do set, including its completion status and to-do lists count.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                  |
| ------------ | ------- | :------: | ------------ | -------------------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753`   | The project's unique identifier (bucket ID). |
| `todoset_id` | integer |     ✅    | `9378040568` | The to-do set's unique identifier.           |

***

### `Basecamp Get Upload`

Integration name: **BASECAMP\_GET\_UPLOAD**

Tool to get a specific upload by ID from a Basecamp project. Use when you need to retrieve details about an uploaded file including metadata, download URL, and dimensions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                    |
| ----------- | ------- | :------: | ------------ | ------------------------------ |
| `bucket_id` | integer |     ✅    | `45141753`   | The project/bucket identifier  |
| `upload_id` | integer |     ✅    | `9383682862` | The specific upload identifier |

***

### `Basecamp Get Webhook`

Integration name: **BASECAMP\_GET\_WEBHOOK**

Tool to retrieve a specific webhook by ID from a Basecamp project. Use when you need details about a webhook including its delivery history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                        |
| ------------ | ------- | :------: | ---------- | ---------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753` | The project identifier (bucket ID) |
| `webhook_id` | integer |     ✅    | `1717968`  | The webhook identifier to retrieve |

***

### `Basecamp List Chatbots`

Integration name: **BASECAMP\_LIST\_CHATBOTS**

Tool to get all chatbots for a chat/campfire. Use when you need to retrieve the list of chatbot integrations with their line URLs for posting messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                           |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------- |
| `chat_id`   | integer |     ✅    | `9378040573` | The ID of the Campfire chat to retrieve chatbots from |
| `bucket_id` | integer |     ✅    | `45141753`   | The ID of the project bucket containing the chat      |

***

### `Basecamp List Comments`

Integration name: **BASECAMP\_LIST\_COMMENTS**

Tool to get all comments on a recording in a Basecamp project. Use when you need to retrieve the list of active comments with their content, creators, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                                                                                              |
| -------------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `page`         | integer |          | `1`          | Page number for pagination. Use the next\_page\_url from the response or increment manually. Omit to get the first page. |
| `bucket_id`    | integer |     ✅    | `45141753`   | The project/bucket ID containing the recording                                                                           |
| `recording_id` | integer |     ✅    | `9383671427` | The recording ID whose comments to retrieve                                                                              |

***

### `Basecamp List Message Types`

Integration name: **BASECAMP\_LIST\_MESSAGE\_TYPES**

Tool to retrieve all message types in a Basecamp project. Use when you need to list all available message types for organizing messages in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example    | Description                                                 |
| ----------- | ------- | :------: | ---------- | ----------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45141753` | The ID of the project bucket to retrieve message types from |

***

### `Basecamp List Project People`

Integration name: **BASECAMP\_LIST\_PROJECT\_PEOPLE**

Tool to get all people on a specific Basecamp project. Use when you need to retrieve the list of active members who have access to a particular project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                                                                              |
| ------------ | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------ |
| `page`       | integer |          | `1`        | Page number for pagination. Use the next\_page\_url from the response or increment manually. Omit to get the first page. |
| `project_id` | integer |     ✅    | `45141753` | The unique identifier of the project whose people you want to retrieve                                                   |

***

### `Basecamp List Todolists`

Integration name: **BASECAMP\_LIST\_TODOLISTS**

Tool to get all to-do lists in a to-do set within a Basecamp project. Use when you need to retrieve all to-do lists from a specific to-do set, optionally filtering by status (archived or trashed).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                                                                                                     |
| ------------ | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`          | Optional. Page number for pagination. It's recommended to use the Link header from responses rather than manually constructing pagination URLs. |
| `status`     | string  |          | `"archived"` | Filter by status. Accepts 'archived' or 'trashed' to retrieve todolists with those respective statuses. Omit to return active lists.            |
| `bucket_id`  | integer |     ✅    | `45141753`   | The project's unique identifier (bucket ID).                                                                                                    |
| `todoset_id` | integer |     ✅    | `9378040568` | The to-do set's unique identifier.                                                                                                              |

***

### `Basecamp List Uploads`

Integration name: **BASECAMP\_LIST\_UPLOADS**

Tool to retrieve all active uploads from a vault in a Basecamp project. Use when you need to list all uploaded files stored in a specific vault.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                     |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`          | Optional. Page number for pagination. It's recommended to use the Link header from responses rather than manually constructing pagination URLs. |
| `vault_id`  | integer |     ✅    | `9378040571` | The vault identifier where uploads are stored                                                                                                   |
| `bucket_id` | integer |     ✅    | `45141753`   | The project identifier (bucket ID)                                                                                                              |

***

### `Basecamp Move Card`

Integration name: **BASECAMP\_MOVE\_CARD**

Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                 |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------- |
| `card_id`   | integer |     ✅    | `9383729465` | The ID of the card to move.                                 |
| `bucket_id` | integer |     ✅    | `45141753`   | The project/bucket ID where the card table is located.      |
| `column_id` | integer |     ✅    | `9378040617` | The ID of the target column where the card should be moved. |

***

### `Basecamp Move Card Table Column`

Integration name: **BASECAMP\_MOVE\_CARD\_TABLE\_COLUMN**

Tool to reorder columns within a Basecamp card table. Use when you need to change the position of a column in a card table by specifying the column to move and its new position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example      | Description                                                                                          |
| --------------- | ------- | :------: | ------------ | ---------------------------------------------------------------------------------------------------- |
| `position`      | integer |          | `1`          | The desired column index position, excluding special columns (Triage, Not Now, Done). Defaults to 1. |
| `bucket_id`     | integer |     ✅    | `45163278`   | The project/bucket ID where the card table is located.                                               |
| `source_id`     | integer |     ✅    | `9383763438` | The ID of the column being repositioned.                                                             |
| `target_id`     | integer |     ✅    | `9383738376` | The ID of the card table containing the column (same as card\_table\_id).                            |
| `card_table_id` | integer |     ✅    | `9383738376` | The ID of the card table containing the column to move.                                              |

***

### `Basecamp Pin Message`

Integration name: **BASECAMP\_PIN\_MESSAGE**

Tool to pin a message to the top of the message board. Use when you need to feature a message prominently at the top of a message board in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                   |
| ------------ | ------- | :------: | ------------ | ------------------------------------------------------------- |
| `bucket_id`  | integer |     ✅    | `45141753`   | The ID of the bucket (project) containing the message.        |
| `message_id` | integer |     ✅    | `9383671427` | The ID of the message to pin to the top of the message board. |

***

### `Basecamp Post Attachments`

Integration name: **BASECAMP\_POST\_ATTACHMENTS**

Tool to upload a file to Basecamp system. Use when you need to upload a file to get an attachable\_sgid reference for use in other operations like creating messages or todos with attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description     |
| --------- | ------ | :------: | ------- | --------------- |
| `file`    | object |     ✅    | —       | File to upload. |

***

### `Basecamp Post Buckets Card Tables Cards Moves`

Integration name: **BASECAMP\_POST\_BUCKETS\_CARD\_TABLES\_CARDS\_MOVES**

Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                 |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------- |
| `card_id`   | integer |     ✅    | `9376950318` | The ID of the card to move.                                 |
| `bucket_id` | integer |     ✅    | `45129794`   | The project/bucket ID where the card table is located.      |
| `column_id` | integer |     ✅    | `9374713934` | The ID of the target column where the card should be moved. |

***

### `Basecamp Post Buckets Card Tables Cards Positions`

Integration name: **BASECAMP\_POST\_BUCKETS\_CARD\_TABLES\_CARDS\_POSITIONS**

Tool to reposition a step within a card in a Basecamp card table. Use when you need to change the order of steps/subtasks within a card by moving a step to a specific position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                              |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `card_id`   | integer |     ✅    | `9376949698` | The ID of the card containing the step to reposition.                                                                    |
| `position`  | integer |     ✅    | `0`          | Zero-indexed integer indicating the desired location for the step within the card. Position 0 moves the step to the top. |
| `bucket_id` | integer |     ✅    | `45129794`   | The project/bucket identifier where the card table is located.                                                           |
| `source_id` | integer |     ✅    | `9376955981` | The identifier for the step to be moved. Step identifiers can be retrieved through the 'Get a card' endpoint.            |

***

### `Basecamp Post Buckets Card Tables Columns`

Integration name: **BASECAMP\_POST\_BUCKETS\_CARD\_TABLES\_COLUMNS**

Tool to create a column within a Basecamp card table. Use when you need to add a new column to organize cards in a card table project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                           | Description                                         |
| --------------- | ------- | :------: | ------------------------------------------------- | --------------------------------------------------- |
| `title`         | string  |     ✅    | `"Testing Phase"`                                 | The name of the column being created.               |
| `bucket_id`     | integer |     ✅    | `45129794`                                        | The project/bucket ID where the card table exists.  |
| `description`   | string  |          | `"Column for testing features before deployment"` | Information about the column's purpose.             |
| `card_table_id` | integer |     ✅    | `9374713922`                                      | The card table ID where the column will be created. |

***

### `Basecamp Post Buckets Card Tables Columns On Hold`

Integration name: **BASECAMP\_POST\_BUCKETS\_CARD\_TABLES\_COLUMNS\_ON\_HOLD**

Tool to create an on-hold section in a card table column. Use when you need to add an on-hold area to organize cards that are temporarily paused or waiting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                     |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45129794`   | The project identifier (bucket ID) containing the card table.                   |
| `column_id` | integer |     ✅    | `9374713934` | The unique identifier for the column where the on-hold section will be created. |

***

### `Basecamp Post Buckets Categories`

Integration name: **BASECAMP\_POST\_BUCKETS\_CATEGORIES**

Tool to create a new message type (category) in a Basecamp project. Use when you need to create a custom message category for organizing different types of messages in a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                |
| ----------- | ------- | :------: | -------------------- | ---------------------------------------------------------- |
| `icon`      | string  |     ✅    | `"🔔"`               | An emoji or icon symbol representing the category          |
| `name`      | string  |     ✅    | `"Important Update"` | The display name for the message type                      |
| `bucket_id` | integer |     ✅    | `45129794`           | The ID of the project bucket to create the message type in |

***

### `Basecamp Post Buckets Chats Lines`

Integration name: **BASECAMP\_POST\_BUCKETS\_CHATS\_LINES**

Tool to create a line in a Basecamp Campfire chat. Use when you need to post a message to a specific Campfire chat within a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                        |
| ----------- | ------- | :------: | ----------------------- | -------------------------------------------------- |
| `chat_id`   | integer |     ✅    | `9374713912`            | The Campfire chat ID to post the message to.       |
| `content`   | string  |     ✅    | `"Hello from API test"` | The plain text body for the Campfire line/message. |
| `bucket_id` | integer |     ✅    | `45129794`              | The project/bucket ID where the chat exists.       |

***

### `Basecamp Post Buckets Message Boards Messages`

Integration name: **BASECAMP\_POST\_BUCKETS\_MESSAGE\_BOARDS\_MESSAGES**

Tool to publish a message to a Basecamp message board within a project. Use when you need to create a new message with optional rich HTML content and subscriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                              | Description                                                                                                                       |
| ------------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `status`           | string  |     ✅    | `"active"`                                                                                           | Message status. Set to 'active' to publish immediately                                                                            |
| `content`          | string  |          | `"<div>This is a test message created via the Basecamp API to verify endpoint functionality.</div>"` | The body text of the message, supporting HTML tags                                                                                |
| `subject`          | string  |     ✅    | `"Test Message via API"`                                                                             | The title/subject of the message                                                                                                  |
| `bucket_id`        | integer |     ✅    | `45129794`                                                                                           | The project/bucket identifier                                                                                                     |
| `category_id`      | integer |          | `123456`                                                                                             | Assigns a message type; retrieve available types via Get message types endpoint                                                   |
| `subscriptions`    | array   |          | `[123,456,789]`                                                                                      | Array of person IDs to notify and subscribe to the message. If omitted, all project members receive notification and subscription |
| `message_board_id` | integer |     ✅    | `9374713902`                                                                                         | The message board identifier                                                                                                      |

***

### `Basecamp Post Buckets Recordings Comments`

Integration name: **BASECAMP\_POST\_BUCKETS\_RECORDINGS\_COMMENTS**

Tool to publish a comment on a recording within a Basecamp project. Use when you need to add a comment with rich text to any recording such as a todolist, message, or document.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                            | Description                                                                                                                                                                      |
| -------------- | ------- | :------: | ------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`      | string  |     ✅    | `"<div><em>Great!</em> This todolist looks well organized.</div>"` | The comment content as HTML. Supports rich text formatting with allowed HTML tags. Example: '*Great!* This todolist looks well organized.'                                       |
| `bucket_id`    | integer |     ✅    | `45129794`                                                         | The project/bucket ID where the recording exists.                                                                                                                                |
| `account_id`   | integer |          | `4945709`                                                          | Optional Basecamp account ID. Use this when the resource exists in a different account than the default. If not provided, uses the account ID from the authenticated connection. |
| `recording_id` | integer |     ✅    | `9374717146`                                                       | The recording ID to add the comment to.                                                                                                                                          |

***

### `Basecamp Post Buckets Recordings Pin`

Integration name: **BASECAMP\_POST\_BUCKETS\_RECORDINGS\_PIN**

Tool to pin a recording (message) in a Basecamp project. Use when you need to feature a message prominently at the top of a message board or project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45129794`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9376966465` | The ID of the recording (message) to pin.                |

***

### `Basecamp Post Buckets Recordings Subscription`

Integration name: **BASECAMP\_POST\_BUCKETS\_RECORDINGS\_SUBSCRIPTION**

Tool to subscribe the current user to a recording for notifications. Use when you need to start watching/subscribing to a specific recording to receive notifications for new comments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                    |
| -------------- | ------- | :------: | ------------ | ---------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45138126`   | The ID of the bucket containing the recording. |
| `recording_id` | integer |     ✅    | `9376976417` | The ID of the recording to subscribe to.       |

***

### `Basecamp Post Buckets Schedules Entries`

Integration name: **BASECAMP\_POST\_BUCKETS\_SCHEDULES\_ENTRIES**

Tool to create a schedule entry in a Basecamp schedule within a project. Use when you need to add a new event with start/end times and optional participants.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                      | Description                                                                                        |
| ----------------- | ------- | :------: | ---------------------------- | -------------------------------------------------------------------------------------------------- |
| `notify`          | boolean |          | `true`                       | When true, participants receive notifications about the entry. Defaults to false if not specified. |
| `all_day`         | boolean |          | `false`                      | When true, entry spans entire day(s) without specific times. Defaults to false if not specified.   |
| `ends_at`         | string  |     ✅    | `"2025-12-15T11:00:00Z"`     | ISO 8601 datetime when the entry concludes. Example: '2025-12-15T11:00:00Z'                        |
| `summary`         | string  |     ✅    | `"Team Meeting"`             | The title or subject of the schedule entry.                                                        |
| `bucket_id`       | integer |     ✅    | `45138126`                   | The project/bucket ID where the schedule exists.                                                   |
| `starts_at`       | string  |     ✅    | `"2025-12-15T10:00:00Z"`     | ISO 8601 datetime when the entry begins. Example: '2025-12-15T10:00:00Z'                           |
| `description`     | string  |          | `"Weekly team sync meeting"` | HTML string with more information about the schedule entry with formatting.                        |
| `schedule_id`     | integer |     ✅    | `9376974305`                 | The schedule ID where the entry will be created.                                                   |
| `participant_ids` | array   |          | `[123,456,789]`              | Array of person IDs to include as participants in the schedule entry.                              |

***

### `Basecamp Post Buckets Todolists Comments`

Integration name: **BASECAMP\_POST\_BUCKETS\_TODOLISTS\_COMMENTS**

Tool to add a comment to a to-do list in a Basecamp project. Use when you need to comment on a todolist with feedback, updates, or discussions. All subscribers to the to-do list will be notified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                            | Description                                                                                                                                |
| ------------- | ------- | :------: | ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `content`     | string  |     ✅    | `"<div><em>Great!</em> This todolist looks well organized.</div>"` | The comment content as HTML. Supports rich text formatting with allowed HTML tags. Example: '*Great!* This todolist looks well organized.' |
| `bucket_id`   | integer |     ✅    | `2085958499`                                                       | The project/bucket ID where the to-do list exists.                                                                                         |
| `todolist_id` | integer |     ✅    | `1069479520`                                                       | The to-do list ID to add the comment to.                                                                                                   |

***

### `Basecamp Post Buckets Todolists Todos`

Integration name: **BASECAMP\_POST\_BUCKETS\_TODOLISTS\_TODOS**

Tool to create a to-do in a Basecamp to-do list within a project. Use when you need to add a new to-do item with optional description, assignees, and due date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                                       | Description                                                                            |
| --------------------------- | ------- | :------: | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| `due_on`                    | string  |          | `"2025-12-20"`                                                                | Completion target date in YYYY-MM-DD format.                                           |
| `notify`                    | boolean |          | `true`                                                                        | When true, notifies assignees of their assignment. Defaults to false if not specified. |
| `content`                   | string  |     ✅    | `"Test API integration task"`                                                 | What the to-do is for (main title/content). This field is required.                    |
| `bucket_id`                 | integer |     ✅    | `45138160`                                                                    | The project/bucket ID where the to-do list exists.                                     |
| `starts_on`                 | string  |          | `"2025-12-15"`                                                                | Start date in YYYY-MM-DD format; runs until due\_on.                                   |
| `description`               | string  |          | `"<div><em>Testing the Basecamp API endpoint for creating to-dos</em></div>"` | Details about the to-do; supports HTML formatting per the Rich text guide.             |
| `todolist_id`               | integer |     ✅    | `9376982457`                                                                  | The to-do list ID where the to-do will be created.                                     |
| `assignee_ids`              | array   |          | `[123,456]`                                                                   | Person IDs to assign the to-do; retrieve via Get people endpoint.                      |
| `completion_subscriber_ids` | array   |          | `[789,456]`                                                                   | Person IDs notified upon completion; retrieve via Get people endpoint.                 |

***

### `Basecamp Post Buckets Todos Comments`

Integration name: **BASECAMP\_POST\_BUCKETS\_TODOS\_COMMENTS**

Tool to add a comment to a to-do in a Basecamp project. Use when you need to add feedback, updates, or discussion to a specific to-do item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                               | Description                                                                                                                                   |
| ----------- | ------- | :------: | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`   | string  |     ✅    | `"<div><em>Great progress!</em> This todo is almost complete.</div>"` | The comment content as HTML. Supports rich text formatting with allowed HTML tags. Example: '*Great progress!* This todo is almost complete.' |
| `todo_id`   | integer |     ✅    | `9374717146`                                                          | The to-do ID to add the comment to.                                                                                                           |
| `bucket_id` | integer |     ✅    | `45129794`                                                            | The project/bucket ID where the to-do exists.                                                                                                 |

***

### `Basecamp Post Buckets Todosets Todolists`

Integration name: **BASECAMP\_POST\_BUCKETS\_TODOSETS\_TODOLISTS**

Tool to create a new to-do list in a Basecamp to-do set within a project. Use when you need to add a new to-do list with optional HTML description.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                | Description                                                                     |
| ------------- | ------- | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------- |
| `name`        | string  |     ✅    | `"Test Todo List"`                                     | The title/name of the to-do list. This field is required.                       |
| `bucket_id`   | integer |     ✅    | `45141753`                                             | The project/bucket ID where the to-do set exists.                               |
| `todoset_id`  | integer |     ✅    | `9378040568`                                           | The to-do set ID where the to-do list will be created.                          |
| `description` | string  |          | `"<div>This is a test todolist created via API</div>"` | Details about the to-do list; supports HTML formatting per the Rich text guide. |

***

### `Basecamp Post Buckets Webhooks`

Integration name: **BASECAMP\_POST\_BUCKETS\_WEBHOOKS**

Tool to create a new webhook subscription for a Basecamp project. Use when you need to receive event notifications at a specified HTTPS endpoint for project activities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                             |
| ------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `types`       | array   |          | `["Todo","Todolist"]`                    | Event types to subscribe to. Available options: 'all', 'Comment', 'Client::Approval::Response', 'Client::Forward', 'Client::Reply', 'CloudFile', 'Document', 'GoogleDocument', 'Inbox::Forward', 'Kanban::Card', 'Kanban::Step', 'Message', 'Question', 'Question::Answer', 'Schedule::Entry', 'Todo', 'Todolist', 'Upload', 'Vault'. Defaults to all types if omitted. |
| `bucket_id`   | integer |     ✅    | `45141753`                               | The project/bucket identifier                                                                                                                                                                                                                                                                                                                                           |
| `payload_url` | string  |     ✅    | `"https://webhook.site/unique-test-url"` | HTTPS URL where Basecamp will send webhook events                                                                                                                                                                                                                                                                                                                       |

***

### `Basecamp Post Integrations Chatbot Key Buckets Chats Lines`

Integration name: **BASECAMP\_POST\_INTEGRATIONS\_CHATBOT\_KEY\_BUCKETS\_CHATS\_LINES**

Tool to create a line in a Basecamp Campfire chat using a chatbot key. Use when you need to post messages via a chatbot integration without OAuth authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                  | Description                                                                                                                                                                                                             |
| --------------- | ------- | :------: | -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`       | integer |     ✅    | `9374713912`                                             | The Campfire chat ID to post the message to.                                                                                                                                                                            |
| `content`       | string  |     ✅    | `"Hello from the chatbot test! This is a test message."` | The HTML body text for the Campfire message. Supports rich text formatting with permitted HTML tags including: strong, em, a, ul, ol, li, blockquote, pre, code, table, tr, td, th, thead, tbody, details, and summary. |
| `bucket_id`     | integer |     ✅    | `45129794`                                               | The project/bucket ID where the chat exists.                                                                                                                                                                            |
| `chatbot_key`   | string  |     ✅    | `"crhkyhfytXaM5EybEnqHbkyN"`                             | The unique authentication key for the chatbot. This key is provided when creating a chatbot integration and allows posting without OAuth.                                                                               |
| `content_param` | string  |          | `"text"`                                                 | Optional parameter to rename the 'content' field for third-party webhook integrations (e.g., use 'text' for Slack webhooks).                                                                                            |

***

### `Basecamp Post Lineup Markers`

Integration name: **BASECAMP\_POST\_LINEUP\_MARKERS**

Tool to create an account-wide marker that shows up in the Lineup. Use when you need to add a visual marker to highlight important dates or milestones across all projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                                                                                                 |
| --------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `date`    | string |     ✅    | `"2025-12-12"`  | ISO8601 formatted date without a time part (e.g., '2021-01-01', '2025-12-12'). This is the date where the marker will appear in the Lineup. |
| `name`    | string |     ✅    | `"Q1 Planning"` | The label for the lineup marker. This is the text that will be displayed in the Lineup.                                                     |

***

### `Basecamp Post Projects`

Integration name: **BASECAMP\_POST\_PROJECTS**

Tool to create a new project in Basecamp with a name and optional description. Use when you need to set up a new project workspace for team collaboration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                              |
| ------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------- |
| `name`        | string |     ✅    | `"Marketing Campaign 2024"`                  | The project title/name. This field is required.          |
| `description` | string |          | `"Q1 marketing campaign for product launch"` | Additional details about the project's purpose or scope. |

***

### `Basecamp Post Templates`

Integration name: **BASECAMP\_POST\_TEMPLATES**

Tool to create a new template in Basecamp with a name and optional description. Use when you need to set up a reusable project template for standardizing workflows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                 | Description                                                         |
| ------------- | ------ | :------: | ----------------------------------------------------------------------- | ------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"Marketing Campaign Template"`                                         | The template's title/name. This field is required.                  |
| `description` | string |          | `"A template for organizing marketing campaign tasks and deliverables"` | Optional descriptive text about the template's purpose or contents. |

***

### `Basecamp Put Buckets Card Tables Columns Color`

Integration name: **BASECAMP\_PUT\_BUCKETS\_CARD\_TABLES\_COLUMNS\_COLOR**

Tool to update a card table column's visual color designation in a Basecamp project. Use when you need to change the color of a specific column for better visual organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                   |
| ----------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| `color`     | string  |     ✅    | `"blue"`     | The new color value for the column. Must be one of: white, red, orange, yellow, green, blue, aqua, purple, gray, pink, brown. |
| `bucket_id` | integer |     ✅    | `45129794`   | The project identifier (bucket ID) containing the card table.                                                                 |
| `column_id` | integer |     ✅    | `9376952220` | The unique identifier for the column to update.                                                                               |

***

### `Basecamp Put Buckets Card Tables Steps`

Integration name: **BASECAMP\_PUT\_BUCKETS\_CARD\_TABLES\_STEPS**

Tool to update an existing card table step in Basecamp. Use when you need to modify a step's title, due date, or assignees. Omitted parameters remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                             | Description                                                                                |
| ----------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------ |
| `title`     | string  |          | `"Updated step title via API test"` | The step's heading text. If provided, updates the step title.                              |
| `due_on`    | string  |          | `"2025-12-25"`                      | Target completion date in ISO 8601 format (YYYY-MM-DD). If provided, updates the due date. |
| `step_id`   | integer |     ✅    | `9376954834`                        | The ID of the step to update.                                                              |
| `assignees` | array   |          | `[1234567,2345678]`                 | Array of people IDs to assign to this step. If provided, updates the assignees.            |
| `bucket_id` | integer |     ✅    | `45129794`                          | The ID of the bucket (project) containing the card table.                                  |

***

### `Basecamp Put Buckets Card Tables Steps Completions`

Integration name: **BASECAMP\_PUT\_BUCKETS\_CARD\_TABLES\_STEPS\_COMPLETIONS**

Tool to mark a card table step as completed or uncompleted in Basecamp. Use when you need to toggle the completion status of a step by setting completion to "on" or "off".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                                 |
| ------------ | ------- | :------: | ------------ | --------------------------------------------------------------------------- |
| `step_id`    | integer |     ✅    | `9376954611` | The ID of the step to mark as completed or uncompleted.                     |
| `bucket_id`  | integer |     ✅    | `45129794`   | The ID of the bucket (project) containing the card table.                   |
| `completion` | string  |     ✅    | `"on"`       | Completion status: "on" to mark as completed, "off" to mark as uncompleted. |

***

### `Basecamp Put Buckets Categories`

Integration name: **BASECAMP\_PUT\_BUCKETS\_CATEGORIES**

Tool to update an existing message type (category) in a Basecamp project. Use when you need to modify the name or icon of a message category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                  | Description                                              |
| ------------- | ------- | :------: | ------------------------ | -------------------------------------------------------- |
| `icon`        | string  |     ✅    | `"🎯"`                   | An emoji or icon symbol representing the category        |
| `name`        | string  |     ✅    | `"Updated Announcement"` | The updated display name for the message type            |
| `bucket_id`   | integer |     ✅    | `45129794`               | The ID of the project bucket containing the message type |
| `category_id` | integer |     ✅    | `108227213`              | The ID of the message type to update                     |

***

### `Basecamp Put Buckets Chats Integrations`

Integration name: **BASECAMP\_PUT\_BUCKETS\_CHATS\_INTEGRATIONS**

Tool to update an existing chatbot integration in a Basecamp Campfire chat. Use when you need to change the service name or command URL of a chatbot.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                      | Description                                                                                        |
| ---------------- | ------- | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `chat_id`        | integer |     ✅    | `9374713912`                                 | The Campfire/chat transcript identifier                                                            |
| `bucket_id`      | integer |     ✅    | `45129794`                                   | The project/bucket identifier                                                                      |
| `command_url`    | string  |          | `"https://example.com/new-webhook-endpoint"` | HTTPS endpoint that Basecamp calls when the bot receives queries or commands                       |
| `service_name`   | string  |     ✅    | `"newtestbot"`                               | Bot identifier for invocation (no spaces, emoji, or special chars; used as !service\_name command) |
| `integration_id` | integer |     ✅    | `50622276`                                   | The chatbot integration identifier                                                                 |

***

### `Basecamp Put Buckets Comments`

Integration name: **BASECAMP\_PUT\_BUCKETS\_COMMENTS**

Tool to update comment content in a Basecamp project. Use when you need to modify the content of an existing comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                          | Description                                                                                 |
| ------------ | ------- | :------: | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| `content`    | string  |     ✅    | `"<div><em>Updated comment content via PUT endpoint</em></div>"` | The updated message body in HTML format. HTML tags allowed as per Basecamp Rich text guide. |
| `bucket_id`  | integer |     ✅    | `45129794`                                                       | The project identifier (bucket ID) containing the comment.                                  |
| `comment_id` | integer |     ✅    | `9376962647`                                                     | The unique identifier for the comment to update.                                            |

***

### `Basecamp Put Buckets Documents`

Integration name: **BASECAMP\_PUT\_BUCKETS\_DOCUMENTS**

Tool to update an existing document in a Basecamp project bucket. Use when you need to modify a document's title, content, or both. Omitted parameters remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                     | Description                                                                                                                     |
| ------------- | ------- | :------: | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string  |          | `"Updated Document Title"`                                                  | New title for the document. If provided, updates the document title.                                                            |
| `content`     | string  |          | `"<div><strong>This document has been updated successfully</strong></div>"` | New body content in HTML format. See Basecamp Rich text guide for allowed HTML tags. If provided, updates the document content. |
| `bucket_id`   | integer |     ✅    | `45129794`                                                                  | The ID of the bucket (project) containing the document.                                                                         |
| `document_id` | integer |     ✅    | `9376961392`                                                                | The ID of the document to update.                                                                                               |

***

### `Basecamp Put Buckets Messages`

Integration name: **BASECAMP\_PUT\_BUCKETS\_MESSAGES**

Tool to update a message's subject, content, or category in a Basecamp project. Use when you need to modify an existing message's title, body text, or categorization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                      | Description                                                                                                                    |
| ------------- | ------- | :------: | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `content`     | string  |          | `"<div><strong>This message has been successfully updated via PUT endpoint!</strong></div>"` | New body content in HTML format. See Basecamp Rich text guide for allowed HTML tags. If provided, updates the message content. |
| `subject`     | string  |          | `"Updated Test Message via API"`                                                             | New subject/title for the message. If provided, updates the message subject.                                                   |
| `bucket_id`   | integer |     ✅    | `45129794`                                                                                   | The ID of the bucket (project) containing the message.                                                                         |
| `message_id`  | integer |     ✅    | `9376966465`                                                                                 | The ID of the message to update.                                                                                               |
| `category_id` | integer |          | `12345`                                                                                      | Category/type ID to assign to the message. If provided, changes the message category.                                          |

***

### `Basecamp Put Buckets Recordings Client Visibility`

Integration name: **BASECAMP\_PUT\_BUCKETS\_RECORDINGS\_CLIENT\_VISIBILITY**

Tool to update client visibility for a recording in Basecamp. Use when you need to show or hide a recording from clients. Returns 403 if the recording inherits visibility from parent resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example      | Description                                                                             |
| -------------------- | ------- | :------: | ------------ | --------------------------------------------------------------------------------------- |
| `bucket_id`          | integer |     ✅    | `45129794`   | The ID of the bucket (project) containing the recording.                                |
| `recording_id`       | integer |     ✅    | `9374717146` | The ID of the recording to update.                                                      |
| `visible_to_clients` | boolean |     ✅    | `true`       | Set to true to make the recording visible to clients, or false to hide it from clients. |

***

### `Basecamp Put Buckets Recordings Status Active`

Integration name: **BASECAMP\_PUT\_BUCKETS\_RECORDINGS\_STATUS\_ACTIVE**

Tool to unarchive a recording in a Basecamp project by marking it as active. Use when you need to restore an archived recording to make it visible again in the project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45163278`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9383745802` | The ID of the recording to unarchive.                    |

***

### `Basecamp Put Buckets Recordings Status Archived`

Integration name: **BASECAMP\_PUT\_BUCKETS\_RECORDINGS\_STATUS\_ARCHIVED**

Tool to mark a recording as archived in a Basecamp project. Use when you need to archive a recording to remove it from active view while preserving it for reference.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45141753`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9383672982` | The ID of the recording to archive.                      |

***

### `Basecamp Put Buckets Recordings Status Trashed`

Integration name: **BASECAMP\_PUT\_BUCKETS\_RECORDINGS\_STATUS\_TRASHED**

Tool to mark a recording as trashed in a Basecamp project. Use when you need to move a recording to trash without permanently deleting it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45163278`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9383744984` | The ID of the recording to mark as trashed.              |

***

### `Basecamp Put Buckets Recordings Subscription`

Integration name: **BASECAMP\_PUT\_BUCKETS\_RECORDINGS\_SUBSCRIPTION**

Tool to update recording subscriptions by adding or removing subscribers. Use when you need to manage who receives notifications for a specific recording. At least one of subscriptions or unsubscriptions must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example               | Description                                                     |
| ----------------- | ------- | :------: | --------------------- | --------------------------------------------------------------- |
| `bucket_id`       | integer |     ✅    | `45138126`            | The ID of the bucket containing the recording                   |
| `recording_id`    | integer |     ✅    | `9376976417`          | The ID of the recording to update subscription information for  |
| `subscriptions`   | array   |          | `[50621601,50621602]` | Array of person IDs to add as subscribers to the recording      |
| `unsubscriptions` | array   |          | `[50621603]`          | Array of person IDs to remove from subscribers of the recording |

***

### `Basecamp Put Buckets Schedule Entries`

Integration name: **BASECAMP\_PUT\_BUCKETS\_SCHEDULE\_ENTRIES**

Tool to update an existing schedule entry in a Basecamp schedule. Use when you need to modify an entry's title, times, description, or participants. Omitted parameters remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                          | Description                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
| `notify`          | boolean |          | `true`                                           | When true, participants receive notifications about the update. If provided, controls notification behavior.                           |
| `all_day`         | boolean |          | `false`                                          | When true, entry spans entire day(s) without specific times. If provided, updates the all\_day setting.                                |
| `ends_at`         | string  |          | `"2025-12-16T15:30:00Z"`                         | ISO 8601 datetime or date when the entry concludes. If provided, updates the end time. Example: '2025-12-16T15:30:00Z' or '2025-12-16' |
| `summary`         | string  |          | `"Updated Important Meeting"`                    | The title or subject of the schedule entry. If provided, updates the entry summary.                                                    |
| `entry_id`        | integer |     ✅    | `9376977109`                                     | The schedule entry ID to update.                                                                                                       |
| `bucket_id`       | integer |     ✅    | `45138126`                                       | The project/bucket ID containing the schedule entry.                                                                                   |
| `starts_at`       | string  |          | `"2025-12-16T14:00:00Z"`                         | ISO 8601 datetime or date when the entry begins. If provided, updates the start time. Example: '2025-12-16T14:00:00Z' or '2025-12-16'  |
| `description`     | string  |          | `"Updated description for testing PUT endpoint"` | HTML string with more information about the schedule entry. If provided, updates the description.                                      |
| `participant_ids` | array   |          | `[123,456,789]`                                  | Array of person IDs to include as participants. If provided, updates the participant list.                                             |

***

### `Basecamp Put Buckets Schedules`

Integration name: **BASECAMP\_PUT\_BUCKETS\_SCHEDULES**

Tool to update a schedule configuration in a Basecamp project. Use when you need to change whether the schedule includes due assignments from to-dos, cards and steps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example      | Description                                                                 |
| ------------------------- | ------- | :------: | ------------ | --------------------------------------------------------------------------- |
| `bucket_id`               | integer |     ✅    | `45138126`   | The project/bucket ID where the schedule exists.                            |
| `schedule_id`             | integer |     ✅    | `9376974305` | The schedule ID to update.                                                  |
| `include_due_assignments` | boolean |     ✅    | `false`      | Whether the schedule should include due dates from to-dos, cards and steps. |

***

### `Basecamp Put Buckets Todolists Groups Position`

Integration name: **BASECAMP\_PUT\_BUCKETS\_TODOLISTS\_GROUPS\_POSITION**

Tool to reposition a to-do list group within its parent to-do list in a Basecamp project. Use when you need to change the order of to-do list groups by moving a group to a specific position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                 |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`  | integer |     ✅    | `9383785988` | The ID of the to-do list group to reposition.                                                                                               |
| `position`  | integer |     ✅    | `1`          | The new ordering position for the group (must be greater than or equal to 1). Determines where the group will be placed among its siblings. |
| `bucket_id` | integer |     ✅    | `45163278`   | The ID of the project bucket containing the to-do list group.                                                                               |

***

### `Basecamp Put Buckets Todos`

Integration name: **BASECAMP\_PUT\_BUCKETS\_TODOS**

Tool to update an existing to-do in a Basecamp project. Use when you need to modify a to-do's content, description, assignees, dates, or notification settings. Note: Pass all existing parameters along with those being updated to prevent clearing values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                 | Description                                                                                             |
| --------------------------- | ------- | :------: | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `due_on`                    | string  |          | `"2025-12-31"`                                          | Target completion date for the to-do in ISO 8601 format (YYYY-MM-DD).                                   |
| `notify`                    | boolean |          | `true`                                                  | When true, sends notifications to assignees about their assignment.                                     |
| `content`                   | string  |     ✅    | `"Updated todo content via API test"`                   | What the to-do is for. This parameter is always required and cannot be blank.                           |
| `todo_id`                   | integer |     ✅    | `9376985594`                                            | The ID of the to-do to update.                                                                          |
| `bucket_id`                 | integer |     ✅    | `45138160`                                              | The ID of the project/bucket containing the to-do.                                                      |
| `starts_on`                 | string  |          | `"2025-01-01"`                                          | Start date for the to-do in ISO 8601 format (YYYY-MM-DD). The to-do runs from starts\_on until due\_on. |
| `description`               | string  |          | `"This todo was updated through the PUT endpoint test"` | Additional information about the to-do. Supports HTML formatting per Rich text guidelines.              |
| `assignee_ids`              | array   |          | `[1234567,2345678]`                                     | Array of people IDs assigned to complete this to-do. Use Get people endpoints to retrieve valid IDs.    |
| `completion_subscriber_ids` | array   |          | `[1234567]`                                             | Array of people IDs who will be notified when the to-do is completed.                                   |

***

### `Basecamp Put Buckets Todos Position`

Integration name: **BASECAMP\_PUT\_BUCKETS\_TODOS\_POSITION**

Tool to change the position of a to-do within its list in a Basecamp project. Use when you need to reorder to-dos by moving a specific to-do to a new position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                    |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `todo_id`   | integer |     ✅    | `9376985594` | The ID of the to-do item to reposition.                                                                                                        |
| `position`  | integer |     ✅    | `1`          | The new position for the to-do in the list (must be greater than or equal to 1). Determines where the to-do will be placed among its siblings. |
| `bucket_id` | integer |     ✅    | `45138160`   | The ID of the project/bucket containing the to-do.                                                                                             |

***

### `Basecamp Put Buckets Uploads`

Integration name: **BASECAMP\_PUT\_BUCKETS\_UPLOADS**

Tool to update an existing upload in a Basecamp project bucket. Use when you need to modify an upload's description or filename. Omitted parameters remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                     | Description                                                                                                                                     |
| ------------- | ------- | :------: | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `base_name`   | string  |          | `"updated_test_file"`                                       | New file name for the upload without extension. If provided, updates the upload filename.                                                       |
| `bucket_id`   | integer |     ✅    | `45138160`                                                  | The ID of the bucket (project) containing the upload.                                                                                           |
| `upload_id`   | integer |     ✅    | `9376989144`                                                | The ID of the upload to update.                                                                                                                 |
| `description` | string  |          | `"<div>Updated description for testing PUT endpoint</div>"` | New description for the upload in HTML format. See Basecamp Rich text guide for allowed HTML tags. If provided, updates the upload description. |

***

### `Basecamp Put Buckets Vaults`

Integration name: **BASECAMP\_PUT\_BUCKETS\_VAULTS**

Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                        |
| ----------- | ------- | :------: | ----------------------- | -------------------------------------------------- |
| `title`     | string  |     ✅    | `"Updated Vault Title"` | The new title for the vault.                       |
| `vault_id`  | integer |     ✅    | `9383762642`            | The ID of the vault to update.                     |
| `bucket_id` | integer |     ✅    | `45163278`              | The ID of the project/bucket containing the vault. |

***

### `Basecamp Put Buckets Webhooks`

Integration name: **BASECAMP\_PUT\_BUCKETS\_WEBHOOKS**

Tool to update an existing webhook in a Basecamp project. Use when you need to modify the webhook's URL, event types, or active status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                     |
| ------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `types`       | array   |          | `["Todo","Todolist","Message","Comment"]`        | Event types to subscribe to. Available options: 'all', 'Comment', 'Client::Approval::Response', 'Client::Forward', 'Client::Reply', 'CloudFile', 'Document', 'GoogleDocument', 'Inbox::Forward', 'Kanban::Card', 'Kanban::Step', 'Message', 'Question', 'Question::Answer', 'Schedule::Entry', 'Todo', 'Todolist', 'Upload', 'Vault'. If omitted, existing types are preserved. |
| `active`      | boolean |          | `true`                                           | Controls whether the webhook should match incoming events. Set to true to enable or false to disable.                                                                                                                                                                                                                                                                           |
| `bucket_id`   | integer |     ✅    | `45163278`                                       | The project/bucket identifier                                                                                                                                                                                                                                                                                                                                                   |
| `webhook_id`  | integer |     ✅    | `1717973`                                        | The webhook identifier to update                                                                                                                                                                                                                                                                                                                                                |
| `payload_url` | string  |     ✅    | `"https://example.com/updated-webhook-endpoint"` | HTTPS URL where Basecamp will send webhook events                                                                                                                                                                                                                                                                                                                               |

***

### `Basecamp Put Projects`

Integration name: **BASECAMP\_PUT\_PROJECTS**

Tool to update an existing project's name, description, access policy, or schedule in Basecamp. Use when you need to modify project details or settings. Note: name parameter is required; schedule dates must be provided as pairs (both start\_date and end\_date).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                          | Description                                                                                                                                                                    |
| --------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                | string  |     ✅    | `"Updated Test Project Name"`                    | The project's title. This field is required.                                                                                                                                   |
| `admissions`          | string  |          | `"team"`                                         | Access control policy. Options: 'invite' (restricted to invited users only), 'employee' (accessible to all account members), 'team' (available to non-client account members). |
| `project_id`          | integer |     ✅    | `45129794`                                       | The unique identifier for the project to update                                                                                                                                |
| `description`         | string  |          | `"Updated description for testing PUT endpoint"` | Additional project information. If provided, updates the project description.                                                                                                  |
| `schedule_attributes` | object  |          | —                                                | Schedule attributes for setting project start and end dates.                                                                                                                   |

***

### `Basecamp Put Projects People Users`

Integration name: **BASECAMP\_PUT\_PROJECTS\_PEOPLE\_USERS**

Tool to grant or revoke project access for users in Basecamp. Use when you need to add existing users to a project, create new users with access, or remove users from a project. At least one of grant, revoke, or create must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                    | Description                                                   |
| ------------ | ------- | :------: | ---------------------------------------------------------- | ------------------------------------------------------------- |
| `grant`      | array   |          | `[50622385,50622386]`                                      | Array of people IDs to grant project access to existing users |
| `create`     | array   |          | `[{"name":"John Doe","email_address":"john@example.com"}]` | Array of new people to create and add to the project          |
| `revoke`     | array   |          | `[50622387]`                                               | Array of people IDs to remove from the project                |
| `project_id` | integer |     ✅    | `45129794`                                                 | The unique identifier of the project                          |

***

### `Basecamp Put Templates`

Integration name: **BASECAMP\_PUT\_TEMPLATES**

Tool to update a template's name and description in Basecamp. Use when you need to modify template metadata. Omitted parameters remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                                      | Description                                                                            |
| ------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------- |
| `name`        | string  |          | `"Updated Marketing Campaign Template"`                                                                      | The new name for the template. If provided, updates the template's name.               |
| `description` | string  |          | `"An updated template for organizing comprehensive marketing campaigns with enhanced deliverables tracking"` | The new description for the template. If provided, updates the template's description. |
| `template_id` | integer |     ✅    | `45138149`                                                                                                   | The ID of the template to update.                                                      |

***

### `Basecamp Reposition Card Step`

Integration name: **BASECAMP\_REPOSITION\_CARD\_STEP**

Tool to change the position of a step within a card. Use when you need to reorder steps in a card table card by moving a step to a specific position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                            |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------- |
| `card_id`   | integer |     ✅    | `9383747205` | The ID of the card containing the step to reposition.                                                                  |
| `position`  | integer |     ✅    | `0`          | Zero-indexed integer indicating where the step should be placed in the sequence. Position 0 moves the step to the top. |
| `bucket_id` | integer |     ✅    | `45163278`   | The ID of the bucket containing the card table.                                                                        |
| `source_id` | integer |     ✅    | `9383776835` | The numeric identifier of the step to move.                                                                            |

***

### `Basecamp Trash Project`

Integration name: **BASECAMP\_TRASH\_PROJECT**

Tool to mark a Basecamp project as trashed. Use when you need to trash a project. Trashed projects will be permanently deleted after 30 days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                     |
| ------------ | ------- | :------: | ---------- | ------------------------------- |
| `project_id` | integer |     ✅    | `45141753` | The project identifier to trash |

***

### `Basecamp Trash Template`

Integration name: **BASECAMP\_TRASH\_TEMPLATE**

Tool to mark a template as trashed in Basecamp. Use when you need to soft-delete a template; it will be permanently removed after 30 days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example    | Description                                                                                             |
| ------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------- |
| `template_id` | integer |     ✅    | `45139914` | The unique identifier of the template to trash. The template will be permanently deleted after 30 days. |

***

### `Basecamp Uncomplete Todo`

Integration name: **BASECAMP\_UNCOMPLETE\_TODO**

Tool to mark a to-do as uncompleted in Basecamp. Use when you need to reverse the completion status of a completed to-do item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------- |
| `todo_id`   | integer |     ✅    | `9383748378` | The to-do item identifier to mark as uncompleted           |
| `bucket_id` | integer |     ✅    | `45163278`   | The project identifier (bucket ID) where the to-do belongs |

***

### `Basecamp Unpin Message`

Integration name: **BASECAMP\_UNPIN\_MESSAGE**

Tool to unpin a message from the message board. Use when you need to remove the pinned status from a message that was previously pinned to the top of a message board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                            |
| ------------ | ------- | :------: | ------------ | ------------------------------------------------------ |
| `bucket_id`  | integer |     ✅    | `45163278`   | The ID of the bucket (project) containing the message. |
| `message_id` | integer |     ✅    | `9383741012` | The ID of the message to unpin from the message board. |

***

### `Basecamp Unsubscribe Current User`

Integration name: **BASECAMP\_UNSUBSCRIBE\_CURRENT\_USER**

Tool to unsubscribe the current user from a recording. Use when you need to stop receiving notifications for a specific recording. This is an idempotent operation that returns success even if the user wasn't previously subscribed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                              |
| -------------- | ------- | :------: | ------------ | -------------------------------------------------------- |
| `bucket_id`    | integer |     ✅    | `45163278`   | The ID of the bucket (project) containing the recording. |
| `recording_id` | integer |     ✅    | `9383743064` | The ID of the recording to unsubscribe from.             |

***

### `Basecamp Unwatch Card Table Column`

Integration name: **BASECAMP\_UNWATCH\_CARD\_TABLE\_COLUMN**

Tool to stop watching a card table column. Use when you want to unsubscribe from a specific column and no longer receive notifications about changes to it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                   |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45163278`   | The project identifier (bucket ID) containing the card table. |
| `column_id` | integer |     ✅    | `9383738383` | The card table column identifier to stop watching.            |

***

### `Basecamp Update Card`

Integration name: **BASECAMP\_UPDATE\_CARD**

Tool to update a card's details in a Basecamp card table. Use when you need to modify a card's title, content, due date, or assignees.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                             | Description                                                                                                                   |
| -------------- | ------- | :------: | --------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `title`        | string  |          | `"Updated Card Title"`                              | The card's heading. If provided, updates the card title.                                                                      |
| `due_on`       | string  |          | `"2025-12-20"`                                      | Target completion date for the card in ISO 8601 format (YYYY-MM-DD). If provided, updates the due date.                       |
| `card_id`      | integer |     ✅    | `9383747205`                                        | The ID of the card to update.                                                                                                 |
| `content`      | string  |          | `"This card has been successfully updated via API"` | Card details supporting HTML formatting per the Rich text guide. If provided, updates the card content.                       |
| `bucket_id`    | integer |     ✅    | `45163278`                                          | The ID of the bucket (project) containing the card table.                                                                     |
| `assignee_ids` | array   |          | `[1234567,2345678]`                                 | Array of person IDs to assign to the card. If provided, updates the assignees. Use Get people endpoint to retrieve valid IDs. |

***

### `Basecamp Update Card Table Column`

Integration name: **BASECAMP\_UPDATE\_CARD\_TABLE\_COLUMN**

Tool to update a card table column's properties in a Basecamp project. Use when you need to modify a column's title or description.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                             | Description                                                                                              |
| ------------- | ------- | :------: | ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `title`       | string  |          | `"QA and Testing Phase"`                                            | Column name. If provided, updates the column title.                                                      |
| `bucket_id`   | integer |     ✅    | `45163278`                                                          | The project identifier (bucket ID) containing the card table.                                            |
| `column_id`   | integer |     ✅    | `9383763438`                                                        | The unique identifier for the column to update.                                                          |
| `description` | string  |          | `"Cards that are currently in quality assurance and testing phase"` | Column description containing information about the column. If provided, updates the column description. |

***

### `Basecamp Update Document`

Integration name: **BASECAMP\_UPDATE\_DOCUMENT**

Tool to update an existing document's title or content in a Basecamp project. Use when you need to modify document title, content, or both.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                    | Description                                                                                                                     |
| ------------- | ------- | :------: | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string  |          | `"Updated Test Document"`                                                  | New title for the document. If provided, updates the document title.                                                            |
| `content`     | string  |          | `"<div><strong>This content has been updated successfully</strong></div>"` | New body content in HTML format. See Basecamp Rich text guide for allowed HTML tags. If provided, updates the document content. |
| `bucket_id`   | integer |     ✅    | `45163278`                                                                 | The ID of the bucket (project) containing the document.                                                                         |
| `document_id` | integer |     ✅    | `9383751467`                                                               | The ID of the document to update.                                                                                               |

***

### `Basecamp Update Todo`

Integration name: **BASECAMP\_UPDATE\_TODO**

Tool to update a to-do's content, assignees, or due date in a Basecamp project. Use when you need to modify an existing to-do item. Pass all existing parameters along with those being updated to prevent clearing values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                                                       | Description                                                                                             |
| --------------------------- | ------- | :------: | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `due_on`                    | string  |          | `"2025-12-20"`                                                                                | Target completion date for the to-do in ISO 8601 format (YYYY-MM-DD).                                   |
| `notify`                    | boolean |          | `true`                                                                                        | When true, sends notifications to assignees about their assignment.                                     |
| `content`                   | string  |     ✅    | `"Updated Todo Item - Testing UPDATE_TODO endpoint"`                                          | What the to-do is for. This parameter is always required and cannot be blank.                           |
| `todo_id`                   | integer |     ✅    | `9383747772`                                                                                  | The ID of the to-do to update.                                                                          |
| `bucket_id`                 | integer |     ✅    | `45163278`                                                                                    | The ID of the project/bucket containing the to-do.                                                      |
| `starts_on`                 | string  |          | `"2025-01-01"`                                                                                | Start date for the to-do in ISO 8601 format (YYYY-MM-DD). The to-do runs from starts\_on until due\_on. |
| `description`               | string  |          | `"This to-do has been updated via the UPDATE_TODO API endpoint to verify it works correctly"` | Additional HTML content about the to-do. Supports HTML formatting per Rich text guidelines.             |
| `assignee_ids`              | array   |          | `[1234567,2345678]`                                                                           | Array of people IDs assigned to complete this to-do. Use Get people endpoints to retrieve valid IDs.    |
| `completion_subscriber_ids` | array   |          | `[1234567]`                                                                                   | Array of people IDs who will be notified when the to-do is completed.                                   |

***

### `Basecamp Update Vault`

Integration name: **BASECAMP\_UPDATE\_VAULT**

Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                       |
| ----------- | ------- | :------: | ----------------------- | ------------------------------------------------- |
| `title`     | string  |     ✅    | `"Updated Vault Title"` | The new title for the vault                       |
| `vault_id`  | integer |     ✅    | `9383762642`            | The ID of the vault to update                     |
| `bucket_id` | integer |     ✅    | `45163278`              | The ID of the project/bucket containing the vault |

***

### `Basecamp Watch Card Table Column`

Integration name: **BASECAMP\_WATCH\_CARD\_TABLE\_COLUMN**

Tool to start watching a card table column in a Basecamp project. Use when you need to subscribe to a specific column to receive notifications about changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                   |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------- |
| `bucket_id` | integer |     ✅    | `45163278`   | The project/bucket ID where the card table is located.        |
| `column_id` | integer |     ✅    | `9383738383` | The card table column ID to start watching for notifications. |


# Bitbucket

Your Toolhouse AI Worker can connect to Bitbucket using 107 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](https://toolhouse.app/auth-connections?authkit_slugs=bitbucket).

## Tools (107)

### `Bitbucket Approve Pull Request`

Integration name: **BITBUCKET\_APPROVE\_PULL\_REQUEST**

Tool to approve a pull request as the authenticated user. Use when you need to formally approve changes in a pull request review process.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                               |
| ----------------- | ------- | :------: | ---------------- | ----------------------------------------- |
| `repo_slug`       | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).      |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name). |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to approve.    |

***

### `Bitbucket Browse Repository Path`

Integration name: **BITBUCKET\_BROWSE\_REPOSITORY\_PATH**

Tool to retrieve content for a file path or browse directory contents at a specified revision in a Bitbucket repository. Use when you need flexible access to repository content - returns raw file data for files or paginated directory listings for directories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example           | Description                                                                                                                               |
| ----------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"path~\"test\""` | Filter query string using Bitbucket's REST API filtering syntax to narrow results. Only applicable when browsing directories.             |
| `page`      | integer |          | `1`               | Page number for paginated results (starts from 1). Only applicable when browsing directories.                                             |
| `path`      | string  |          | `"README.md"`     | File or directory path within the repository to browse. Use empty string for root directory.                                              |
| `sort`      | string  |          | `"path"`          | Field name for sorting results. Prefix with '-' for descending order. Only applicable when browsing directories.                          |
| `commit`    | string  |          | `"master"`        | Commit hash, branch name, or tag to browse from. Defaults to 'master' if not specified.                                                   |
| `format`    | string  |          | `"meta"`          | Response format. Use 'meta' to return metadata as JSON instead of raw file contents when browsing a file.                                 |
| `pagelen`   | integer |          | `10`              | Number of entries per page (1-100). Only applicable when browsing directories. Controls pagination size.                                  |
| `max_depth` | integer |          | `1`               | Maximum depth for breadth-first recursive directory traversal. Only applicable when path is a directory. Large values may cause timeouts. |
| `repo_slug` | string  |     ✅    | `"my-repo"`       | Repository slug or UUID (typically URL-formatted name).                                                                                   |
| `workspace` | string  |     ✅    | `"my-workspace"`  | Workspace ID or UUID (often username or team name) containing the repository.                                                             |

***

### `Bitbucket Create Branch`

Integration name: **BITBUCKET\_CREATE\_BRANCH**

Creates a new branch in a Bitbucket repository from a target commit hash; the branch name must be unique, adhere to Bitbucket's naming conventions, and not include the 'refs/heads/' prefix.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                                                                                                        |
| ------------- | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"feature/new-branch"`                       | The name for the new branch (e.g., 'feature/new-login', 'bugfix/issue-123'). Important: Do not include the 'refs/heads/' prefix.   |
| `repo_slug`   | string |     ✅    | `"my-repo"`                                  | The slug or UUID of the repository where the branch will be created. This is usually the repository's name in URL-friendly format. |
| `workspace`   | string |     ✅    | `"my-workspace"`                             | The workspace ID or UUID that owns the repository. This can typically be found in the URL of your Bitbucket workspace.             |
| `target_hash` | string |     ✅    | `"a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0"` | The full commit hash (SHA1) from which the new branch will be created. This commit must exist in the repository.                   |

***

### `Bitbucket Create Issue`

Integration name: **BITBUCKET\_CREATE\_ISSUE**

Creates a new issue in a Bitbucket repository, setting the authenticated user as reporter; ensures assignee (if provided) has repository access, and that any specified milestone, version, or component IDs exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                   | Description                                                                             |
| -------------- | ------- | :------: | --------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `kind`         | string  |          | `"bug"`                                                   | Type of the issue (e.g., 'bug', 'enhancement', 'proposal', 'task').                     |
| `title`        | string  |     ✅    | `"Bug: Login not working"`                                | Title for the new issue.                                                                |
| `due_on`       | string  |          | `"2025-04-24T23:59:59Z"`                                  | Due date for the issue in ISO 8601 format (e.g., 'YYYY-MM-DDTHH:mm:ssZ').               |
| `content`      | string  |     ✅    | `"Users are unable to log in when using Firefox browser"` | Detailed description for the new issue.                                                 |
| `assignee`     | string  |          | `"johndoe"`                                               | Bitbucket username of the assignee. The assignee must have repository access.           |
| `priority`     | string  |          | `"trivial"`                                               | Priority level of the issue (e.g., 'trivial', 'minor', 'major', 'critical', 'blocker'). |
| `repo_slug`    | string  |     ✅    | `"repo-name"`                                             | The slug of the Bitbucket repository.                                                   |
| `workspace`    | string  |     ✅    | `"workspace123"`                                          | The ID or slug of the Bitbucket workspace.                                              |
| `version_id`   | integer |          | `"67890"`                                                 | Numeric ID of an existing version to associate with this issue.                         |
| `component_id` | integer |          | `"11223"`                                                 | Numeric ID of an existing component to associate with this issue.                       |
| `milestone_id` | integer |          | `"12345"`                                                 | Numeric ID of an existing milestone to associate with this issue.                       |

***

### `Bitbucket Create Issue Comment`

Integration name: **BITBUCKET\_CREATE\_ISSUE\_COMMENT**

Adds a new comment with markdown support to an existing Bitbucket issue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                        |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `content`   | string |     ✅    | `"This is a comment with **bold** text"` | The raw text content for the comment. This content supports markdown formatting, which Bitbucket will then render. |
| `issue_id`  | string |     ✅    | `"123"`                                  | The unique identifier of the issue on which the comment will be posted.                                            |
| `repo_slug` | string |     ✅    | `"my-repo"`                              | The slug (URL-friendly version) of the repository name.                                                            |
| `workspace` | string |     ✅    | `"my-workspace"`                         | The ID or slug of the workspace or user that owns the repository.                                                  |

***

### `Bitbucket Create Pull Request`

Integration name: **BITBUCKET\_CREATE\_PULL\_REQUEST**

Creates a new pull request in a specified Bitbucket repository, ensuring the source branch exists and is distinct from the (optional) destination branch.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                                                          | Description                                                                                                       |
| --------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `title`               | string  |     ✅    | `"Feature: Add new login page"`                                                                                  | Concise title summarizing the changes for the pull request.                                                       |
| `repo_slug`           | string  |     ✅    | `"my-repo"`                                                                                                      | Slug (URL-friendly name) of the repository for the pull request.                                                  |
| `reviewers`           | array   |          | `[{"uuid":"{123e4567-e89b-12d3-a456-426614174000}"},{"uuid":"{098f6bcd-4621-4eb7-9cb0-1e234567c89d}"}]`          | List of Bitbucket user UUIDs to be added as reviewers. Malformed or non-existent UUIDs trigger validation errors. |
| `workspace`           | string  |     ✅    | `"my-workspace"`                                                                                                 | Workspace ID (UUID or slug) of the repository owner.                                                              |
| `description`         | string  |          | `"This PR adds a new login page with improved security features and a redesigned UI. It addresses ticket #123."` | Detailed Markdown description of the pull request, outlining changes and purpose.                                 |
| `source_branch`       | string  |     ✅    | `"feature/login-page"`                                                                                           | Name of the source branch with changes to be merged.                                                              |
| `destination_branch`  | string  |          | `"main"`                                                                                                         | Name of the destination branch for merging; defaults to repository's main branch if unspecified.                  |
| `close_source_branch` | boolean |          | `true`                                                                                                           | If true, automatically closes the source branch upon pull request merge.                                          |

***

### `Bitbucket Create Pull Request Comment`

Integration name: **BITBUCKET\_CREATE\_PULL\_REQUEST\_COMMENT**

Creates a new comment on a Bitbucket pull request. Supports top-level comments, threaded replies, and inline code comments. Use when providing feedback on a PR, replying to existing comments, or commenting on specific code lines.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                    | Description                                                                                                  |
| ------------------- | ------- | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| `inline`            | object  |          | `{"to":42,"from":42,"path":"src/main.py"}` | Location details for inline code comments.                                                                   |
| `repo_slug`         | string  |     ✅    | `"my-repo"`                                | The slug (URL-friendly version) of the repository name.                                                      |
| `workspace`         | string  |     ✅    | `"my-workspace"`                           | The ID or slug of the workspace that owns the repository.                                                    |
| `content_raw`       | string  |     ✅    | `"This looks good!"`                       | The raw text content for the comment. Supports markdown formatting which Bitbucket will render.              |
| `pull_request_id`   | integer |     ✅    | `1`                                        | The unique identifier of the pull request to comment on.                                                     |
| `parent_comment_id` | integer |          | `12345`                                    | ID of an existing comment to reply to, creating a threaded comment. If omitted, creates a top-level comment. |

***

### `Bitbucket Create Repositories Commit Reports Annotations`

Integration name: **BITBUCKET\_CREATE\_REPOSITORIES\_COMMIT\_REPORTS\_ANNOTATIONS**

Adds multiple annotations to a commit report in bulk. Use when you need to add code analysis findings (vulnerabilities, code smells, bugs) to a report attached to a specific commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                                                                                                                           | Description                                                                                                         |
| ------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `commit`      | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"`                                                                                                                                      | The commit hash to which the report belongs. This is the full SHA-1 commit identifier.                              |
| `reportId`    | string |     ✅    | `"test-report-001"`                                                                                                                                                               | The unique identifier of the report to which annotations will be added.                                             |
| `repo_slug`   | string |     ✅    | `"opup"`                                                                                                                                                                          | The repository slug (URL-friendly name) that contains the commit.                                                   |
| `workspace`   | string |     ✅    | `"jwalton"`                                                                                                                                                                       | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug.                  |
| `annotations` | array  |     ✅    | `[{"line":42,"path":"src/main/java/App.java","summary":"Potential security vulnerability detected","severity":"HIGH","external_id":"ann-001","annotation_type":"VULNERABILITY"}]` | Array of annotation objects to be added to the report. Each annotation must have path, line, summary, and severity. |

***

### `Bitbucket Create Repositories Commits2`

Integration name: **BITBUCKET\_CREATE\_REPOSITORIES\_COMMITS2**

Tool to list commits from a revision using POST method. Identical to GET endpoint but allows sending include/exclude parameters in request body to avoid URL length limits. Use when include/exclude parameters are too long for query strings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                      | Description                                                                                                                                                                     |
| ----------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                                          | Page number for paginated results (starts from 1).                                                                                                                              |
| `path`      | string  |          | `"src/main.py"`                              | Optional file path to filter commits. Only commits that modified this file or directory will be returned.                                                                       |
| `exclude`   | string  |          | `"develop"`                                  | Optional commit hash or branch to exclude from the results. Can be used to create a range with the 'include' parameter. Use POST method when this value is very long.           |
| `include`   | string  |          | `"main"`                                     | Optional commit hash or branch to include in the results. Can be used to create a range with the 'exclude' parameter. Use POST method when this value is very long.             |
| `pagelen`   | integer |          | `10`                                         | Number of commits per page (1-100). Bitbucket default is typically 30 if not specified.                                                                                         |
| `revision`  | string  |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash, branch name, tag, or other revision identifier to start listing commits from. Commits are returned in reverse chronological order starting from this revision. |
| `repo_slug` | string  |     ✅    | `"my-repo"`                                  | The slug of the repository. This is the repository's name, usually in lowercase and with hyphens instead of spaces.                                                             |
| `workspace` | string  |     ✅    | `"my-workspace"`                             | The workspace ID (slug) or UUID of the Bitbucket workspace that owns the repository. This can be the workspace name or its universally unique identifier.                       |

***

### `Bitbucket Create Repository`

Integration name: **BITBUCKET\_CREATE\_REPOSITORY**

Creates a new Bitbucket 'git' repository in a specified workspace, defaulting to the workspace's oldest project if `project_key` is not provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                   | Description                                                                                                                                                                           |
| ------------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `has_wiki`    | boolean |          | `true`                    | Enable the wiki (`True`), or disable it (`False`).                                                                                                                                    |
| `language`    | string  |          | `"python"`                | Primary programming language (e.g., 'python', 'java') for categorization.                                                                                                             |
| `repo_slug`   | string  |     ✅    | `"my-repo"`               | URL-friendly slug for the new repository.                                                                                                                                             |
| `workspace`   | string  |     ✅    | `"my-workspace"`          | Workspace identifier. Can be a slug (e.g., 'my-workspace') or UUID with curly braces (e.g., '{uuid}'). Bare UUIDs without braces are automatically normalized to the required format. |
| `has_issues`  | boolean |          | `true`                    | Enable the issue tracker (`True`), or disable it (`False`).                                                                                                                           |
| `is_private`  | boolean |          | `true`                    | Repository visibility: `True` for private, `False` for public.                                                                                                                        |
| `description` | string  |          | `"My awesome repository"` | Description for the new repository.                                                                                                                                                   |
| `fork_policy` | string  |          | `"allow_forks"`           | Forking policy for the repository, determining who can create forks.                                                                                                                  |
| `project_key` | string  |          | `"PROJ"`                  | Key of the Bitbucket project for the repository; if omitted, it's placed in the workspace's oldest project.                                                                           |

***

### `Bitbucket Create Snippet Comment`

Integration name: **BITBUCKET\_CREATE\_SNIPPET\_COMMENT**

Posts a new top-level comment or a threaded reply to an existing comment on a specified Bitbucket snippet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                              | Description                                                                                                      |
| ------------ | ------- | :------: | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `content`    | string  |     ✅    | `"This is a comment on the snippet"` | Raw text content of the comment; Bitbucket will render any included markup (like Markdown).                      |
| `parent_id`  | integer |          | `123`                                | ID of an existing comment to reply to, creating a threaded comment; if omitted, a top-level comment is created.  |
| `workspace`  | string  |     ✅    | `"myworkspace"`                      | Workspace ID or slug (e.g., 'my\_workspace\_slug' or a UUID) for the Bitbucket workspace containing the snippet. |
| `encoded_id` | string  |     ✅    | `"ae8f3b"`                           | Unique, encoded ID of the Bitbucket snippet to comment on (typically part of the snippet's URL).                 |

***

### `Bitbucket Create Teams Pipelines Config Variables`

Integration name: **BITBUCKET\_CREATE\_TEAMS\_PIPELINES\_CONFIG\_VARIABLES**

Creates a team-level pipeline configuration variable in Bitbucket. Use when you need to add environment variables or configuration values that should be available to all pipelines within a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example               | Description                                                                                                                                               |
| ---------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`      | string  |     ✅    | `"COMPOSIO_TEST_VAR"` | The name/key of the pipeline variable. Must be unique within the team's pipeline configuration.                                                           |
| `value`    | string  |     ✅    | `"test_value_123"`    | The value of the pipeline variable. This will be available to all pipelines in the team.                                                                  |
| `secured`  | boolean |          | `true`                | Whether the variable should be secured (masked in logs). Set to `True` for sensitive values like passwords or API keys, `False` for non-sensitive values. |
| `username` | string  |     ✅    | `"Composiodev"`       | The team username that owns the pipeline configuration. This is the team identifier in Bitbucket.                                                         |

***

### `Bitbucket Create Users Pipelines Config Variables`

Integration name: **BITBUCKET\_CREATE\_USERS\_PIPELINES\_CONFIG\_VARIABLES**

Creates a user-level pipeline variable for Bitbucket pipelines. Use when you need to create account-level configuration variables that can be used across all repositories owned by the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example             | Description                                                                                                                                                   |
| --------------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`           | string  |     ✅    | `"API_KEY"`         | The name/key of the pipeline variable. Must be unique for the user.                                                                                           |
| `value`         | string  |     ✅    | `"my-secret-value"` | The value of the pipeline variable.                                                                                                                           |
| `secured`       | boolean |          | —                   | Whether the variable should be secured/encrypted (true) or stored as plain text (false). Defaults to false.                                                   |
| `selected_user` | string  |     ✅    | `"myusername"`      | The username or UUID of the user. Can be a username (e.g., 'myusername') or a UUID enclosed in curly braces (e.g., '{4f3ecac3-c951-41d4-8a4c-95f40be978fc}'). |

***

### `Bitbucket Delete Commit Comment`

Integration name: **BITBUCKET\_DELETE\_COMMIT\_COMMENT**

Permanently deletes a specific comment on a commit. Use when removing outdated, incorrect, or unwanted feedback on a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                      | Description                                                                                                                                               |
| ------------ | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `commit`     | string |     ✅    | `"1ac3b5bd84d61e075420004d64fcfb3ef4be354a"` | The commit hash (SHA) or commit reference. This identifies the commit that has the comment to be deleted.                                                 |
| `repo_slug`  | string |     ✅    | `"git-tests"`                                | The slug of the repository. This is the repository's name, usually in lowercase and with hyphens instead of spaces.                                       |
| `workspace`  | string |     ✅    | `"evzijst"`                                  | The workspace ID (slug) or UUID of the Bitbucket workspace that owns the repository. This can be the workspace name or its universally unique identifier. |
| `comment_id` | string |     ✅    | `"19285724"`                                 | The unique identifier of the comment to be deleted from the specified commit.                                                                             |

***

### `Bitbucket Delete Issue`

Integration name: **BITBUCKET\_DELETE\_ISSUE**

Permanently deletes a specific issue, identified by its `issue_id`, from the repository specified by `repo_slug` within the given `workspace`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                                                               |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `issue_id`  | string |     ✅    | `"123"`          | The unique identifier of the issue to be deleted from the specified repository.                                                                           |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug of the repository. This is the repository's name, usually in lowercase and with hyphens instead of spaces.                                       |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID (slug) or UUID of the Bitbucket workspace that owns the repository. This can be the workspace name or its universally unique identifier. |

***

### `Bitbucket Delete Pull Request Comment`

Integration name: **BITBUCKET\_DELETE\_PULL\_REQUEST\_COMMENT**

Permanently deletes a specific pull request comment (top-level, inline, or threaded reply). Use when removing outdated, incorrect, or unwanted feedback from a pull request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                               |
| ----------------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The slug of the repository. This is the repository's name, usually in lowercase and with hyphens instead of spaces.                                       |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The workspace ID (slug) or UUID of the Bitbucket workspace that owns the repository. This can be the workspace name or its universally unique identifier. |
| `comment_id`      | integer |     ✅    | `12345`          | The unique identifier of the comment to be deleted from the pull request. This can be a top-level comment, inline comment, or threaded reply.             |
| `pull_request_id` | integer |     ✅    | `42`             | The unique identifier of the pull request containing the comment to be deleted.                                                                           |

***

### `Bitbucket Delete Repositories Commit Reports Annotations`

Integration name: **BITBUCKET\_DELETE\_REPOSITORIES\_COMMIT\_REPORTS\_ANNOTATIONS**

Deletes a single annotation matching the provided ID from a commit report. Use when you need to remove a specific annotation from a code analysis report.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                      | Description                                                                                        |
| -------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `commit`       | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to which the report belongs. This is the full SHA-1 commit identifier.             |
| `reportId`     | string |     ✅    | `"composio-test-report-001"`                 | The unique identifier of the report that contains the annotation.                                  |
| `repo_slug`    | string |     ✅    | `"opup"`                                     | The repository slug (URL-friendly name) that contains the commit.                                  |
| `workspace`    | string |     ✅    | `"jwalton"`                                  | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug. |
| `annotationId` | string |     ✅    | `"test-annotation-002"`                      | The unique identifier of the annotation to delete.                                                 |

***

### `Bitbucket Delete Repository`

Integration name: **BITBUCKET\_DELETE\_REPOSITORY**

Permanently deletes a specified Bitbucket repository; this action is irreversible and does not affect forks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                         |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug (URL-friendly name) of the repository to be deleted. This identifies the repository within the workspace.  |
| `workspace` | string |     ✅    | `"my-workspace"` | The ID or slug of the Bitbucket workspace that owns the repository. This can be a user's username or a team's slug. |

***

### `Bitbucket Delete Snippets Watch`

Integration name: **BITBUCKET\_DELETE\_SNIPPETS\_WATCH**

Stops watching a specific snippet. Use when you want to unsubscribe from notifications for a snippet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example         | Description                                                                                                    |
| ------------ | ------ | :------: | --------------- | -------------------------------------------------------------------------------------------------------------- |
| `workspace`  | string |     ✅    | `"myworkspace"` | The workspace ID (slug) or the workspace UUID surrounded by curly braces, identifying the Bitbucket workspace. |
| `encoded_id` | string |     ✅    | `"kypj"`        | The unique identifier (encoded ID) of the snippet to stop watching.                                            |

***

### `Bitbucket Delete User Pipeline Variable`

Integration name: **BITBUCKET\_DELETE\_USER\_PIPELINE\_VARIABLE**

Permanently deletes a user-level pipeline configuration variable identified by its UUID. Use this to remove pipeline variables that are no longer needed at the account level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                                                                                          |
| --------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `username`      | string |     ✅    | `"Composiodev"`                          | The username of the Bitbucket account that owns the pipeline variable. This is the account identifier.                                                               |
| `variable_uuid` | string |     ✅    | `"b070fa8a-c3db-42bd-870c-dea7c980c7b8"` | The UUID of the pipeline variable to delete. This must be in UUID format (e.g., b070fa8a-c3db-42bd-870c-dea7c980c7b8) and can be optionally wrapped in curly braces. |

***

### `Bitbucket Get Branch`

Integration name: **BITBUCKET\_GET\_BRANCH**

Retrieves detailed information about a specific branch in a Bitbucket repository. Use when you need to get branch metadata, the commit it points to, or verify a branch exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                                 |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `name`      | string |     ✅    | `"master"`       | The name of the branch to retrieve (e.g., 'master', 'main', 'feature/my-feature'). Do not include the 'refs/heads/' prefix. |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                           |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.      |

***

### `Bitbucket Get Commit Build Status`

Integration name: **BITBUCKET\_GET\_COMMIT\_BUILD\_STATUS**

Get a specific build status for a commit in Bitbucket. Use when you need to check the status of a particular build/CI run for a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                           |
| ----------- | ------ | :------: | -------------------------------------------- | ----------------------------------------------------- |
| `key`       | string |     ✅    | `"-1081267614"`                              | The unique key identifying the specific build status. |
| `commit`    | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to get the build status for.          |
| `repo_slug` | string |     ✅    | `"my-repo"`                                  | The slug or UUID of the repository.                   |
| `workspace` | string |     ✅    | `"my-workspace"`                             | The workspace ID or slug that owns the repository.    |

***

### `Bitbucket Get Commit Changes`

Integration name: **BITBUCKET\_GET\_COMMIT\_CHANGES**

Tool to retrieve a page of changes made in a specified commit, showing all changed files with their change statistics (lines added/removed, status). Use when you need to enumerate files modified in a specific commit or commit range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                      | Description                                                                           |
| ----------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                                          | Page number for paginated results (starts from 1).                                    |
| `spec`      | string  |     ✅    | `"93c760045beefc12723b2d62b3339f37ffed60bf"` | Commit SHA or range (e.g., '3a8b42' for single commit or '3a8b42..9ff173' for range). |
| `pagelen`   | integer |          | `10`                                         | Number of changes per page (1-100). Bitbucket default is 500 if not specified.        |
| `repo_slug` | string  |     ✅    | `"my-repo"`                                  | Repository slug (URL-friendly name).                                                  |
| `workspace` | string  |     ✅    | `"my-workspace"`                             | Workspace ID or slug (URL-friendly name).                                             |

***

### `Bitbucket Get Commit Comment`

Integration name: **BITBUCKET\_GET\_COMMIT\_COMMENT**

Retrieves a specific comment from a commit by its ID. Use when you need to fetch details of a particular commit comment including content, author, timestamps, and inline location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                      | Description                                          |
| ------------ | ------- | :------: | -------------------------------------------- | ---------------------------------------------------- |
| `commit`     | string  |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to retrieve the comment from.        |
| `repo_slug`  | string  |     ✅    | `"my-repo"`                                  | The repository slug (URL-friendly name).             |
| `workspace`  | string  |     ✅    | `"my-workspace"`                             | The workspace slug or UUID that owns the repository. |
| `comment_id` | integer |     ✅    | `15199377`                                   | The unique identifier for the comment.               |

***

### `Bitbucket Get Commit Diff`

Integration name: **BITBUCKET\_GET\_COMMIT\_DIFF**

Tool to retrieve the unified diff between two provided revisions or for a single commit in a Bitbucket repository. Use when you need to see the actual code changes in a commit or between two commits. Supports filtering by file path and various diff options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                      | Description                                                                                                                                                                           |
| ------------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`              | string  |          | `"foo"`                                      | Optional file path to filter the diff to a specific file or directory. If omitted, returns diff for all changes.                                                                      |
| `spec`              | string  |     ✅    | `"1ac3b5bd84d61e075420004d64fcfb3ef4be354a"` | A commit SHA, branch name, tag, or revspec (e.g. '3a8b42..9ff173' for range). For a single commit, provide the commit hash. For comparing two commits, use 'commit1..commit2' format. |
| `merge`             | boolean |          | `true`                                       | Whether to generate merge diff. Set to true for merge commit diffs.                                                                                                                   |
| `topic`             | boolean |          | `true`                                       | Whether to generate a 2-way three-dot diff when spec contains two commits. Set to true to use three-dot diff notation.                                                                |
| `binary`            | boolean |          | `true`                                       | Whether to include binary file diffs. Set to true to include binary diffs in the output.                                                                                              |
| `context`           | integer |          | `3`                                          | Number of context lines to include around changes. If not specified, uses the default context lines.                                                                                  |
| `renames`           | boolean |          | `true`                                       | Whether to detect file renames. Set to true to show rename detection in the diff.                                                                                                     |
| `repo_slug`         | string  |     ✅    | `"my-repo"`                                  | The repository slug (URL-friendly name).                                                                                                                                              |
| `workspace`         | string  |     ✅    | `"my-workspace"`                             | The workspace ID or username that owns the repository.                                                                                                                                |
| `ignore_whitespace` | boolean |          | `true`                                       | Whether to ignore whitespace changes in the diff. Set to true to exclude whitespace-only changes.                                                                                     |

***

### `Bitbucket Get Current User2`

Integration name: **BITBUCKET\_GET\_CURRENT\_USER2**

Tool to retrieve complete profile information for the currently authenticated Bitbucket user. Use when you need comprehensive user details including account\_id, username, nickname, and other profile fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Bitbucket Get Deployment Environment Variables`

Integration name: **BITBUCKET\_GET\_DEPLOYMENT\_ENVIRONMENT\_VARIABLES**

Retrieves deployment environment level variables for a specific Bitbucket repository environment. Use when you need to view or audit environment-specific configuration variables for deployments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                    | Description                                                                                                                                                                |
| ------------------ | ------ | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo_slug`        | string |     ✅    | `"my-repo"`                                | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                          |
| `workspace`        | string |     ✅    | `"my-workspace"`                           | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                     |
| `environment_uuid` | string |     ✅    | `"{2e1c3c19-12f2-4e9b-9ed7-45512af9a7ce}"` | The UUID of the deployment environment. Must be provided with curly braces (e.g., {2e1c3c19-12f2-4e9b-9ed7-45512af9a7ce}). The API will handle URL-encoding automatically. |

***

### `Bitbucket Get File From Repository`

Integration name: **BITBUCKET\_GET\_FILE\_FROM\_REPOSITORY**

Retrieves a specific file's content from a Bitbucket repository at a given commit (hash, branch, or tag), failing if the file path is invalid for that commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                   |
| ----------- | ------ | :------: | ---------------- | ----------------------------------------------------------------------------- |
| `path`      | string |     ✅    | `"src/main.py"`  | Full path to the file within the repository (e.g., 'src/main.py').            |
| `commit`    | string |     ✅    | `"main"`         | Commit hash, branch name (fetches latest), or tag for the file version.       |
| `repo_slug` | string |     ✅    | `"repo-name"`    | Repository slug or UUID (typically URL-formatted name).                       |
| `workspace` | string |     ✅    | `"workspace123"` | Workspace ID or UUID (often username or team name) containing the repository. |

***

### `Bitbucket Get Hook Events`

Integration name: **BITBUCKET\_GET\_HOOK\_EVENTS**

Retrieves a paginated list of all valid webhook events for a specified entity type (repository or workspace). Use when you need to discover available webhook event types for subscription or webhook configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example        | Description                                                                                                                                                                                                                    |
| -------------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `subject_type` | string |     ✅    | `"repository"` | The type of entity for which to retrieve available webhook events. Use 'repository' for repository-level events or 'workspace' for workspace-level events. Note: team and user webhooks are deprecated; use workspace instead. |

***

### `Bitbucket Get Openid Configuration`

Integration name: **BITBUCKET\_GET\_OPENID\_CONFIGURATION**

Retrieves the OpenID Connect discovery configuration for Bitbucket Pipelines OIDC. Use when integrating Bitbucket Pipelines with resource servers (AWS, GCP, Vault) using OpenID Connect authentication. Returns issuer URL, JWKS URI, and supported capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                                              |
| ----------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace identifier (workspace slug or UUID). This identifies the Bitbucket workspace for which to retrieve the OIDC configuration. |

***

### `Bitbucket Get Pull Request`

Integration name: **BITBUCKET\_GET\_PULL\_REQUEST**

Get a single pull request by ID with complete details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                        |
| ----------------- | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo_slug`       | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).                                                                                                               |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name). Must exactly match the pull request's workspace (case-sensitive); slug and UUID are not interchangeable. |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to retrieve.                                                                                                            |

***

### `Bitbucket Get Pull Request Comment`

Integration name: **BITBUCKET\_GET\_PULL\_REQUEST\_COMMENT**

Tool to retrieve a specific comment from a pull request by its ID. Use when you need to fetch details of a particular pull request comment including content, author, timestamps, and inline location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                          |
| ----------------- | ------- | :------: | ---------------- | ---------------------------------------------------- |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The repository slug (URL-friendly name).             |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The workspace slug or UUID that owns the repository. |
| `comment_id`      | integer |     ✅    | `75343`          | The unique identifier for the comment.               |
| `pull_request_id` | integer |     ✅    | `1`              | The unique identifier of the pull request.           |

***

### `Bitbucket Get Pull Request Commits`

Integration name: **BITBUCKET\_GET\_PULL\_REQUEST\_COMMITS**

Tool to retrieve commits for a specified pull request. Use when reviewing the commit history of a PR or analyzing changes included in a pull request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                                                                                                      |
| ----------------- | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pagelen`         | integer |          | `10`             | Number of commits per page (1-100).                                                                                                                                                                                              |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | Repository slug (URL-friendly name).                                                                                                                                                                                             |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).                                                                                                                                                                                        |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to retrieve commits for.                                                                                                                                                                              |
| `response_detail` | string  |          | —                | Level of detail in the response. 'minimal' (default) returns only essential commit information (hash, message, date, author name/email, html\_link). 'full' returns the complete Bitbucket API response with all nested objects. |

***

### `Bitbucket Get Pull Request Diff`

Integration name: **BITBUCKET\_GET\_PULL\_REQUEST\_DIFF**

Tool to fetch the unified diff for a Bitbucket pull request (follows 302 redirect to repository diff). Use when reviewing code changes in a PR. Supports optional truncation for large diffs via max\_chars parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                                                                |
| ----------------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `max_chars`       | integer |          | `50000`          | Maximum number of characters to return in the diff. If the diff exceeds this limit, it will be truncated. If None, no truncation is applied. Use this to protect against very large diffs. |
| `repo_slug`       | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).                                                                                                                                                       |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).                                                                                                                                                  |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to retrieve the diff for.                                                                                                                                       |

***

### `Bitbucket Get Pull Request Diffstat`

Integration name: **BITBUCKET\_GET\_PULL\_REQUEST\_DIFFSTAT**

Tool to get the diffstat for a Bitbucket pull request, showing all changed files with their change statistics (lines added/removed, status). Use when you need to enumerate files modified in a PR.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                             |
| ----------------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------------------- |
| `page`            | integer |          | `1`              | Page number for paginated results (starts from 1).                                      |
| `pagelen`         | integer |          | `10`             | Number of diffstat entries per page (1-100). Bitbucket default is 500 if not specified. |
| `repo_slug`       | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).                                                    |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).                                               |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to get diffstat for.                                         |

***

### `Bitbucket Get Raw File Content`

Integration name: **BITBUCKET\_GET\_RAW\_FILE\_CONTENT**

DEPRECATED: Use BITBUCKET\_GET\_FILE\_FROM\_REPOSITORY instead. Tool to retrieve the raw content of a file from a Bitbucket repository at a specified commit, branch, or tag. Use when you need to read file contents from a specific revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                          |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------ |
| `path`      | string |     ✅    | `"README.md"`    | The file path including filename and extension (e.g., 'src/main.py' or 'README.md'). |
| `commit`    | string |     ✅    | `"master"`       | The commit SHA, branch name, or tag name to retrieve the file from.                  |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly name) where the file is located.                   |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or username that owns the repository.                               |

***

### `Bitbucket Get Repositories Branching Model`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_BRANCHING\_MODEL**

Return the branching model as applied to the repository. Use when you need to understand the repository's branch workflow configuration, including development/production branches and branch type prefixes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                  |
| ----------- | ------ | :------: | ---------------- | -------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug.                                                                         |
| `workspace` | string |     ✅    | `"my-workspace"` | This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces. |

***

### `Bitbucket Get Repositories Commit`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT**

Tool to retrieve detailed information about a specific commit in a Bitbucket repository. Use when you need to get complete commit details including author, message, date, parents, and related links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                               |
| ----------- | ------ | :------: | -------------------------------------------- | ----------------------------------------- |
| `commit`    | string |     ✅    | `"f7591a13eda445d9a9167f98eb870319f4b6c2d8"` | The commit hash (SHA) to retrieve.        |
| `repo_slug` | string |     ✅    | `"my-repo"`                                  | Repository slug (URL-friendly name).      |
| `workspace` | string |     ✅    | `"my-workspace"`                             | Workspace ID or slug (URL-friendly name). |

***

### `Bitbucket Get Repositories Commit Comments`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT\_COMMENTS**

Retrieves all comments on a specific commit in a Bitbucket repository. Returns both global and inline code comments. Use when you need to view feedback, discussions, or notes left on a specific commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                      | Description                                                               |
| ----------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                                          | Page number for pagination. Defaults to 1 if not specified.               |
| `commit`    | string  |     ✅    | `"b1129dedc99ed09faf74ef3c0a88e55685c637b2"` | The commit hash/SHA to retrieve comments for.                             |
| `pagelen`   | integer |          | `10`                                         | Number of items per page for pagination. Defaults to 10 if not specified. |
| `repo_slug` | string  |     ✅    | `"my-repo"`                                  | The slug (URL-friendly version) of the repository name.                   |
| `workspace` | string  |     ✅    | `"my-workspace"`                             | The ID or slug of the workspace that owns the repository.                 |

***

### `Bitbucket Get Repositories Commit Report`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT\_REPORT**

Returns a single report matching the provided ID from a commit. Use when you need to retrieve details of a specific analysis report (e.g., security scan, code coverage, test results, or bug report) for a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                                                                        |
| ----------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `commit`    | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to which the report belongs. This is the full SHA-1 commit identifier.             |
| `repo_slug` | string |     ✅    | `"opup"`                                     | The repository slug (URL-friendly name) that contains the commit.                                  |
| `report_id` | string |     ✅    | `"c6a57369-7916-5077-ab79-bd89c412b834"`     | Either the uuid or external-id of the report to retrieve.                                          |
| `workspace` | string |     ✅    | `"jwalton"`                                  | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug. |

***

### `Bitbucket Get Repositories Commit Reports`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT\_REPORTS**

Tool to get reports linked to a specific commit. Use when you need to retrieve analysis results, test reports, security scans, or code coverage data associated with a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                        |
| ----------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------- |
| `commit`    | string |     ✅    | `"59d3c2c4c3e2682f0800f1fb85d45a776f4f19dd"` | The commit hash to retrieve reports for.           |
| `repo_slug` | string |     ✅    | `"my-repo"`                                  | The repository slug (URL-friendly name).           |
| `workspace` | string |     ✅    | `"my-workspace"`                             | The workspace ID or slug that owns the repository. |

***

### `Bitbucket Get Repositories Commit Reports Annotations`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT\_REPORTS\_ANNOTATIONS**

Returns a single annotation matching the provided ID from a commit report. Use when you need to retrieve details of a specific code analysis finding (e.g., vulnerability, code smell, or bug) identified in a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                      | Description                                                                                        |
| -------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `commit`       | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to which the report belongs. This is the full SHA-1 commit identifier.             |
| `reportId`     | string |     ✅    | `"c6a57369-7916-5077-ab79-bd89c412b834"`     | Either the uuid or external-id of the report that contains the annotation.                         |
| `repo_slug`    | string |     ✅    | `"opup"`                                     | The repository slug (URL-friendly name) that contains the commit.                                  |
| `workspace`    | string |     ✅    | `"jwalton"`                                  | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug. |
| `annotationId` | string |     ✅    | `"32657576-d2ea-53b5-9838-29a33ef82ff1"`     | Either the uuid or external-id of the annotation to retrieve.                                      |

***

### `Bitbucket Get Repositories Commit Statuses`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_COMMIT\_STATUSES**

Returns all build statuses (e.g., CI/CD pipeline results) for a specific commit. Use when you need to check build status, verify test results, or monitor deployment pipelines for a particular commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                                                                                            |
| ----------- | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `commit`    | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash (SHA) to retrieve statuses for. Can be full or abbreviated hash.                                       |
| `repo_slug` | string |     ✅    | `"my-repo"`                                  | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace` | string |     ✅    | `"my-workspace"`                             | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |

***

### `Bitbucket Get Repositories Effective Branching Model`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_EFFECTIVE\_BRANCHING\_MODEL**

Retrieves the effective branching model for a Bitbucket repository, showing which branching model is currently applied (including any inheritance from project-level settings). Use when you need to understand the repository's branch workflow configuration, including development and production branches and branch type prefixes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                              |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug. This is usually the repository's name in URL-friendly format.                                       |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace slug or UUID that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |

***

### `Bitbucket Get Repositories Environments2`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_ENVIRONMENTS2**

Retrieve detailed information about a specific deployment environment in a Bitbucket repository. Use when you need to get environment configuration, deployment settings, or check environment properties like locks and restrictions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                    | Description                                                                                                        |
| ------------------ | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| `repo_slug`        | string |     ✅    | `"opup"`                                   | The slug or UUID of the repository.                                                                                |
| `workspace`        | string |     ✅    | `"jwalton"`                                | The workspace ID or slug that owns the repository.                                                                 |
| `environment_uuid` | string |     ✅    | `"{2e1c3c19-12f2-4e9b-9ed7-45512af9a7ce}"` | The UUID of the environment to retrieve. Must include curly braces (e.g., {2e1c3c19-12f2-4e9b-9ed7-45512af9a7ce}). |

***

### `Bitbucket Get Repositories Filehistory`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_FILEHISTORY**

Returns a paginated list of commits that modified the specified file. Use when you need to track file changes over time, find who modified a file, or determine when a file was created or last changed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                     | Description                                                                                                                                                                                                                       |
| ----------- | ------- | :------: | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"commit.date<=2024-12-31"` | Query string for filtering commits in the file history. Common use: filter by commit date using 'commit.date<=YYYY-MM-DD' or 'commit.date>=YYYY-MM-DD'. Example: 'commit.date<=2024-12-31' returns only commits before that date. |
| `page`      | integer |          | `1`                         | Page number for paginated results (starts from 1).                                                                                                                                                                                |
| `path`      | string  |     ✅    | `"README.md"`               | Full path to the file within the repository (e.g., 'README.md', 'src/main.py').                                                                                                                                                   |
| `commit`    | string  |     ✅    | `"main"`                    | Commit hash, branch name, or tag from which to retrieve file history. The API returns commits reachable from this reference that modified the file.                                                                               |
| `fields`    | string  |          | `"+values.commit.message"`  | Comma-separated list of fields to include or exclude from the response. Prefix with '+' to add fields or '-' to remove them. Example: '+values.commit.message' adds commit messages to the response.                              |
| `pagelen`   | integer |          | `10`                        | Number of commits per page (1-100). Default is typically 30 if not specified.                                                                                                                                                     |
| `renames`   | boolean |          | —                           | Whether to follow file renames through history. If true (default), returns commits that modified the file even if it had a different name. If false, only returns commits where the file had the current path.                    |
| `repo_slug` | string  |     ✅    | `"my-repo"`                 | The repository slug (URL-friendly name) or UUID.                                                                                                                                                                                  |
| `workspace` | string  |     ✅    | `"my-workspace"`            | The workspace slug or UUID that owns the repository.                                                                                                                                                                              |

***

### `Bitbucket Get Repositories Issues Vote`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_ISSUES\_VOTE**

Tool to check whether the authenticated user has voted for a specific issue in a Bitbucket repository. Use when you need to verify if the current user has already voted on an issue before attempting to vote or unvote.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                            |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------- |
| `issue_id`  | integer |     ✅    | `82`             | The numeric ID of the issue to check vote status for.                  |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug (URL-friendly name) of the repository.                        |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug (URL-friendly name) that owns the repository. |

***

### `Bitbucket Get Repositories Merge Base`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_MERGE\_BASE**

Get the merge base (best common ancestor) between two commits in a Bitbucket repository. Use when you need to find the common ancestor commit between two branches or commits for comparison or merge operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                                | Description                                                                                                                                                |
| ----------- | ------ | :------: | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `revspec`   | string |     ✅    | `"3697bae531c6bc5efe512db884b07b25b30ae10d..f790dc6ef6ca873f43da36a95f9b8715b8a27d1f"` | Two commit hashes separated by '..' (e.g., '3a8b42..9ff173' or 'abc123..def456'). This specifies the two commits to find the best common ancestor between. |
| `repo_slug` | string |     ✅    | `"my-repo"`                                                                            | The slug or UUID of the repository.                                                                                                                        |
| `workspace` | string |     ✅    | `"my-workspace"`                                                                       | The workspace ID or slug that owns the repository.                                                                                                         |

***

### `Bitbucket Get Repositories Pipelines2`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES2**

Retrieve a specified pipeline from a Bitbucket repository. Use when you need to get detailed information about a specific pipeline execution including its status, build number, and results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                    | Description                                                                                |
| --------------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------ |
| `repo_slug`     | string |     ✅    | `"my-repo"`                                | The repository slug (URL-friendly name) or UUID.                                           |
| `workspace`     | string |     ✅    | `"my-workspace"`                           | The workspace ID (slug) or workspace UUID that owns the repository.                        |
| `pipeline_uuid` | string |     ✅    | `"{c931d8ab-6ab9-4910-bb5d-eab14e089cf2}"` | The pipeline UUID to retrieve. Must be in UUID format, typically enclosed in curly braces. |

***

### `Bitbucket Get Repositories Pipelines Config Caches`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_CONFIG\_CACHES**

Retrieves the repository pipelines caches. Use when you need to list all caches configured for Bitbucket Pipelines in a specific repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                            |
| ----------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |

***

### `Bitbucket Get Repositories Pipelines Config Runners`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_CONFIG\_RUNNERS**

Retrieves the list of self-hosted runners configured for a repository's pipelines. Use when you need to view available runners for pipeline execution.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                                                                                 |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly identifier) for the repository.                                                                                                           |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace slug or UUID that owns the repository. This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}'). |

***

### `Bitbucket Get Repositories Pipelines Config Schedules`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_CONFIG\_SCHEDULES**

Retrieves configured pipeline schedules for a Bitbucket repository. Use when you need to view scheduled pipeline runs and their cron patterns.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                        |
| ----------- | ------ | :------: | ---------------- | -------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug or identifier of the repository.          |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. |

***

### `Bitbucket Get Repositories Pipelines Config Ssh Known Hosts`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_CONFIG\_SSH\_KNOWN\_HOSTS**

Retrieves repository-level SSH known hosts configured for Bitbucket Pipelines. Use when you need to list or verify SSH known hosts that Pipelines can connect to during builds.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                   |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly identifier) for the repository.                             |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace slug or UUID. This identifies the Bitbucket workspace that owns the repository. |

***

### `Bitbucket Get Repositories Pipelines Config Variables`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_CONFIG\_VARIABLES**

Retrieves repository-level pipeline variables for a specific Bitbucket repository. Use when you need to view or audit pipeline configuration variables that are scoped to a repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                            |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"key~\"API\""`  | Query string for filtering results using Bitbucket Query Language (BBQL).                                              |
| `page`      | integer |          | `1`              | Page number for pagination. Use this to retrieve subsequent pages of results.                                          |
| `sort`      | string  |          | `"key"`          | Field to sort results by. Prefix with a hyphen (-) for descending order.                                               |
| `pagelen`   | integer |          | `10`             | Number of items to return per page. Controls the size of the paginated response.                                       |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |

***

### `Bitbucket Get Repositories Pipelines Steps`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PIPELINES\_STEPS**

Retrieves all steps for a given pipeline. Use when you need to inspect the individual steps of a pipeline execution, including their state, duration, and commands.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                    | Description                                                                                                            |
| --------------- | ------ | :------: | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------- |
| `repo_slug`     | string |     ✅    | `"my-repo"`                                | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace`     | string |     ✅    | `"my-workspace"`                           | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |
| `pipeline_uuid` | string |     ✅    | `"{f5500ca2-b74d-4e6a-84bf-5d2f73695152}"` | The UUID of the pipeline. Must be enclosed in curly braces (e.g., '{f5500ca2-b74d-4e6a-84bf-5d2f73695152}').           |

***

### `Bitbucket Get Repositories Pullrequests Activity`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PULLREQUESTS\_ACTIVITY**

Get paginated activity log for all pull requests in a repository. Returns comments, updates, approvals, and request changes. Use when you need to track pull request activity history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                           |
| ----------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                    |
| `pagelen`   | integer |          | `10`             | Number of activity entries per page (1-50). Bitbucket default is 20 if not specified. |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The repository slug (URL-friendly name).                                              |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug (URL-friendly name).                                         |

***

### `Bitbucket Get Repositories Pullrequests Comments`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PULLREQUESTS\_COMMENTS**

Retrieves a paginated list of comments on a specific pull request in a Bitbucket repository. Returns global, inline, and threaded comments. Use when you need to view feedback, discussions, or reviews left on a pull request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                   |
| ----------------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------------------------- |
| `page`            | integer |          | `1`              | Page number for pagination. Defaults to 1 if not specified.                                   |
| `sort`            | string  |          | `"created_on"`   | Sort order for results. Default is oldest to newest. Use '-created\_on' for newest to oldest. |
| `pagelen`         | integer |          | `10`             | Number of items per page for pagination. Defaults to 10 if not specified.                     |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The slug (URL-friendly version) of the repository name.                                       |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The ID or slug of the workspace that owns the repository.                                     |
| `pull_request_id` | integer |     ✅    | `1`              | The pull request ID to retrieve comments for.                                                 |

***

### `Bitbucket Get Repositories Pullrequests Statuses`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_PULLREQUESTS\_STATUSES**

Returns all build statuses (e.g., CI/CD pipeline results) for a specific pull request. Use when you need to check build status, verify test results, or monitor deployment pipelines for a pull request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                            |
| ----------------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `page`            | integer |          | `1`              | Page number for paginated results (starts from 1).                                                                     |
| `pagelen`         | integer |          | `10`             | Number of statuses per page (1-100). Bitbucket default is 30 if not specified.                                         |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to retrieve statuses for.                                                                   |

***

### `Bitbucket Get Repositories Refs`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_REFS**

Returns the branches and tags in the repository. Use when you need to list all refs (both branches and tags) in a single API call with optional filtering by type, name pattern, or commit hash.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ----------- | ------- | :------: | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name~\"feature/\""` | Query string using Bitbucket Query Language (BBQL) to filter refs. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal). String values MUST be enclosed in double quotes. Filter by name pattern using 'name~~"pattern"', by type using 'type="branch"' or 'type="tag"', or by commit hash using 'target.hash="hash"'. Examples: 'name\~"feature/"' (refs starting with feature/), 'type="branch"' (only branches), 'type="tag"' (only tags), 'target.hash="a1b2c3d4"' (refs pointing to specific commit). Combine multiple conditions with AND/OR (e.g., 'type="branch" AND name\~"feature/"'). |
| `page`      | integer |          | `1`                   | Page number for paginated results (starts from 1).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `sort`      | string  |          | `"name"`              | Field for sorting ref results. Prefix with '-' for descending order. Common sortable fields: 'name', 'target.date' (commit date). Default sorting applies natural sorting for ref names with numeric values.                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `pagelen`   | integer |          | `10`                  | Number of refs per page (1-100). Bitbucket default is typically 10 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `repo_slug` | string  |     ✅    | `"my-repo"`           | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `workspace` | string  |     ✅    | `"my-workspace"`      | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

***

### `Bitbucket Get Repositories Refs Tags`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_REFS\_TAGS**

Retrieves detailed information about a specific tag in a Bitbucket repository. Use when you need to get tag metadata, target commit details, or verify a tag exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                          |
| ----------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------- |
| `name`      | string |     ✅    | `"v1.0.0"`       | The name of the tag to retrieve (without refs/tags/ prefix). For example, 'v1.0.0' or 'fedex17'.     |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The slug (URL-friendly name) of the repository. This identifies the repository within the workspace. |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug.   |

***

### `Bitbucket Get Repositories Src`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_SRC**

Lists the contents of the root directory on the repository's main branch without needing to specify a commit or branch. This endpoint redirects to the main branch automatically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                         |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------- |
| `format`    | string |          | `"meta"`         | Optional format parameter. Use 'meta' to get metadata instead of raw contents when accessing files. |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly repository name).                                                 |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository.                                                  |

***

### `Bitbucket Get Repositories Watchers`

Integration name: **BITBUCKET\_GET\_REPOSITORIES\_WATCHERS**

Retrieves a paginated list of all the watchers on the specified repository. Use when you need to see who is watching a particular repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                        |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------ |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly identifier) for the repository.                                                  |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This is the user-friendly identifier or UUID for the workspace. |

***

### `Bitbucket Get Repository`

Integration name: **BITBUCKET\_GET\_REPOSITORY**

Retrieves detailed information about a specific repository in a Bitbucket workspace. Use when you need to get repository metadata, settings, or details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                   |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------- |
| `repo_slug` | string |     ✅    | `"my-repo"`      | The repository slug (URL-friendly identifier) for the repository to retrieve.                 |
| `workspace` | string |     ✅    | `"my-workspace"` | The workspace slug or UUID. This identifies the Bitbucket workspace that owns the repository. |

***

### `Bitbucket Get Repository Patch`

Integration name: **BITBUCKET\_GET\_REPOSITORY\_PATCH**

Tool to retrieve the git patch content for a Bitbucket repository at a specified revision or commit range. Use when you need to review code changes, generate diffs, or analyze modifications between commits. Returns raw patch in unified diff format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                                                                      |
| ----------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `spec`      | string  |     ✅    | `"master"`       | A commit hash, branch name, tag, or commit range (e.g., '3a8b42..9ff173'). If a single commit is provided, the diff is against its first parent. For ranges, shows diff between the two commits. |
| `max_chars` | integer |          | `50000`          | Maximum number of characters to return in the patch. If the patch exceeds this limit, it will be truncated. If None, no truncation is applied. Use this to protect against very large patches.   |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                           |

***

### `Bitbucket Get Snippet`

Integration name: **BITBUCKET\_GET\_SNIPPET**

Retrieves a specific Bitbucket snippet by its encoded ID from an existing workspace, returning its metadata and file structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                                              |
| --------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `workspace`     | string |     ✅    | `"myworkspace"`      | The workspace ID (slug) or the workspace UUID surrounded by curly braces, identifying the Bitbucket workspace.                                                                           |
| `encoded_id`    | string |     ✅    | `"kypj"`             | The unique identifier (encoded ID) of the snippet to be retrieved.                                                                                                                       |
| `accept_format` | string |          | `"application/json"` | The desired format for the response. Valid options are 'application/json', 'multipart/related', or 'multipart/form-data'. This may affect how snippet content or file data is presented. |

***

### `Bitbucket Get Snippets Watch`

Integration name: **BITBUCKET\_GET\_SNIPPETS\_WATCH**

Checks if the current user is watching a specific snippet. Use when you need to verify watch status for a snippet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example         | Description                                                                                                    |
| ------------ | ------ | :------: | --------------- | -------------------------------------------------------------------------------------------------------------- |
| `workspace`  | string |     ✅    | `"myworkspace"` | The workspace ID (slug) or the workspace UUID surrounded by curly braces, identifying the Bitbucket workspace. |
| `encoded_id` | string |     ✅    | `"kypj"`        | The unique identifier (encoded ID) of the snippet to check watch status for.                                   |

***

### `Bitbucket Get Ssh Latest Keys`

Integration name: **BITBUCKET\_GET\_SSH\_LATEST\_KEYS**

Retrieves a paginated list of SSH keys for a specified Bitbucket user. Use when you need to view or audit SSH keys configured for a user account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example         | Description                                                                                                                     |
| ---------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | `1`             | The page number for pagination. Starts at 1.                                                                                    |
| `pagelen`  | integer |          | `10`            | Number of SSH keys to return per page. Default is typically 10.                                                                 |
| `username` | string  |     ✅    | `"Composiodev"` | The username of the Bitbucket user to retrieve SSH keys for. This is the account username (slug), not the display name or UUID. |

***

### `Bitbucket Get User`

Integration name: **BITBUCKET\_GET\_USER**

Retrieves public profile information for a specific Bitbucket user by username or UUID. Use when you need to get user details like display name, avatar, creation date, and links to related resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example      | Description                                                                                                                                                              |
| --------------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `selected_user` | string |     ✅    | `"john_doe"` | The username or UUID of the user to retrieve. Can be a username (e.g., 'john\_doe') or a UUID enclosed in curly braces (e.g., '{4f3ecac3-c951-41d4-8a4c-95f40be978fc}'). |

***

### `Bitbucket Get User Emails`

Integration name: **BITBUCKET\_GET\_USER\_EMAILS**

Returns all the authenticated user's email addresses, both confirmed and unconfirmed. Use when you need to retrieve all email addresses associated with the current user's account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Bitbucket Get User Emails2`

Integration name: **BITBUCKET\_GET\_USER\_EMAILS2**

Retrieves details about a specific email address for the authenticated user. Use when you need to check if an email is primary, confirmed, or verify email ownership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                | Description                                                                                         |
| --------- | ------ | :------: | ---------------------- | --------------------------------------------------------------------------------------------------- |
| `email`   | string |     ✅    | `"hello@composio.dev"` | The email address to retrieve details for. Must be one of the authenticated user's email addresses. |

***

### `Bitbucket Get User Permissions Repositories`

Integration name: **BITBUCKET\_GET\_USER\_PERMISSIONS\_REPOSITORIES**

Returns an object for each repository the caller has explicit access to, including their permission level. Use when you need to discover which repositories the authenticated user can access and their specific permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                 |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | `1`     | Page number for paginated results. Used to retrieve a specific page in a multi-page result set. Page numbers start at 1.                    |
| `pagelen` | integer |          | `10`    | Number of items to return per page for pagination. Controls the size of the paginated result set. Default is typically 10 if not specified. |

***

### `Bitbucket Get User Permissions Workspaces`

Integration name: **BITBUCKET\_GET\_USER\_PERMISSIONS\_WORKSPACES**

Retrieves workspace memberships and permission levels for the authenticated user. Returns an object for each workspace the caller is a member of, along with their effective role (highest privilege level). Use when you need to determine which workspaces a user can access and their permission level in each.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                             | Description                                                                                                                                                                                                                                                                                                                                         |
| --------- | ------- | :------: | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string  |          | `"workspace.slug=\"my-workspace\""` | Query string to filter results by workspace slug or permission level using Bitbucket's filtering syntax. Examples: q=workspace.slug="workspace1" or q=permission="owner". Supported fields: workspace.slug (workspace identifier), permission (permission level). Use exact match with = operator. String values must be enclosed in double quotes. |
| `page`    | integer |          | `1`                                 | Page number for pagination. Use this to navigate through multiple pages of results.                                                                                                                                                                                                                                                                 |
| `pagelen` | integer |          | `10`                                | Number of items per page for pagination. Controls how many workspace permission objects are returned in a single response.                                                                                                                                                                                                                          |

***

### `Bitbucket Get User Workspaces`

Integration name: **BITBUCKET\_GET\_USER\_WORKSPACES**

Tool to retrieve all workspaces accessible to the authenticated user. Use when you need to list workspaces the current user can access, optionally filtered by workspace slug or permission level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                     | Description                                                                                                                                                                                                             |
| --------- | ------ | :------: | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string |          | `"workspace.slug=\"my-company-workspace\""` | Query string to filter workspaces by attributes such as workspace slug or permission level. Examples: 'workspace.slug="my-workspace"' or 'permission="owner"'. Follow Bitbucket's filtering syntax for complex queries. |

***

### `Bitbucket Get Workspace`

Integration name: **BITBUCKET\_GET\_WORKSPACE**

Retrieves detailed information about a specific Bitbucket workspace. Use when you need to get workspace metadata, settings, or details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example       | Description                                                                                                          |
| ----------- | ------ | :------: | ------------- | -------------------------------------------------------------------------------------------------------------------- |
| `workspace` | string |     ✅    | `"atlassian"` | The workspace ID (slug) or workspace UUID surrounded by curly-braces. Example: 'my-workspace' or '{workspace-uuid}'. |

***

### `Bitbucket Get Workspaces Pullrequests`

Integration name: **BITBUCKET\_GET\_WORKSPACES\_PULLREQUESTS**

Tool to get all workspace pull requests authored by a specified user. Use when you need to retrieve pull requests created by a specific user across all repositories in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example          | Description                                                                         |
| --------------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`              | Page number for paginated results (starts from 1).                                  |
| `state`         | string  |          | `"OPEN"`         | Lifecycle state of a pull request.                                                  |
| `pagelen`       | integer |          | `10`             | Number of pull requests per page (1-100). Bitbucket default is 10 if not specified. |
| `workspace`     | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).                                           |
| `selected_user` | string  |     ✅    | `"Composiodev"`  | The username of the user whose pull requests you want to retrieve.                  |

***

### `Bitbucket Get Workspaces Search Code`

Integration name: **BITBUCKET\_GET\_WORKSPACES\_SEARCH\_CODE**

Tool to search for code in the repositories of the specified workspace. Use when you need to find specific code patterns, function definitions, or text across all repositories in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                            | Description                                                                                                                                                                           |
| -------------- | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`         | integer |          | `1`                                | Page number for pagination. Use this to navigate through multiple pages of search results.                                                                                            |
| `fields`       | string  |          | `"+values.file.commit.repository"` | Additional fields to include in the response, using the fields parameter syntax. For example, '+values.file.commit.repository' to include repository details for each code match.     |
| `pagelen`      | integer |          | `10`                               | Number of results per page. Controls how many code search results are returned in a single response.                                                                                  |
| `workspace`    | string  |     ✅    | `"my-workspace"`                   | The workspace identifier. This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}').                                      |
| `search_query` | string  |     ✅    | `"test"`                           | The search query string to search for in the code. Can use advanced syntax like 'foo+repo:demo' to search within specific repositories, or 'test+ext:py' to filter by file extension. |

***

### `Bitbucket List Branches`

Integration name: **BITBUCKET\_LIST\_BRANCHES**

Lists branches in a Bitbucket repository with optional server-side filtering by name pattern (BBQL) and sorting. Use when you need to discover available branches, search for specific branch patterns, or navigate repository branch structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ----------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name~\"feature/\""` | Query string using Bitbucket Query Language (BBQL) to filter branches. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal). String values MUST be enclosed in double quotes. Common use case: filter by branch name pattern using 'name~~"pattern"'. Examples: 'name\~"feature/"' (branches starting with feature/), 'name="main"' (exact match for main branch). Combine multiple conditions with AND/OR (e.g., 'name\~"feature/" OR name\~"bugfix/"'). |
| `page`      | integer |          | `1`                   | Page number for paginated results (starts from 1).                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `sort`      | string  |          | `"name"`              | Field for sorting branch results. Prefix with '-' for descending order. Common sortable fields: 'name', 'target.date' (commit date). Default sorting applies natural sorting for branch names with numeric values.                                                                                                                                                                                                                                                                                             |
| `pagelen`   | integer |          | `10`                  | Number of branches per page (1-100). Bitbucket default is typically 10 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `repo_slug` | string  |     ✅    | `"my-repo"`           | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                                                                                                                                                                                                                                                                                                                              |
| `workspace` | string  |     ✅    | `"my-workspace"`      | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                                                                                                                                                                                                                                                                                                                                         |

***

### `Bitbucket List Commits`

Integration name: **BITBUCKET\_LIST\_COMMITS**

Tool to retrieve a page of commits from a Bitbucket repository. Returns commits in reverse chronological order (newest first), similar to git log. Use when you need to browse commit history, filter commits by branch/tag, or restrict to commits affecting a specific path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                                                                       |
| ----------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                                                                                                                                |
| `path`      | string  |          | `"src/main.py"`  | Filter commits to only those that affect the specified file or directory path.                                                                                                                    |
| `exclude`   | string  |          | `"release-1.0"`  | Branch or tag name, or commit SHA to exclude from the commit history. Commits reachable from this ref will be excluded. Multiple values can be separated by commas.                               |
| `include`   | string  |          | `"main"`         | Branch or tag name, or commit SHA to include in the commit history. If not specified, the repository's default branch is used. Multiple values can be separated by commas (e.g., 'main,develop'). |
| `pagelen`   | integer |          | `10`             | Number of commits per page (1-100). Bitbucket default is typically 30 if not specified.                                                                                                           |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                 |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                            |

***

### `Bitbucket List Commits From Revision`

Integration name: **BITBUCKET\_LIST\_COMMITS\_FROM\_REVISION**

Tool to list commits starting from a specific revision in a Bitbucket repository. Commits are paginated and returned in reverse chronological order. Use when you need to retrieve commit history from a specific commit, branch, or tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                      | Description                                                                                                                                                                     |
| ----------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                                          | Page number for paginated results (starts from 1).                                                                                                                              |
| `path`      | string  |          | `"src/main.py"`                              | Optional file path to filter commits. Only commits that modified this file or directory will be returned.                                                                       |
| `exclude`   | string  |          | `"develop"`                                  | Optional commit hash or branch to exclude from the results. Can be used to create a range with the 'include' parameter.                                                         |
| `include`   | string  |          | `"main"`                                     | Optional commit hash or branch to include in the results. Can be used to create a range with the 'exclude' parameter.                                                           |
| `pagelen`   | integer |          | `10`                                         | Number of commits per page (1-100). Bitbucket default is typically 30 if not specified.                                                                                         |
| `revision`  | string  |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash, branch name, tag, or other revision identifier to start listing commits from. Commits are returned in reverse chronological order starting from this revision. |
| `repo_slug` | string  |     ✅    | `"my-repo"`                                  | The slug of the repository. This is the repository's name, usually in lowercase and with hyphens instead of spaces.                                                             |
| `workspace` | string  |     ✅    | `"my-workspace"`                             | The workspace ID (slug) or UUID of the Bitbucket workspace that owns the repository. This can be the workspace name or its universally unique identifier.                       |

***

### `Bitbucket List Commits On Master`

Integration name: **BITBUCKET\_LIST\_COMMITS\_ON\_MASTER**

Lists commits on the master branch of a Bitbucket repository. Use when you need to retrieve the commit history for the master branch, including commit messages, authors, dates, and parent relationships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                            |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                                                     |
| `pagelen`   | integer |          | `10`             | Number of commits per page (1-100). Bitbucket default is typically 30 if not specified.                                |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                      |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace. |

***

### `Bitbucket List Deployments`

Integration name: **BITBUCKET\_LIST\_DEPLOYMENTS**

Lists deployments for a specified Bitbucket repository. Use when you need to view deployment history and status across environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                             | Description                                                                                                                                                          |
| ----------- | ------- | :------: | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"environment.name=\"Production\""` | Query string for filtering deployment results using Bitbucket Query Language (BBQL). Use operators like '=' for exact match, '\~' for contains, '!=' for not equal.  |
| `page`      | integer |          | `1`                                 | Page number of the results to retrieve. Defaults to 1 if not specified.                                                                                              |
| `sort`      | string  |          | `"created_on"`                      | Field designation for sorting results. Prefix with '-' for descending order.                                                                                         |
| `pagelen`   | integer |          | `10`                                | Number of results per page (1-100). Defaults to the Bitbucket API's default page length if not specified.                                                            |
| `repo_slug` | string  |     ✅    | `"my-repo"`                         | The repository slug (URL-friendly name).                                                                                                                             |
| `workspace` | string  |     ✅    | `"my-workspace"`                    | The workspace ID or slug (URL-friendly name). This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}'). |

***

### `Bitbucket List Issues`

Integration name: **BITBUCKET\_LIST\_ISSUES**

Lists issues in a Bitbucket repository with optional filtering by state, priority, kind, or assignee. Use when you need to discover issue IDs or get an overview of repository issues.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                         | Description                                                                                                                                                                                                      |
| ----------- | ------- | :------: | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `kind`      | string  |          | `"bug"`                                         | Filter issues by kind (type). Use 'bug', 'enhancement', 'proposal', or 'task'. If not provided, issues of all kinds are returned.                                                                                |
| `page`      | integer |          | `1`                                             | Page number for paginated results (starts from 1).                                                                                                                                                               |
| `state`     | string  |          | `"new"`                                         | Filter issues by state. Use a specific state like 'new', 'open', 'resolved', 'on hold', 'invalid', 'duplicate', 'wontfix', or 'closed'. If not provided, all issues regardless of state are returned.            |
| `pagelen`   | integer |          | `10`                                            | Number of issues per page (1-100). Bitbucket default is 10 if not specified.                                                                                                                                     |
| `assignee`  | string  |          | `"557058:c0b72ad0-1cb5-4018-9cdc-0cde8492c443"` | Filter issues by assignee. Provide the Bitbucket account ID (UUID) of the assignee. Use 'null' (as a string) to find unassigned issues. If not provided, issues with any assignee (or no assignee) are returned. |
| `priority`  | string  |          | `"major"`                                       | Filter issues by priority. Use 'trivial', 'minor', 'major', 'critical', or 'blocker'. If not provided, issues of all priorities are returned.                                                                    |
| `repo_slug` | string  |     ✅    | `"my-repo"`                                     | The slug (URL-friendly name) of the repository.                                                                                                                                                                  |
| `workspace` | string  |     ✅    | `"my-workspace"`                                | The workspace ID or slug (URL-friendly name) that owns the repository.                                                                                                                                           |

***

### `Bitbucket List Pipelines`

Integration name: **BITBUCKET\_LIST\_PIPELINES**

Tool to find pipelines in a Bitbucket repository. Returns pipeline metadata including state, trigger, and duration. Use when you need to browse pipeline history or check pipeline status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                               |
| ----------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                        |
| `pagelen`   | integer |          | `10`             | Number of pipelines per page (1-100). Bitbucket default is typically 10 if not specified. |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The repository slug (URL-friendly identifier).                                            |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace slug or UUID that owns the repository.                                      |

***

### `Bitbucket List Pull Requests`

Integration name: **BITBUCKET\_LIST\_PULL\_REQUESTS**

Lists pull requests in a specified, accessible Bitbucket repository, optionally filtering by state (OPEN, MERGED, DECLINED).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                        |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                 |
| `state`     | string  |          | `"OPEN"`         | Lifecycle state of a pull request.                                                 |
| `pagelen`   | integer |          | `10`             | Number of pull requests per page (1-50). Bitbucket default is 10 if not specified. |
| `repo_slug` | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).                                               |
| `workspace` | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).                                          |

***

### `Bitbucket List Pull Request Tasks`

Integration name: **BITBUCKET\_LIST\_PULL\_REQUEST\_TASKS**

Lists all tasks associated with a pull request in a Bitbucket repository. Use when you need to view or track tasks on a PR.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                 |
| ----------------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------- |
| `page`            | integer |          | `1`              | Page number for paginated results (starts from 1).                          |
| `pagelen`         | integer |          | `10`             | Number of tasks per page (1-100). Bitbucket default is 10 if not specified. |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The slug (URL-friendly name) of the repository.                             |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The workspace ID or slug (URL-friendly name) that owns the repository.      |
| `pull_request_id` | integer |     ✅    | `1`              | The unique identifier of the pull request.                                  |

***

### `Bitbucket List Repositories`

Integration name: **BITBUCKET\_LIST\_REPOSITORIES**

Retrieves a paginated list of all public repositories on Bitbucket. Use when you need to discover or search across public repositories, optionally filtered by role, query string, creation date, or sorted by various fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------- | ------- | :------: | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string  |          | `"name~\"my-repo\""`         | Query string using Bitbucket Query Language (BBQL) to filter repositories. Note: This parameter requires the 'role' parameter to be specified. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal), '>' '>=' '<' '<=' (comparison for dates/numbers). String values MUST be enclosed in double quotes. Valid repository fields: 'name', 'full\_name', 'is\_private', 'created\_on', 'updated\_on', 'language'. Combine multiple conditions with AND/OR (e.g., 'name~~"api" AND is\_private=false'). |
| `page`    | integer |          | —                            | The page number to retrieve in the paginated list of results. Page numbering starts at 1. Use together with 'pagelen' to control pagination.                                                                                                                                                                                                                                                                                                                                                                                                              |
| `role`    | string  |          | —                            | Enum for repository role filter values.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `sort`    | string  |          | `"name"`                     | Field to sort returned repositories by. Prefix with a hyphen (-) for descending order. Common sortable fields: 'name', 'created\_on', 'updated\_on'.                                                                                                                                                                                                                                                                                                                                                                                                      |
| `after`   | string  |          | `"2024-01-01T00:00:00.000Z"` | ISO-8601 timestamp to filter results created after this date/time. Format: YYYY-MM-DDTHH:mm:ss.sssZ (e.g., '2024-01-01T00:00:00.000Z'). Only repositories created after this timestamp will be returned.                                                                                                                                                                                                                                                                                                                                                  |
| `pagelen` | integer |          | —                            | The number of items to return per page. Accepts values between 1 and 100 (inclusive). Defaults to 10 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Bitbucket List Repositories Environments`

Integration name: **BITBUCKET\_LIST\_REPOSITORIES\_ENVIRONMENTS**

List all deployment environments configured for a Bitbucket repository. Use when you need to view available environments for deployments, check environment configurations, or select an environment for deployment operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                                                                                                                                               |
| ----------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name=\"Production\""` | Query string for filtering environment results using Bitbucket Query Language (BBQL). Use operators like '=' for exact match, '\~' for contains, '!=' for not equal.      |
| `page`      | integer |          | `1`                     | Page number of the results to retrieve. Defaults to 1 if not specified.                                                                                                   |
| `sort`      | string  |          | `"rank"`                | Field designation for sorting results. Prefix with '-' for descending order.                                                                                              |
| `pagelen`   | integer |          | `10`                    | Number of results per page (1-100). Defaults to the Bitbucket API's default page length if not specified.                                                                 |
| `repo_slug` | string  |     ✅    | `"opup"`                | The repository slug (URL-friendly name) or UUID.                                                                                                                          |
| `workspace` | string  |     ✅    | `"jwalton"`             | The workspace ID or slug that owns the repository. This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}'). |

***

### `Bitbucket List Repositories In Workspace`

Integration name: **BITBUCKET\_LIST\_REPOSITORIES\_IN\_WORKSPACE**

Lists repositories in a specified Bitbucket workspace, accessible to the authenticated user, with options to filter by role or query string, and sort results. Responses are paginated; iterate using the `next` field in each response until it is absent to retrieve all repositories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name~\"my-repo\""` | Query string using Bitbucket Query Language (BBQL) to filter repositories. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal), '>' '>=' '<' '<=' (comparison for dates/numbers). String values MUST be enclosed in double quotes. Valid repository fields: 'name', 'full\_name', 'project.key', 'is\_private', 'created\_on', 'updated\_on', 'language'. Combine multiple conditions with AND/OR (e.g., 'name~~"api" AND is\_private=true'). Note: 'repository' is NOT a valid field name - use 'name' instead. Invalid or malformed expressions return empty results silently rather than an error. |
| `page`      | integer |          | `1`                  | Page number of the results to retrieve. Defaults to 1 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `role`      | string  |          | `"member"`           | Filters repositories by the authenticated user's role within each repository.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `sort`      | string  |          | `"name"`             | Field for sorting repository results. Prefix with '-' for descending order. Common sortable fields: 'name', 'updated\_on', 'created\_on'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `pagelen`   | integer |          | `10`                 | Number of results per page (1-100). Defaults to 10 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `workspace` | string  |     ✅    | `"my-workspace"`     | The identifier of the Bitbucket workspace. This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}'). Empty results may indicate insufficient permissions rather than an invalid identifier.                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Bitbucket List Repository Paths`

Integration name: **BITBUCKET\_LIST\_REPOSITORY\_PATHS**

Lists file and directory entries under a repository path at a given revision, with optional breadth-first recursion via max\_depth for repository traversal and scanning. Fails if the path points to a file rather than a directory.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example           | Description                                                                                                                   |
| ----------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"path~\"test\""` | Filter query string using Bitbucket's REST API filtering syntax to narrow results.                                            |
| `page`      | integer |          | `1`               | Page number for paginated results (starts from 1).                                                                            |
| `path`      | string  |          | `"src"`           | Directory path within the repository to list. Use empty string for root. Must be a directory, not a file.                     |
| `sort`      | string  |          | `"path"`          | Field name for sorting results. Prefix with '-' for descending order.                                                         |
| `commit`    | string  |     ✅    | `"main"`          | Commit hash, branch name, or tag to list paths from. Determines the revision to traverse.                                     |
| `pagelen`   | integer |          | `10`              | Number of entries per page (1-100). Controls pagination size.                                                                 |
| `max_depth` | integer |          | `1`               | Maximum depth for breadth-first recursive directory traversal. If specified, includes nested subdirectories up to this depth. |
| `repo_slug` | string  |     ✅    | `"repo-name"`     | Repository slug or UUID (typically URL-formatted name).                                                                       |
| `workspace` | string  |     ✅    | `"workspace123"`  | Workspace ID or UUID (often username or team name) containing the repository.                                                 |

***

### `Bitbucket List Snippets`

Integration name: **BITBUCKET\_LIST\_SNIPPETS**

Returns all snippets accessible to the authenticated user. Use when you need to discover or list snippets, optionally filtered by role (owner, contributor, or member).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                               |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | `1`     | Page number of the results to retrieve. Defaults to 1 if not specified.                                   |
| `role`    | string  |          | —       | Enum for snippet role filter values.                                                                      |
| `pagelen` | integer |          | `10`    | Number of results per page (1-100). Defaults to the Bitbucket API's default page length if not specified. |

***

### `Bitbucket List Tags`

Integration name: **BITBUCKET\_LIST\_TAGS**

Lists tags in a Bitbucket repository with optional server-side filtering by name pattern or commit hash (BBQL) and sorting. Use when you need to discover available tags, search for specific tag patterns, or find tags pointing to specific commits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name~\"v1.\""` | Query string using Bitbucket Query Language (BBQL) to filter tags. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal). String values MUST be enclosed in double quotes. Common use case: filter by tag name pattern using 'name~~"pattern"' or by commit hash using 'target.hash="hash"'. Examples: 'name\~"v1."' (tags starting with v1.), 'name="v1.0.0"' (exact match for v1.0.0 tag), 'target.hash="a1b2c3d4"' (tags pointing to specific commit). Combine multiple conditions with AND/OR (e.g., 'name\~"v1." OR name\~"v2."'). |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `sort`      | string  |          | `"name"`         | Field for sorting tag results. Prefix with '-' for descending order. Common sortable fields: 'name', 'target.date' (commit date). Default sorting applies natural sorting for tag names with numeric values.                                                                                                                                                                                                                                                                                                                                                                                |
| `pagelen`   | integer |          | `10`             | Number of tags per page (1-100). Bitbucket default is typically 10 if not specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Bitbucket List Versions`

Integration name: **BITBUCKET\_LIST\_VERSIONS**

Lists versions (milestones) in a Bitbucket repository's issue tracker. Use when you need to discover available versions for associating with issues, or to retrieve version IDs for use with create\_issue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`         | string  |          | `"name~\"1.\""`  | Query string using Bitbucket Query Language (BBQL) to filter versions. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal). String values MUST be enclosed in double quotes. Common use case: filter by version name pattern using 'name~~"pattern"'. Examples: 'name\~"1."' (versions starting with 1.), 'name="2.0"' (exact match for version 2.0). |
| `page`      | integer |          | `1`              | Page number for paginated results (starts from 1).                                                                                                                                                                                                                                                                                                                                                          |
| `sort`      | string  |          | `"name"`         | Field for sorting version results. Prefix with '-' for descending order. Common sortable fields: 'name'. Default sorting applies natural sorting.                                                                                                                                                                                                                                                           |
| `pagelen`   | integer |          | `10`             | Number of versions per page (1-100). Bitbucket default is typically 10 if not specified.                                                                                                                                                                                                                                                                                                                    |
| `repo_slug` | string  |     ✅    | `"my-repo"`      | The slug or UUID of the repository. This is usually the repository's name in URL-friendly format.                                                                                                                                                                                                                                                                                                           |
| `workspace` | string  |     ✅    | `"my-workspace"` | The workspace ID or slug that owns the repository. This can typically be found in the URL of your Bitbucket workspace.                                                                                                                                                                                                                                                                                      |

***

### `Bitbucket List Workspace Members`

Integration name: **BITBUCKET\_LIST\_WORKSPACE\_MEMBERS**

Lists all members of a specified Bitbucket workspace; the workspace must exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example               | Description                                                                                                                       |
| ----------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                   | Page number of the results to retrieve. Defaults to 1 if not specified.                                                           |
| `pagelen`   | integer |          | `10`                  | Number of results per page (1-100). Defaults to the Bitbucket API's default page length if not specified.                         |
| `workspace` | string  |     ✅    | `"my-workspace-slug"` | The workspace ID (UUID) or slug from which to list members. The slug is the user-friendly, URL-safe identifier for the workspace. |

***

### `Bitbucket List Workspace Projects`

Integration name: **BITBUCKET\_LIST\_WORKSPACE\_PROJECTS**

Lists projects in a specified Bitbucket workspace. Use when you need to retrieve all projects belonging to a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example           | Description                                                                                                                                                                                                                                                                                                                                                                                |
| ----------- | ------- | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `q`         | string  |          | `"name~\"test\""` | Query string to filter projects by attributes, following Bitbucket's filtering syntax. Syntax: 'field operator value'. Operators: '=' (exact match), '~~' (contains substring), '!=' (not equal). String values MUST be enclosed in double quotes. Valid project fields: 'name', 'key', 'is\_private'. Combine multiple conditions with AND/OR (e.g., 'name~~"api" AND is\_private=true'). |
| `page`      | integer |          | `1`               | Specifies which page of results to return. Page numbering starts at 1.                                                                                                                                                                                                                                                                                                                     |
| `sort`      | string  |          | `"name"`          | Field to sort returned projects by; prefix with a hyphen (-) for descending order. Common sortable fields: 'name', 'key', 'created\_on', 'updated\_on'.                                                                                                                                                                                                                                    |
| `pagelen`   | integer |          | `10`              | Controls the number of items per page. Must be between 1 and 100.                                                                                                                                                                                                                                                                                                                          |
| `workspace` | string  |     ✅    | `"atlassian"`     | The identifier of the Bitbucket workspace. This can be the workspace slug (e.g., 'my-workspace') or its UUID enclosed in curly braces (e.g., '{workspace-uuid}').                                                                                                                                                                                                                          |

***

### `Bitbucket List Workspaces`

Integration name: **BITBUCKET\_LIST\_WORKSPACES**

Lists Bitbucket workspaces accessible to the authenticated user, optionally filtered and sorted. Results are paginated; follow the `next` field in each response to retrieve subsequent pages until `next` is absent. When multiple workspaces are returned, verify the correct `slug` or UUID before passing to downstream tools.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                           | Description                                                                              |
| --------- | ------- | :------: | --------------------------------- | ---------------------------------------------------------------------------------------- |
| `q`       | string  |          | `"slug=\"my-company-workspace\""` | Query string to filter workspaces by attributes, following Bitbucket's filtering syntax. |
| `page`    | integer |          | `1`                               | Page number of the results to retrieve. Defaults to 1 if not specified.                  |
| `sort`    | string  |          | `"created_on"`                    | Field to sort returned workspaces by; prefix with a hyphen (-) for descending order.     |
| `pagelen` | integer |          | `10`                              | Number of results per page (1-100). Defaults to 10 if not specified.                     |

***

### `Bitbucket Merge Pull Request`

Integration name: **BITBUCKET\_MERGE\_PULL\_REQUEST**

Tool to merge a Bitbucket Cloud pull request via the REST API. Use when you need to complete a PR merge after approval and checks pass. Supports custom merge messages, merge strategies, and source branch deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                            | Description                                                                                                                                              |
| --------------------- | ------- | :------: | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`             | string  |          | `"Merge feature branch into main"` | Custom merge commit message. If not provided, Bitbucket generates a default message.                                                                     |
| `repo_slug`           | string  |     ✅    | `"my-cool-repo"`                   | Repository slug (URL-friendly name).                                                                                                                     |
| `workspace`           | string  |     ✅    | `"my-workspace"`                   | Workspace ID or slug (URL-friendly name).                                                                                                                |
| `merge_strategy`      | string  |          | `"merge_commit"`                   | Merge strategy to use. Common values include 'merge\_commit', 'squash', 'fast\_forward'. If not specified, uses the repository's default merge strategy. |
| `pull_request_id`     | integer |     ✅    | `1`                                | The ID of the pull request to merge.                                                                                                                     |
| `close_source_branch` | boolean |          | `true`                             | Whether to close the source branch after merging. If not specified, uses the repository's default setting.                                               |

***

### `Bitbucket Request Pull Request Changes`

Integration name: **BITBUCKET\_REQUEST\_PULL\_REQUEST\_CHANGES**

Tool to request changes on a pull request as the authenticated user. Use when you need to formally request changes in a pull request review process, indicating the PR needs modifications before approval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                       |
| ----------------- | ------- | :------: | ---------------- | ------------------------------------------------- |
| `repo_slug`       | string  |     ✅    | `"my-cool-repo"` | Repository slug (URL-friendly name).              |
| `workspace`       | string  |     ✅    | `"my-workspace"` | Workspace ID or slug (URL-friendly name).         |
| `pull_request_id` | integer |     ✅    | `1`              | The ID of the pull request to request changes on. |

***

### `Bitbucket Resolve Pull Request Comment`

Integration name: **BITBUCKET\_RESOLVE\_PULL\_REQUEST\_COMMENT**

Tool to resolve or reopen a pull request comment thread. Use when marking a comment as addressed during review or reopening a previously resolved thread.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                              |
| ----------------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------- |
| `action`          | string  |          | `"resolve"`      | Action to perform: 'resolve' marks the comment thread as addressed, 'reopen' unmarks it. |
| `repo_slug`       | string  |     ✅    | `"my-repo"`      | The repository slug (URL-friendly name).                                                 |
| `workspace`       | string  |     ✅    | `"my-workspace"` | The workspace slug or UUID that owns the repository.                                     |
| `comment_id`      | integer |     ✅    | `75343`          | The unique identifier for the comment to resolve or reopen.                              |
| `pull_request_id` | integer |     ✅    | `1`              | The unique identifier of the pull request.                                               |

***

### `Bitbucket Search Team Code`

Integration name: **BITBUCKET\_SEARCH\_TEAM\_CODE**

Search for code in repositories of a specified team. Matches can occur in file content or paths. Note: Teams endpoints were deprecated in Oct 2020; use workspace search endpoints for new integrations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example       | Description                                                                                                                                                                              |
| -------------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`         | integer |          | `1`           | Which page of search results to retrieve (starts from 1).                                                                                                                                |
| `pagelen`      | integer |          | `5`           | How many search results to retrieve per page (1-100). Default is 10 if not specified.                                                                                                    |
| `username`     | string  |     ✅    | `"atlassian"` | The team account username or UUID in curly braces (e.g., 'team-name' or '{team-uuid}'). Note: Teams endpoints are deprecated since Oct 2020; consider using workspace endpoints instead. |
| `search_query` | string  |     ✅    | `"test"`      | The search query string. Supports advanced syntax like 'repo:demo' to filter by repository, or combine terms with AND/OR operators. Same syntax as the Bitbucket UI search.              |

***

### `Bitbucket Search User Repositories Code`

Integration name: **BITBUCKET\_SEARCH\_USER\_REPOSITORIES\_CODE**

Tool to search for code in the repositories of a specified user. Use when you need to find specific code patterns, functions, or text across all repositories owned by a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                            | Description                                                                                                                                               |
| --------------- | ------- | :------: | ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                                | Which page of search results to retrieve (default: 1).                                                                                                    |
| `fields`        | string  |          | `"+values.file.commit.repository"` | Request additional fields in the response. Use '+' prefix to expand nested fields (e.g., '+values.file.commit.repository' to include repository details). |
| `pagelen`       | integer |          | `10`                               | How many search results per page (default: 10).                                                                                                           |
| `search_query`  | string  |     ✅    | `"test"`                           | The search query using the same syntax as the Bitbucket UI. Can include repo filters (e.g., 'test', 'foo+repo:demo').                                     |
| `selected_user` | string  |     ✅    | `"tutorials"`                      | The username of the user whose repositories to search.                                                                                                    |

***

### `Bitbucket Update Insights Projects Repos Commits Reports`

Integration name: **BITBUCKET\_UPDATE\_INSIGHTS\_PROJECTS\_REPOS\_COMMITS\_REPORTS**

Create or update an insight report for a commit. Creates a new report if it doesn't exist, or replaces the existing one if a report already exists for the given repository, commit, and report key. Note: replacing an existing report will be rejected if the authenticated user was not the creator of the specified report.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                                                              | Description                                                                                                       |
| --------------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `data`                | array   |          | `[{"type":"DURATION","title":"Duration (seconds)","value":42},{"type":"NUMBER","title":"Tests passed","value":100}]` | Array of data items containing additional information about the report. Maximum 6 items.                          |
| `link`                | string  |          | `"https://example.com/report/123"`                                                                                   | An external link providing more information about the report. Must be a valid HTTP/HTTPS URL.                     |
| `title`               | string  |     ✅    | `"Composio Test Report"`                                                                                             | The title of the report. Maximum 450 characters.                                                                  |
| `commit`              | string  |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"`                                                                         | The commit hash to which the report belongs. This is the full SHA-1 commit identifier (40 characters).            |
| `result`              | string  |          | `"PASSED"`                                                                                                           | Enum for report results.                                                                                          |
| `details`             | string  |     ✅    | `"This is a test report created by Composio to verify the endpoint works correctly"`                                 | Detailed description of the report. Maximum 2000 characters. Supports escaped newlines.                           |
| `logo_url`            | string  |          | `"https://example.com/logo.png"`                                                                                     | URL to the logo image for the reporting tool. Must be a valid HTTP/HTTPS URL.                                     |
| `reportId`            | string  |     ✅    | `"composio-test-001"`                                                                                                | Unique identifier for the report. Recommend using reverse DNS namespacing (e.g., 'com.company.tool.report-name'). |
| `reporter`            | string  |          | `"Composio"`                                                                                                         | The name of the system or tool that created the report. Maximum 450 characters.                                   |
| `repo_slug`           | string  |     ✅    | `"opup"`                                                                                                             | The repository slug (URL-friendly name) that contains the commit.                                                 |
| `workspace`           | string  |     ✅    | `"jwalton"`                                                                                                          | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug.                |
| `report_type`         | string  |     ✅    | `"TEST"`                                                                                                             | The type of report: SECURITY, COVERAGE, TEST, or BUG.                                                             |
| `remote_link_enabled` | boolean |          | `true`                                                                                                               | Whether remote link is enabled for the report.                                                                    |

***

### `Bitbucket Update Issue`

Integration name: **BITBUCKET\_UPDATE\_ISSUE**

Updates an existing issue in a Bitbucket repository by modifying specified attributes; requires `workspace`, `repo_slug`, `issue_id`, and at least one attribute to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                                                         | Description                                                                                                                           |
| --------------------- | ------ | :------: | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `kind`                | string |          | `"bug"`                                                                         | Types/kinds of Bitbucket issues.                                                                                                      |
| `state`               | string |          | `"resolved"`                                                                    | States for Bitbucket issues.                                                                                                          |
| `title`               | string |          | `"Updated critical bug fix for login"`                                          | The new title for the issue. If omitted, the title remains unchanged.                                                                 |
| `content`             | string |          | `"Detailed description of the updated steps to reproduce and the fix applied."` | The new content or description for the issue, in raw text format. If omitted, the content remains unchanged.                          |
| `version`             | string |          | `"2.0"`                                                                         | The name of the version affected by this issue (e.g., '1.0.0', '2.0-beta'). If omitted, the version remains unchanged.                |
| `issue_id`            | string |     ✅    | `"123"`                                                                         | The unique identifier (ID) of the issue to be updated.                                                                                |
| `priority`            | string |          | `"major"`                                                                       | Priority levels for Bitbucket issues.                                                                                                 |
| `component`           | string |          | `"backend"`                                                                     | The name of the component to associate with the issue (e.g., 'API', 'Frontend'). If omitted, the component remains unchanged.         |
| `milestone`           | string |          | `"v1.0"`                                                                        | The name of the milestone to associate with the issue (e.g., 'Sprint 1', 'v1.0 Launch'). If omitted, the milestone remains unchanged. |
| `repo_slug`           | string |     ✅    | `"my-repo"`                                                                     | The slug or name of the repository (e.g., 'my-app-repo').                                                                             |
| `workspace`           | string |     ✅    | `"my-workspace"`                                                                | The workspace ID or slug that owns the repository (e.g., 'my-company' or '{123e4567-e89b-12d3-a456-426614174000}').                   |
| `assignee_account_id` | string |          | `"557058:c0b72ad0-1cb5-4018-9cdc-0cde8492c443"`                                 | The Bitbucket account ID (UUID) of the user to assign the issue to. If omitted, the assignee remains unchanged.                       |

***

### `Bitbucket Update Pull Request`

Integration name: **BITBUCKET\_UPDATE\_PULL\_REQUEST**

Tool to update an existing pull request's editable fields (e.g., title, description, reviewers) via the Bitbucket Cloud API. Use when you need to modify a pull request without creating a new one. Only sends fields that are explicitly provided to avoid accidental overwrites.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                                                 | Description                                                                                                                     |
| --------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `draft`               | boolean |          | `true`                                                                                                  | If true, marks the pull request as a draft. If false, marks it as ready for review. If omitted, draft status remains unchanged. |
| `title`               | string  |          | `"Update: Refactor authentication module"`                                                              | Updated title for the pull request. If omitted, title remains unchanged.                                                        |
| `repo_slug`           | string  |     ✅    | `"my-repo"`                                                                                             | Repository slug (URL-friendly name) or UUID.                                                                                    |
| `reviewers`           | array   |          | `[{"uuid":"{123e4567-e89b-12d3-a456-426614174000}"},{"uuid":"{098f6bcd-4621-4eb7-9cb0-1e234567c89d}"}]` | Updated list of Bitbucket user UUIDs to be reviewers. Replaces existing reviewers. If omitted, reviewers remain unchanged.      |
| `workspace`           | string  |     ✅    | `"my-workspace"`                                                                                        | Workspace ID (slug) or workspace UUID that owns the repository.                                                                 |
| `description`         | string  |          | `"This PR refactors the authentication module to improve security and maintainability."`                | Updated Markdown description for the pull request. If omitted, description remains unchanged.                                   |
| `pull_request_id`     | integer |     ✅    | `1`                                                                                                     | Unique ID of the pull request to update.                                                                                        |
| `close_source_branch` | boolean |          | `true`                                                                                                  | If true, automatically closes the source branch upon pull request merge. If omitted, setting remains unchanged.                 |

***

### `Bitbucket Update Repositories Commit Comments`

Integration name: **BITBUCKET\_UPDATE\_REPOSITORIES\_COMMIT\_COMMENTS**

Updates the contents of a comment on a commit. Use when you need to modify an existing comment's text on a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                                                 |
| ------------- | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------- |
| `commit`      | string |     ✅    | `"f5038a72e982b5d35ecb0e83c407c12496697529"` | The commit hash to update the comment on.                                   |
| `repo_slug`   | string |     ✅    | `"my-repo"`                                  | The repository slug (URL-friendly name).                                    |
| `workspace`   | string |     ✅    | `"my-workspace"`                             | The workspace slug or UUID that owns the repository.                        |
| `comment_id`  | string |     ✅    | `"19285881"`                                 | The unique identifier for the comment to update.                            |
| `content_raw` | string |     ✅    | `"Updated comment - API test successful!"`   | The updated raw text content for the comment. Supports markdown formatting. |

***

### `Bitbucket Update Repositories Commit Reports Annotations`

Integration name: **BITBUCKET\_UPDATE\_REPOSITORIES\_COMMIT\_REPORTS\_ANNOTATIONS**

Creates or updates an individual annotation for a commit report. Use when you need to add or modify code analysis findings (vulnerabilities, code smells, or bugs) identified in a commit.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                             | Description                                                                                                                                                           |
| ----------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `line`            | integer |          | `42`                                                                                                                | Line number in the file where the finding occurs. Must be a positive integer.                                                                                         |
| `link`            | string  |          | `"https://docs.example.com/code-smells/complexity"`                                                                 | URL providing more information about the finding, such as documentation or issue tracker link.                                                                        |
| `path`            | string  |          | `"src/auth/login.js"`                                                                                               | File path where the annotation applies, relative to the repository root.                                                                                              |
| `commit`          | string  |     ✅    | `"1ac3b5bd84d61e075420004d64fcfb3ef4be354a"`                                                                        | The commit hash to which the report belongs. This is the full SHA-1 commit identifier.                                                                                |
| `result`          | string  |          | `"PASSED"`                                                                                                          | Enumeration of annotation result statuses.                                                                                                                            |
| `details`         | string  |          | `"This nested condition creates a cyclomatic complexity of 12. Consider extracting logic into separate functions."` | Extended description providing additional context, remediation guidance, or technical details about the finding.                                                      |
| `summary`         | string  |     ✅    | `"Code smell: complex nested conditions should be refactored"`                                                      | Brief description of the finding. Should concisely explain what was detected.                                                                                         |
| `severity`        | string  |     ✅    | `"MEDIUM"`                                                                                                          | Impact level of the finding. CRITICAL for severe issues requiring immediate attention, HIGH for important issues, MEDIUM for moderate concerns, LOW for minor issues. |
| `repo_slug`       | string  |     ✅    | `"git-tests"`                                                                                                       | The repository slug (URL-friendly name) that contains the commit.                                                                                                     |
| `report_id`       | string  |     ✅    | `"test-report-123"`                                                                                                 | Either the uuid or external-id of the report that will contain the annotation.                                                                                        |
| `workspace`       | string  |     ✅    | `"evzijst"`                                                                                                         | The workspace ID or slug that owns the repository. This can be a user's username or a team's slug.                                                                    |
| `external_id`     | string  |          | `"sonarqube-issue-12345"`                                                                                           | Unique identifier for tracking this annotation in an external system. Useful for correlating with external tools.                                                     |
| `annotation_id`   | string  |     ✅    | `"test-annotation-001"`                                                                                             | Either the uuid or external-id of the annotation to create or update.                                                                                                 |
| `annotation_type` | string  |     ✅    | `"CODE_SMELL"`                                                                                                      | Type of annotation indicating the nature of the finding: VULNERABILITY for security issues, CODE\_SMELL for maintainability issues, or BUG for functional defects.    |

***

### `Bitbucket Update Teams Pipelines Config Variables`

Integration name: **BITBUCKET\_UPDATE\_TEAMS\_PIPELINES\_CONFIG\_VARIABLES**

Updates a team-level pipeline configuration variable in Bitbucket. Use when you need to modify existing environment variables or configuration values that are available to all pipelines within a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                                          |
| --------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`           | string  |     ✅    | `"TEST_UPDATE_VAR"`                      | The name/key of the pipeline variable. Must be unique within the team's pipeline configuration.                                                                      |
| `value`         | string  |     ✅    | `"FINAL_UPDATED_VALUE"`                  | The updated value of the pipeline variable. This will be available to all pipelines in the team.                                                                     |
| `secured`       | boolean |          | `true`                                   | Whether the variable should be secured (masked in logs). Set to `True` for sensitive values like passwords or API keys, `False` for non-sensitive values.            |
| `username`      | string  |     ✅    | `"Composiodev"`                          | The team username that owns the pipeline configuration. This is the team identifier in Bitbucket.                                                                    |
| `variable_uuid` | string  |     ✅    | `"252a372b-3e5d-4869-9df5-c379d6b062e9"` | The UUID of the pipeline variable to update. This must be in UUID format (e.g., 252a372b-3e5d-4869-9df5-c379d6b062e9) and can be optionally wrapped in curly braces. |

***

### `Bitbucket Update Users Pipelines Config Variables`

Integration name: **BITBUCKET\_UPDATE\_USERS\_PIPELINES\_CONFIG\_VARIABLES**

Updates a user-level pipeline variable for Bitbucket pipelines. Use when you need to modify account-level configuration variables such as changing the value, key name, or security status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                                                                                       |
| --------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`           | string  |          | `"API_KEY"`                              | The updated name/key of the pipeline variable. If omitted, the key remains unchanged.                                                                                             |
| `value`         | string  |          | `"my-updated-secret-value"`              | The updated value of the pipeline variable. If omitted, the value remains unchanged.                                                                                              |
| `secured`       | boolean |          | —                                        | Whether the variable should be secured/encrypted (true) or stored as plain text (false). If omitted, the secured status remains unchanged.                                        |
| `selected_user` | string  |     ✅    | `"myusername"`                           | The UUID or username of the user. When using UUID format, it should be URL-encoded (e.g., %7B4f3ecac3-c951-41d4-8a4c-95f40be978fc%7D for {4f3ecac3-c951-41d4-8a4c-95f40be978fc}). |
| `variable_uuid` | string  |     ✅    | `"7446973a-4740-46a8-bf74-60bbebac59f8"` | The UUID of the pipeline variable to update. This can be obtained from the list or get variable endpoints.                                                                        |

***


# Blackbaud

Your Toolhouse AI Worker can connect to Blackbaud using 5 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](https://toolhouse.app/auth-connections?authkit_slugs=blackbaud).

## Tools (5)

### `Blackbaud Add Gifts To Batch`

Integration name: **BLACKBAUD\_ADD\_GIFTS\_TO\_BATCH**

Add one or more gifts (donations) to an existing gift batch in Blackbaud Raiser's Edge NXT. Use this tool when you need to:

* Append new gifts to an open batch for later processing
* Batch multiple donations together before committing them
* Add gifts with detailed information (payments, splits, custom fields)

Prerequisites:

* The batch must already exist (use a create batch action first if needed)
* The batch must be in "open" status (not committed)
* You need the `batch_id` (system record ID) and `constituent_id` (donor ID) for each gift

Note: This action returns response details for all HTTP status codes (including errors). Check the `status_code` field in the response to determine success (200) vs errors (4xx/5xx).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                               |
| ---------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `gifts`    | array  |     ✅    | —                                        | List of one or more gift objects to add to the batch. Each gift represents a donation from a constituent. |
| `batch_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | The system record ID of the gift batch where gifts will be added. The batch must be open (not committed). |

***

### `Blackbaud Get Gift By Id`

Integration name: **BLACKBAUD\_GET\_GIFT\_BY\_ID**

Retrieves comprehensive gift details from Blackbaud Raiser's Edge NXT by gift ID. Use this tool when you need to fetch detailed information about a specific gift including:

* Gift amount and currency
* Donor/constituent information
* Gift type and status
* Important dates (gift date, post date)
* Associated metadata and custom fields

The `gift_id` is the unique system record ID (integer) that identifies the gift in Raiser's Edge NXT.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                      |
| --------- | ------- | :------: | ------- | ------------------------------------------------ |
| `gift_id` | integer |     ✅    | `123`   | Unique system record ID of the gift to retrieve. |

***

### `Blackbaud Get Membership Details`

Integration name: **BLACKBAUD\_GET\_MEMBERSHIP\_DETAILS**

Retrieves comprehensive membership details from Blackbaud Raiser's Edge NXT by member junction ID. Fetches detailed information about a specific membership including program name, category/subcategory, membership status and standing (Active, Lapsed), start/expiration dates, dues information, and associated constituent ID. Requires a valid `member_junction_id` (GUID) that uniquely identifies a membership junction record linking a constituent to a membership program in Raiser's Edge NXT. Returns error information in the response object for graceful error handling in agent workflows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                              |
| -------------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `member_junction_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | The unique member junction ID (GUID format) that identifies a specific membership record in Raiser's Edge NXT. This ID links a constituent to a membership program and can be obtained from membership list endpoints or constituent membership records. |

***

### `Blackbaud Get Payment Transaction`

Integration name: **BLACKBAUD\_GET\_PAYMENT\_TRANSACTION**

Retrieves payment transaction details from Blackbaud SKY Payments API. Use this to check transaction status, amounts, payment methods, and error details. Transaction IDs come from payment processing endpoints, checkout callbacks, batch operations, or webhook notifications. Requires: Payments API subscription key (`Bb-Api-Subscription-Key`) and OAuth Bearer token. This retrieves existing transactions; it does not process new payments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                  | Description                                                                                                                                                                                                      |
| ---------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `transaction_id` | string |     ✅    | `"d7a1b4c2-1234-5678-9abc-def012345678"` | The unique identifier of the payment transaction to retrieve. This ID is returned when a transaction is created through the Blackbaud Merchant Services (BBMS) Payments API or transaction processing endpoints. |

***

### `Blackbaud One Roster O Auth2 Base Api`

Integration name: **BLACKBAUD\_ONE\_ROSTER\_O\_AUTH2\_BASE\_API**

Tool to interact with Blackbaud OneRoster OAuth2 base endpoints. Use to fetch OpenID configuration (`/.well-known/openid-configuration`), JWKS key set (`publickeys`), or obtain an access token via the client credentials grant. Ensure client credentials are configured before using the token operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                       |
| ----------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`           | string |          | —       | Optional OAuth2 scope string. OneRoster generally does not require a scope; leave empty unless instructed by Blackbaud.                           |
| `clientId`        | string |          | —       | OneRoster OAuth2 `client_id` (key) provided by the institution.                                                                                   |
| `basicAuth`       | string |          | —       | Optional Authorization header value for HTTP Basic authentication, e.g., `'Basic base64(client_id:client_secret)'`. If provided, it will be used. |
| `grantType`       | string |          | —       | OAuth2 grant type; must be `'client_credentials'` for token operation.                                                                            |
| `operation`       | string |          | —       | Which OAuth2 resource to call: `openid_configuration`, `jwks`, or `token`                                                                         |
| `clientSecret`    | string |          | —       | OneRoster OAuth2 `client_secret` provided by the institution.                                                                                     |
| `baseUrlOverride` | string |          | —       | Optional override for OAuth2 server base URL. Defaults to `https://oauth2.sky.blackbaud.com`.                                                     |

***


# Box

Your Toolhouse AI Worker can connect to Box using 286 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](https://toolhouse.app/auth-connections?authkit_slugs=box).

## Tools (286)

### `Box Add Allowed Collaboration Domain`

Integration name: **BOX\_ADD\_ALLOWED\_COLLABORATION\_DOMAIN**

Creates a new entry in the list of allowed domains for collaboration within your enterprise. This allows you to whitelist specific domains for external collaboration. Use `inbound` to allow users from the specified domain to collaborate on your enterprise's files and folders. Use `outbound` to allow your enterprise users to collaborate on content owned by the specified domain. Use `both` for bidirectional collaboration. Note: This action requires enterprise admin privileges and the `manage_enterprise_properties` scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                                                                                                          |
| ----------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `domain`    | string |     ✅    | —       | The domain to add to the list of allowed collaboration domains (e.g., `example.com`). This domain will be whitelisted for collaboration with your enterprise based on the specified direction.                                                       |
| `direction` | string |     ✅    | —       | The direction in which collaborations are allowed. Use `inbound` to allow external users from this domain to collaborate on your content, `outbound` to allow your users to collaborate on their content, or `both` for bidirectional collaboration. |

***

### `Box Add Classification To File`

Integration name: **BOX\_ADD\_CLASSIFICATION\_TO\_FILE**

Adds a classification to a file by specifying the label of the classification to add. **Enterprise-only feature**: This action requires a Box enterprise account with classification templates configured. Users without an enterprise account will receive an error when attempting to use this feature. This API can also be called by including the enterprise ID in the URL explicitly, for example `/files/:id//enterprise_12345/securityClassification-6VMVochwUWo`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                  |
| ------------------------------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`                            | string |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`.                                                                                            |
| `Box__Security__Classification__Key` | string |     ✅    | —       | The name of the classification to apply to this file. This is a required field. To list the available classifications in an enterprise, use the classification API to retrieve the [classification template](e://get_metadata_templates_enterprise_securityClassification-6VMVochwUWo_schema) which lists all available classification keys. |

***

### `Box Add Classification To Folder`

Integration name: **BOX\_ADD\_CLASSIFICATION\_TO\_FOLDER**

Adds a classification to a folder by specifying the label of the classification to add. **Enterprise-only feature**: This action requires a Box enterprise account with classification templates configured. Users without an enterprise account will receive an error when attempting to use this feature. **Prerequisites**:

* A classification template must exist in the enterprise. Use `list_all_classifications` to retrieve available classification keys.
* If no classifications exist, an admin must first create the classification template using `add_initial_classifications`.

**Common errors**:

* 404: Classification template not found (no classifications exist in enterprise)
* 409: Classification already exists on this folder (use update action instead)
* 403: Insufficient permissions to add classifications

This API can also be called by including the enterprise ID in the URL explicitly, for example `/folders/:id//enterprise_12345/securityClassification-6VMVochwUWo`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                    |
| ------------------------------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `folder_id`                          | string |     ✅    | —       | The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/folder/123` the `folder_id` is `123`. The root folder of a Box account is always represented by the ID `0`.             |
| `Box__Security__Classification__Key` | string |     ✅    | —       | The name of the classification to apply to this folder. This is a required field. To list the available classifications in an enterprise, use the classification API to retrieve the [classification template](e://get_metadata_templates_enterprise_securityClassification-6VMVochwUWo_schema) which lists all available classification keys. |

***

### `Box Add Initial Classifications`

Integration name: **BOX\_ADD\_INITIAL\_CLASSIFICATIONS**

Initializes the classification template for an enterprise with an initial set of classification options. IMPORTANT: This action requires admin permissions and should only be called once per enterprise when no classifications exist. If classifications already exist, use the `add_classification` action to add more options. Common classification examples: `Confidential`, `Internal`, `Public`, `Restricted`. Returns 400 if the classification template already exists. Returns 403 if the user lacks admin permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                    |
| ------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `scope`                  | string  |     ✅    | —       | The scope for the classification template. Must be `enterprise`.                                                               |
| `fields`                 | array   |     ✅    | —       | The classification field definition. Must contain exactly one field of type `enum` that holds all valid classification values. |
| `hidden`                 | boolean |          | —       | Whether to hide the classification template from web and mobile interfaces.                                                    |
| `displayName`            | string  |     ✅    | —       | The display name. Must be `Classification`.                                                                                    |
| `templateKey`            | string  |     ✅    | —       | The template key. Must be `securityClassification-6VMVochwUWo`.                                                                |
| `copyInstanceOnItemCopy` | boolean |          | —       | Whether to copy classifications when a file or folder is copied.                                                               |

***

### `Box Add Or Update User Avatar`

Integration name: **BOX\_ADD\_OR\_UPDATE\_USER\_AVATAR**

Adds or updates a user avatar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------- |
| `pic`     | object |     ✅    | —       | The avatar image file to upload. Requirements: file must be.jpg or.png format, maximum 1MB size, maximum 1024x1024 pixels. |
| `user_id` | string |     ✅    | —       | The ID of the user.                                                                                                        |

***

### `Box Add Shared Link To File`

Integration name: **BOX\_ADD\_SHARED\_LINK\_TO\_FILE**

Adds a shared link to a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                                   | string  |          | —       | Explicitly request the `shared_link` fields to be returned for this item. Defaults to `shared_link` to return the shared link details in the response.                                                                                                                                                                                                                                                                                                                                                              |
| `file_id`                                  | string  |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`.                                                                                                                                                                                                                                                                   |
| `shared__link__access`                     | string  |          | —       | The level of access for the shared link. This can be restricted to anyone with the link (`open`), only people within the company (`company`) and only those who have been invited to the file (`collaborators`). If not set, this field defaults to the access level specified by the enterprise admin. To create a shared link with this default setting pass the `shared_link` object with no `access` field, for example `{ "shared_link": {} }`. The `company` access level is only available to paid accounts. |
| `shared__link__password`                   | string  |          | —       | The password required to access the shared link. Set the password to `null` to remove it. Passwords must now be at least eight characters long and include a number, upper case letter, or a non-numeric or non-alphabetic character. A password can only be set when `access` is set to `open`.                                                                                                                                                                                                                    |
| `shared__link__unshared__at`               | string  |          | —       | The timestamp at which this shared link will expire. This field can only be set by users with paid accounts. The value must be greater than the current date and time.                                                                                                                                                                                                                                                                                                                                              |
| `shared__link__vanity__name`               | string  |          | —       | Defines a custom vanity name to use in the shared link URL, for example `https://app.box.com/v/my-shared-link`. Custom URLs should not be used when sharing sensitive content as vanity URLs are a lot easier to guess than regular shared links.                                                                                                                                                                                                                                                                   |
| `shared__link__permissions__can__edit`     | boolean |          | —       | If the shared link allows for editing of files. This can only be set when `access` is set to `open` or `company`. This value can only be `true` is `can_download` is also `true`.                                                                                                                                                                                                                                                                                                                                   |
| `shared__link__permissions__can__preview`  | boolean |          | —       | If the shared link allows for previewing of files. This value is always `true`. For shared links on folders this also applies to any items in the folder.                                                                                                                                                                                                                                                                                                                                                           |
| `shared__link__permissions__can__download` | boolean |          | —       | If the shared link allows for downloading of files. This can only be set when `access` is set to `open` or `company`.                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Box Add Shared Link To Folder`

Integration name: **BOX\_ADD\_SHARED\_LINK\_TO\_FOLDER**

Adds a shared link to a folder, allowing it to be shared with others via a URL. This action creates or updates a shared link on a folder. The shared link can be configured with different access levels: - `open`: Anyone with the link can access - `company`: Only people within the company can access (paid accounts only) - `collaborators`: Only those invited to the folder can access To create a shared link with default enterprise settings, call with just folder\_id and fields=`shared_link`. To customize access, set shared\_link\_access parameter. Returns the folder object with the new shared\_link information including the URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                                   | string  |          | —       | Comma-separated list of fields to return. To retrieve shared link details, use `shared_link`. Example values: `shared_link`, `shared_link,name,id`.                                                                                                                                                                                                                                                                                                                                                                   |
| `folder_id`                                | string  |     ✅    | —       | The unique identifier that represents a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/folder/123` the `folder_id` is `123`. The root folder of a Box account is always represented by the ID `0`. Example: `12345678`.                                                                                                                                                              |
| `shared__link__access`                     | string  |          | —       | The level of access for the shared link. This can be restricted to anyone with the link (`open`), only people within the company (`company`) and only those who have been invited to the folder (`collaborators`). If not set, this field defaults to the access level specified by the enterprise admin. To create a shared link with this default setting pass the `shared_link` object with no `access` field, for example `{ "shared_link": {} }`. The `company` access level is only available to paid accounts. |
| `shared__link__password`                   | string  |          | —       | The password required to access the shared link. Set the password to `null` to remove it. Passwords must now be at least eight characters long and include a number, upper case letter, or a non-numeric or non-alphabetic character. A password can only be set when `access` is set to `open`.                                                                                                                                                                                                                      |
| `shared__link__unshared__at`               | string  |          | —       | The timestamp at which this shared link will expire. This field can only be set by users with paid accounts. The value must be greater than the current date and time.                                                                                                                                                                                                                                                                                                                                                |
| `shared__link__vanity__name`               | string  |          | —       | Defines a custom vanity name to use in the shared link URL, for example `https://app.box.com/v/my-shared-link`. Custom URLs should not be used when sharing sensitive content as vanity URLs are a lot easier to guess than regular shared links.                                                                                                                                                                                                                                                                     |
| `shared__link__permissions__can__edit`     | boolean |          | —       | This value can only be `false` for items with a `type` of `folder`.                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `shared__link__permissions__can__preview`  | boolean |          | —       | If the shared link allows for previewing of files. This value is always `true`. For shared links on folders this also applies to any items in the folder.                                                                                                                                                                                                                                                                                                                                                             |
| `shared__link__permissions__can__download` | boolean |          | —       | If the shared link allows for downloading of files. This can only be set when `access` is set to `open` or `company`.                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Box Add Shared Link To Web Link`

Integration name: **BOX\_ADD\_SHARED\_LINK\_TO\_WEB\_LINK**

Adds a shared link to a web link.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                                   | string  |          | —       | Comma-separated list of fields to include in the response. Set to `shared_link` to return shared link details. Defaults to `shared_link`.                                                                                                                                                                                                                                                                                                                                                                           |
| `web_link_id`                              | string  |     ✅    | —       | The unique identifier (ID) of the web link to add a shared link to.                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `shared__link__access`                     | string  |          | —       | The level of access for the shared link. This can be restricted to anyone with the link (`open`), only people within the company (`company`) and only those who have been invited to the file (`collaborators`). If not set, this field defaults to the access level specified by the enterprise admin. To create a shared link with this default setting pass the `shared_link` object with no `access` field, for example `{ "shared_link": {} }`. The `company` access level is only available to paid accounts. |
| `shared__link__password`                   | string  |          | —       | The password required to access the shared link. Set the password to `null` to remove it. Passwords must now be at least eight characters long and include a number, upper case letter, or a non-numeric or non-alphabetic character. A password can only be set when `access` is set to `open`.                                                                                                                                                                                                                    |
| `shared__link__unshared__at`               | string  |          | —       | The timestamp at which this shared link will expire. This field can only be set by users with paid accounts. The value must be greater than the current date and time.                                                                                                                                                                                                                                                                                                                                              |
| `shared__link__vanity__name`               | string  |          | —       | Defines a custom vanity name to use in the shared link URL, for example `https://app.box.com/v/my-shared-link`. Custom URLs should not be used when sharing sensitive content as vanity URLs are a lot easier to guess than regular shared links.                                                                                                                                                                                                                                                                   |
| `shared__link__permissions__can__edit`     | boolean |          | —       | This value can only be `true` is `type` is `file`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `shared__link__permissions__can__preview`  | boolean |          | —       | If the shared link allows for previewing of files. This value is always `true`. For shared links on folders this also applies to any items in the folder.                                                                                                                                                                                                                                                                                                                                                           |
| `shared__link__permissions__can__download` | boolean |          | —       | If the shared link allows for downloading of files. This can only be set when `access` is set to `open` or `company`.                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Box Add User To Group`

Integration name: **BOX\_ADD\_USER\_TO\_GROUP**

Creates a group membership. Only users with admin-level permissions will be able to use this API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| -------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `role`                     | string |          | —       | The role of the user in the group. Can be `admin` or `member`. Admins have elevated permissions to manage the group. Members have standard access. Defaults to `member` if not specified.                                                                                                                                                                                                                                                                                      |
| `fields`                   | array  |          | —       | A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response. Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested.                                                           |
| `user__id`                 | string |     ✅    | —       | The unique identifier (ID) of the user to add to the group. This is a required field.                                                                                                                                                                                                                                                                                                                                                                                          |
| `group__id`                | string |     ✅    | —       | The unique identifier (ID) of the group to add the user to. This is a required field.                                                                                                                                                                                                                                                                                                                                                                                          |
| `configurable_permissions` | object |          | —       | Custom configuration for the permissions an admin of a group will receive. This option has no effect on members with a role of `member`. Setting these permissions overwrites the default access levels of an admin. Specifying a value of null for this object will disable all configurable permissions. Specifying permissions will set them accordingly, omitted permissions will be enabled by default. Example: `{'can_run_reports': true, 'can_instant_login': false}`. |

***

### `Box Append Metadata Taxonomy Level`

Integration name: **BOX\_APPEND\_METADATA\_TAXONOMY\_LEVEL**

Appends a new level to a metadata taxonomy structure. Use when adding hierarchical categories to organize metadata. If no levels exist, this creates the first level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                         |
| -------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `namespace`    | string |     ✅    | —       | The namespace of the metadata taxonomy. Use format `enterprise_{enterprise_id}` for enterprise taxonomies (e.g., `enterprise_123456`).              |
| `description`  | string |          | —       | The description of the taxonomy level. Provides additional context about this level (e.g., `French Republic`, `Second level taxonomy for testing`). |
| `displayName`  | string |     ✅    | —       | The display name of the taxonomy level to append. This is the label shown to users (e.g., `France`, `Level 2`).                                     |
| `taxonomy_key` | string |     ✅    | —       | The key of the metadata taxonomy to append the level to (e.g., `geography`, `product_catalog`).                                                     |

***

### `Box Apply Watermark To File`

Integration name: **BOX\_APPLY\_WATERMARK\_TO\_FILE**

Applies or update a watermark on a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example | Description                                                                                                                                                                                                                                       |
| -------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`            | string |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`. |
| `watermark__imprint` | string |          | —       | The type of watermark to apply. Currently only supports `default`. This value is required by the Box API.                                                                                                                                         |

***

### `Box Apply Watermark To Folder`

Integration name: **BOX\_APPLY\_WATERMARK\_TO\_FOLDER**

Applies or update a watermark on a folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                        |
| -------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `folder_id`          | string |     ✅    | —       | The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/folder/123` the `folder_id` is `123`. The root folder of a Box account is always represented by the ID `0`. |
| `watermark__imprint` | string |          | —       | The type of watermark to apply. Currently only supports `default` as the value.                                                                                                                                                                                                                                                    |

***

### `Box Ask Question`

Integration name: **BOX\_ASK\_QUESTION**

Ask questions about Box files using Box AI. Use this action to query one or more files with natural language questions. Box AI will analyze the file contents and provide an answer based on the information found in the files. Modes:

* `single_item_qa`: Ask about a single file (items array must have exactly 1 element)
* `multiple_item_qa`: Ask about multiple files (up to 25 files)

Limitations:

* Text documents: Up to 1MB per file, max 25 files
* Images: 1024x1024px resolution, max 5 images/pages
* Prompts: Max 10,000 characters

Requires `manage_ai` scope in the access token.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                          |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `mode`              | string  |     ✅    | —       | The query mode: `single_item_qa` for questions about one file (items array must have exactly 1 element), or `multiple_item_qa` for questions across multiple files (up to 25 files). |
| `items`             | array   |     ✅    | —       | List of files to query. For `single_item_qa` mode, provide exactly 1 item. For `multiple_item_qa` mode, provide 1-25 items. Each item needs `id` and `type` fields.                  |
| `prompt`            | string  |     ✅    | —       | The question to ask about the file(s). Maximum 10,000 characters.                                                                                                                    |
| `ai_agent`          | object  |          | —       | Schema for specifying a custom AI agent to handle the request.                                                                                                                       |
| `dialogue_history`  | array   |          | —       | Optional conversation history to provide context for follow-up questions.                                                                                                            |
| `include_citations` | boolean |          | —       | Set to true to include source citations in the response showing where the answer came from.                                                                                          |

***

### `Box Assign Legal Hold Policy`

Integration name: **BOX\_ASSIGN\_LEGAL\_HOLD\_POLICY**

Assign a legal hold policy to a file, file version, folder, or user. Legal hold policies preserve content for litigation or compliance purposes by preventing the deletion of specified items. When assigned to a folder, the hold applies recursively to all contents. When assigned to a user, the hold applies to all content owned by that user. Note: This feature requires Box Enterprise or higher with legal hold capabilities enabled. The authenticated user must have admin privileges with `manage_legal_holds` scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                       |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `policy_id`        | string |     ✅    | —       | The unique identifier of the legal hold policy to assign. Obtain this ID from `create_legal_hold_policy` or `list_all_legal_hold_policies`.                                                                                                                                                       |
| `assign__to__id`   | string |     ✅    | —       | The unique identifier of the item to assign the legal hold policy to. Must correspond to the type specified in assign\_to\_type.                                                                                                                                                                  |
| `assign__to__type` | string |     ✅    | —       | The type of item to assign the policy to. Options: `file` (individual files), `file_version` (specific file versions), `folder` (applies recursively to all contents), `user` (all content owned by a user), `ownership` (ownership records), or `interactions` (user interactions with content). |

***

### `Box Assign Retention Policy`

Integration name: **BOX\_ASSIGN\_RETENTION\_POLICY**

Assigns a retention policy to an item in Box to enforce content retention. Use this action to apply a retention policy to:

* An entire enterprise (assign\_to\_type=`enterprise`, no ID needed)
* A specific folder (assign\_to\_type=`folder`, provide folder ID)
* Items matching metadata criteria (assign\_to\_type=`metadata_template`, provide template ID)

Prerequisites:

* Box Governance license is required
* Admin permissions with `manage_data_retention` and `enterprise_content` scopes
* A retention policy must exist (use create\_retention\_policy first)

Example usage for folder assignment:

* policy\_id: `"173463"` (from create\_retention\_policy or list\_retention\_policies)
* assign\_to\_type: `"folder"`
* assign\_to\_id: `"6564564"` (the folder ID)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                                                                                                  |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `policy_id`        | string |     ✅    | —       | The unique ID of the retention policy to assign (e.g., `173463`). Get this from list\_retention\_policies or create\_retention\_policy.                                                                                                                      |
| `filter_fields`    | array  |          | —       | Optional metadata filters when assign\_to\_type is `metadata_template`. Array of objects with `field` (metadata attribute key ID) and `value` (field value ID). Only enum and multiselect field types are supported. Currently limited to one filter object. |
| `assign__to__id`   | string |          | —       | The ID of the target item. Required for `folder` (folder ID like `6564564`) and `metadata_template` (template ID). Omit or set to null when assign\_to\_type is `enterprise`.                                                                                |
| `assign__to__type` | string |     ✅    | —       | The type of item to assign the policy to. Options: `enterprise` (applies to all enterprise content), `folder` (applies to specific folder by ID), `metadata_template` (applies based on metadata criteria).                                                  |
| `start_date_field` | string |          | —       | The date field that determines when retention begins. For `metadata_template` assignments, this can be a date field's metadata attribute key ID (e.g., `upload_date`). Only applicable when assign\_to\_type is `metadata_template`.                         |

***

### `Box Assign Storage Policy`

Integration name: **BOX\_ASSIGN\_STORAGE\_POLICY**

Creates a storage policy assignment for an enterprise or user. Storage policies control where data is stored geographically (data residency). This action requires Box Zones or similar enterprise feature to be enabled. Use `list_storage_policies` to get available policies before assignment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example | Description                                                                                                                                                       |
| ----------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `assigned__to__id`      | string |     ✅    | —       | The ID of the entity to assign the policy to. If assigned\_to\_type is `user`, provide a user ID. If `enterprise`, provide the enterprise ID.                     |
| `assigned__to__type`    | string |     ✅    | —       | The type of entity to assign the storage policy to. Use `user` to assign to a specific user, or `enterprise` to set the default policy for the entire enterprise. |
| `storage__policy__id`   | string |     ✅    | —       | The unique ID of the storage policy to assign. Get available policies using the `list_storage_policies` action.                                                   |
| `storage__policy__type` | string |          | —       | The type of policy to assign. Must be `storage_policy`. This field is fixed and agents typically don't need to specify it.                                        |

***

### `Box Assign Task`

Integration name: **BOX\_ASSIGN\_TASK**

Assigns a task to a user. A task can be assigned to more than one user by creating multiple assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                |
| ------------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------- |
| `task__id`          | string |     ✅    | —       | The unique identifier of the task to assign. Required.                                                                     |
| `task__type`        | string |          | —       | The type of the item being assigned. Must be `task`.                                                                       |
| `assign__to__id`    | string |          | —       | The user ID of the person to assign the task to. Either this or `assign_to_login` must be provided, but not both.          |
| `assign__to__login` | string |          | —       | The email address (login) of the user to assign the task to. Either this or `assign_to_id` must be provided, but not both. |

***

### `Box Authorize User`

Integration name: **BOX\_AUTHORIZE\_USER**

Authorize a user by sending them through the [Box](https://box.com/) website and request their permission to act on their behalf. This is the first step when authenticating a user using OAuth 2.0. To request a user's authorization to use the Box APIs on their behalf you will need to send a user to the URL with this format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                                                                                                                                              |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `scope`         | string |          | —       | A space-separated list of application scopes to request (e.g., `root_readwrite manage_users`). Defaults to all scopes configured for the application if not specified.                                                                                                   |
| `state`         | string |          | —       | A custom string of your choice. Box will pass the same string to the redirect URL when authentication is complete. This parameter can be used to identify a user on redirect, as well as protect against hijacked sessions and other exploits.                           |
| `client_id`     | string |     ✅    | —       | The Client ID of the application requesting to authenticate the user. Found in the Box developer console under your application's OAuth 2.0 Parameters section.                                                                                                          |
| `redirect_uri`  | string |          | —       | The HTTPS URI to which Box redirects the browser after the user grants or denies permission. Must match one of the redirect URIs configured in your Box application. Required if multiple redirect URIs are configured; otherwise a `redirect_uri_missing` error occurs. |
| `response_type` | string |     ✅    | —       | The type of response to receive. Must be `code` for the authorization code grant flow.                                                                                                                                                                                   |

***

### `Box Cancel Box Sign Request`

Integration name: **BOX\_CANCEL\_BOX\_SIGN\_REQUEST**

Cancels a pending Box Sign request that has not yet been fully signed or declined. After cancellation, any outstanding signers will no longer be able to sign the document. Only the user who created the request (the requester) is able to cancel it. Note: A request cannot be cancelled if it was already declined, fully signed, or if the document is still in the converting state. Returns the cancelled sign request object with updated status set to `cancelled`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                   |
| ----------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sign_request_id` | string |     ✅    | —       | The unique identifier of the Box Sign request to cancel. This ID is returned when creating a sign request or can be retrieved from the list of sign requests. |

***

### `Box Commit Upload Session`

Integration name: **BOX\_COMMIT\_UPLOAD\_SESSION**

Commits an upload session and creates a file from the uploaded chunks. This is the final step in a chunked upload workflow:

1. Create an upload session using `create_upload_session`
2. Upload file parts using `upload_part_of_file`
3. Commit the session using this action to finalize the file

Requirements:

* All parts must be uploaded before committing
* The digest header must contain the SHA1 hash of the entire file (Base64 encoded)
* Parts array must include part\_id, offset, and size for each uploaded chunk

Note: The API may return 202 if processing is not complete. In this case, check the retry\_after field and retry after the specified number of seconds.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                     |
| ------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parts`             | array  |     ✅    | —       | List of uploaded parts to commit. Each part must include: `part_id` (string), `offset` (integer byte position), `size` (integer bytes). Optionally includes `sha1` (string hash of the part). These values are returned by the upload part API. |
| `digest`            | string |     ✅    | —       | The Base64-encoded SHA1 hash of the entire file being uploaded. Format should be the raw Base64 string (e.g., `fpRyg5eVQletdZqEKaFlqwBXJzM=`). The `sha=` prefix will be added automatically.                                                   |
| `if_match`          | string |          | —       | Optional. The last known ETag value of the upload session. If provided, the request fails with 412 if the session has changed.                                                                                                                  |
| `attributes`        | object |          | —       | Optional file attributes to set on the uploaded file, such as `content_modified_at` (ISO 8601 timestamp). Example: `{'content_modified_at': '2024-01-15T12:00:00Z'}`.                                                                           |
| `if_none_match`     | string |          | —       | Optional. ETag value to check for changes. Request fails with 304 if item unchanged.                                                                                                                                                            |
| `upload_session_id` | string |     ✅    | —       | The ID of the upload session to commit. This is returned when creating an upload session.                                                                                                                                                       |

***

### `Box Copy File`

Integration name: **BOX\_COPY\_FILE**

Creates a copy of a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |          | —       | An optional new name for the copied file. There are some restrictions to the file name. Names containing non-printable ASCII characters, forward and backward slashes (`/`, `\`), and protected names like `.` and `..` are automatically sanitized by removing the non-allowed characters.                                                                                                                          |
| `fields`     | array  |          | —       | A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response. Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested. |
| `file_id`    | string |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`.                                                                                                                                                                    |
| `version`    | string |          | —       | An optional ID of the specific file version to copy.                                                                                                                                                                                                                                                                                                                                                                 |
| `parent__id` | string |     ✅    | —       | The ID of folder to copy the file to. This parameter is required - the destination folder must be specified.                                                                                                                                                                                                                                                                                                         |

***

### `Box Copy File Request`

Integration name: **BOX\_COPY\_FILE\_REQUEST**

Copies an existing file request to a new folder. File requests allow external users to upload files to a specific folder without needing a Box account. This action creates a copy of an existing file request and associates it with a different destination folder. IMPORTANT LIMITATION: File request IDs cannot be discovered via API - they can only be obtained from the Box web application. To find a file\_request\_id:

1. Navigate to Box web UI (<https://app.box.com>)
2. Go to the folder containing the file request
3. Open the file request settings
4. Copy the ID from the URL (e.g., `https://*.app.box.com/filerequest/123` → ID is `"123"`)

Common use cases:

* Creating file request templates that can be copied to multiple project folders
* Automating file request creation for new cases/customers/projects
* Duplicating file requests with different settings (title, description, etc.)

When copying, you can optionally override settings from the source file request including title, description, status, and form requirements.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`                   | string  |          | —       | The title to use for the copied file request. This is displayed to uploaders on the file request form. If not provided, the title from the source file request is used.                                                                                                                                                                                     |
| `folder`                  | object  |     ✅    | —       | The destination folder to associate with the copied file request. Must include the folder `id` field.                                                                                                                                                                                                                                                       |
| `status`                  | string  |          | —       | Status of the file request.                                                                                                                                                                                                                                                                                                                                 |
| `expires_at`              | string  |          | —       | The date after which the copied file request will no longer accept submissions (ISO 8601 format, e.g., `2030-12-31T23:59:59Z`). After this date, the status is automatically set to `inactive`. If not provided, no expiration is set.                                                                                                                      |
| `description`             | string  |          | —       | The description to use for the copied file request. This is displayed to uploaders on the file request form. If not provided, the description from the source file request is used.                                                                                                                                                                         |
| `file_request_id`         | string  |     ✅    | —       | The unique identifier of the file request to copy. IMPORTANT: File request IDs can ONLY be obtained from the Box web application URL - there is no API to list file requests. Visit a file request in the Box web UI (e.g., `https://*.app.box.com/filerequest/123`) and copy the ID from the URL. In this example, the file\_request\_id would be `'123'`. |
| `is_email_required`       | boolean |          | —       | Whether uploaders must provide their email address when submitting files to the copied file request. If not provided, the setting from the source file request is used.                                                                                                                                                                                     |
| `is_description_required` | boolean |          | —       | Whether uploaders must provide a description when submitting files to the copied file request. If not provided, the setting from the source file request is used.                                                                                                                                                                                           |

***

### `Box Copy Folder`

Integration name: **BOX\_COPY\_FOLDER**

Creates a copy of a folder within a destination folder. The original folder will not be changed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |          | —       | An optional new name for the copied folder. There are some restrictions to the file name. Names containing non-printable ASCII characters, forward and backward slashes (`/`, `\`), as well as names with trailing spaces are prohibited. Additionally, the names `.` and `..` are not allowed either.                                                                                                               |
| `fields`     | array  |          | —       | A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response. Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested. |
| `folder_id`  | string |     ✅    | —       | The unique identifier of the folder to copy. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/folder/123` the `folder_id` is `123`. The root folder with the ID `0` can not be copied.                                                                                                        |
| `parent__id` | string |     ✅    | —       | The ID of the destination folder where the copy will be placed. Use `0` to copy to the root folder (All Files). This is a required field.                                                                                                                                                                                                                                                                            |

***

### `Box Create Ai Agent`

Integration name: **BOX\_CREATE\_AI\_AGENT**

Creates a custom AI agent in Box AI Studio. At least one capability required: ask (Q\&A), text\_gen (content generation), or extract (metadata extraction). Requirements: Box Enterprise Advanced account, Box AI Studio enabled, "Manage AI" scope in Developer Console. Access options: `enabled` (all users), `disabled` (none), `enabled_for_selected_users` (specified in allowed\_entities). Example: Set name + ask\_\_type=`ai_agent_ask` + ask\_\_access\_\_state=`enabled` + ask\_\_description to create Q\&A agent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                           |
| --------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                            | string |     ✅    | —       | The display name of the AI Agent visible to users in the Box interface.                                                                                                                                                                                                                                                                                                               |
| `type`                            | string |          | —       | The type of agent. Must be `ai_agent`.                                                                                                                                                                                                                                                                                                                                                |
| `ask__type`                       | string |          | —       | Type identifier for ask capability. Must be `ai_agent_ask` when enabling this capability.                                                                                                                                                                                                                                                                                             |
| `access_state`                    | string |          | —       | Access control for the agent. Options: `enabled` (all enterprise users), `disabled` (no access), `enabled_for_selected_users` (only specified users/groups in allowed\_entities).                                                                                                                                                                                                     |
| `extract__type`                   | string |          | —       | Type identifier for extract capability. Must be `ai_agent_extract` when enabling this capability.                                                                                                                                                                                                                                                                                     |
| `icon_reference`                  | string |          | —       | Avatar icon URL for the agent. Format: `https://cdn01.boxcdn.net/app-assets/aistudio/avatars/<file_name>`. Available icons: `logo_boxAi`, `logo_stamp`, `logo_legal`, `logo_finance`, `logo_config`, `logo_handshake`, `logo_analytics`, `logo_classification` (both `.png` and `.svg` supported). Example: `https://cdn01.boxcdn.net/app-assets/aistudio/avatars/logo_analytics.svg` |
| `text__gen__type`                 | string |          | —       | Type identifier for text generation capability. Must be `ai_agent_text_gen` when enabling this capability.                                                                                                                                                                                                                                                                            |
| `allowed_entities`                | array  |          | —       | Users/groups with access when access\_state=`enabled_for_selected_users`. Format: \`\[{'type': 'user'                                                                                                                                                                                                                                                                                 |
| `ask__description`                | string |          | —       | User-facing description of what questions this agent can answer.                                                                                                                                                                                                                                                                                                                      |
| `ask__access__state`              | string |          | —       | Enable state for ask capability. Options: `enabled`, `disabled`.                                                                                                                                                                                                                                                                                                                      |
| `extract__description`            | string |          | —       | User-facing description of what metadata/data this agent can extract from documents.                                                                                                                                                                                                                                                                                                  |
| `extract__access__state`          | string |          | —       | Enable state for extract capability. Options: `enabled`, `disabled`.                                                                                                                                                                                                                                                                                                                  |
| `text__gen__description`          | string |          | —       | User-facing description of what content this agent can generate.                                                                                                                                                                                                                                                                                                                      |
| `text__gen__access__state`        | string |          | —       | Enable state for text generation capability. Options: `enabled`, `disabled`.                                                                                                                                                                                                                                                                                                          |
| `ask__custom__instructions`       | string |          | —       | System prompt/instructions defining agent behavior, tone, and constraints for answering questions.                                                                                                                                                                                                                                                                                    |
| `ask__suggested__questions`       | array  |          | —       | Up to 4 suggested questions shown to users. Example: `['What is in this file?', 'Summarize the key points']`                                                                                                                                                                                                                                                                          |
| `extract__custom__instructions`   | string |          | —       | System prompt/instructions defining extraction rules, field mappings, and output formatting.                                                                                                                                                                                                                                                                                          |
| `text__gen__custom__instructions` | string |          | —       | System prompt/instructions defining writing style, format, and content generation guidelines.                                                                                                                                                                                                                                                                                         |
| `text__gen__suggested__questions` | array  |          | —       | Up to 4 suggested prompts shown to users. Example: `['Write a summary', 'Create a report']`                                                                                                                                                                                                                                                                                           |

***

### `Box Create Box Sign Request`

Integration name: **BOX\_CREATE\_BOX\_SIGN\_REQUEST**

Creates a Box Sign request to send documents for electronic signing. Prepares documents and sends signature requests to signers via email. Signers do not need Box accounts. Supports up to 10 files, 35 signers, sequential signing order, templates, and custom redirect URLs. Requires Box Sign feature enabled and sign\_requests.readwrite scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example | Description                                                                                                                                               |
| -------------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                           | string  |          | —       | Name of the signature request. Used for identification purposes.                                                                                          |
| `signers`                        | array   |     ✅    | —       | List of signers for the signature request. At least one signer required, maximum 35 signers.                                                              |
| `days_valid`                     | integer |          | —       | Number of days (0-730) until the signature request automatically expires. No expiration if not set.                                                       |
| `external_id`                    | string  |          | —       | External reference ID for tracking the signature request in your system.                                                                                  |
| `template_id`                    | string  |          | —       | ID of a Box Sign template to use. When provided, template settings are applied to the request.                                                            |
| `prefill_tags`                   | array   |          | —       | List of tags to pre-populate in the document before sending to signers.                                                                                   |
| `redirect_url`                   | string  |          | —       | Global URL to redirect all signers to after successfully signing.                                                                                         |
| `source_files`                   | array   |     ✅    | —       | List of files to be signed. At least one file required, maximum 10 files. All file types are converted to PDF.                                            |
| `email_message`                  | string  |          | —       | Custom message in the signature request email. Supports limited HTML tags: `a`, `abbr`, `b`, `blockquote`, `code`, `em`, `i`, `ul`, `li`, `ol`, `strong`. |
| `email_subject`                  | string  |          | —       | Custom subject line for the signature request email sent to signers.                                                                                      |
| `parent_folder`                  | object  |          | —       | Destination folder for signed documents. Cannot be the root folder (id=`0`).                                                                              |
| `signature_color`                | string  |          | —       | Color to use for the signature                                                                                                                            |
| `external_system_name`           | string  |          | —       | Name of the external system for the signing log reference.                                                                                                |
| `are_reminders_enabled`          | boolean |          | —       | Whether to send automatic reminders on days 3, 8, 13, and 18 to outstanding signers.                                                                      |
| `declined_redirect_url`          | string  |          | —       | Global URL to redirect signers to if they decline to sign.                                                                                                |
| `are_text_signatures_enabled`    | boolean |          | —       | Whether signers can use typed text as their signature (default: true).                                                                                    |
| `is_document_preparation_needed` | boolean |          | —       | If true, returns a prepare\_url for completing document preparation in the Box UI before sending.                                                         |

***

### `Box Create Box Skill Cards On File`

Integration name: **BOX\_CREATE\_BOX\_SKILL\_CARDS\_ON\_FILE**

Applies one or more Box Skills metadata cards to a file. NOTE: This action creates NEW Box Skill cards on a file. If Box Skill cards already exist on the file, this action will fail with a 409 Conflict error. In that case:

* Use `remove_box_skill_cards_from_file` to delete existing cards first, then create new ones, OR
* Use `update_all_box_skill_cards_on_file` to overwrite all existing cards

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cards`   | array  |     ✅    | —       | A list of Box Skill cards to apply to this file. Each card must include: `type` (always `skill_card`), `skill_card_type` (one of: `keyword`, `transcript`, `timeline`, `status`), `skill` (object with `type`: `service` and `id`), `invocation` (object with `type`: `skill_invocation` and `id`), and `skill_card_title` (object with `code` and `message`). Additional fields depend on card type. keyword cards need `entries` array with `text` fields; transcript cards need `entries` with `text` and `appears` (array of start/end timestamps) plus optional `duration`; timeline cards need `entries` with `text`, `appears`, and optional `image_url` plus `duration`; status cards need `status` object with `code` and `message`. |
| `file_id` | string |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`. Note: This file must NOT have existing Box Skill cards metadata, otherwise a 409 Conflict error will occur.                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Box Create Collab Exemption`

Integration name: **BOX\_CREATE\_COLLAB\_EXEMPTION**

Exempts a specific user from the enterprise's collaboration domain restrictions. This allows the specified user to collaborate with external parties from any domain, bypassing the enterprise's allowed collaboration domain list. PREREQUISITES:

* The enterprise MUST have at least one allowed collaboration domain configured. Use `Add domain to list of allowed collaboration domains` first if needed.
* The user must not already have an exemption (returns 409 Conflict if exists).
* Requires enterprise admin privileges with `manage_users` scope.

COMMON ERRORS:

* 409 Conflict: User already exempt OR no whitelisted domains exist for enterprise.
* 403 Forbidden: Insufficient permissions to manage user exemptions.
* 404 Not Found: The specified user ID does not exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                                                                                                              |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user__id` | string |     ✅    | —       | The unique identifier (ID) of the Box user to exempt from collaboration domain restrictions. This allows the specified user to collaborate with external parties regardless of the enterprise's allowed domain list. Example: `23522323` |

***

### `Box Create Collaboration`

Integration name: **BOX\_CREATE\_COLLABORATION**

Adds a collaboration for a single user or a single group to a file or folder. Collaborations can be created using email address, user IDs, or a group IDs. If a collaboration is being created with a group, access to this endpoint is dependent on the group's ability to be invited. If collaboration is in `pending` status, the following fields are redacted:

* `login` and `name` are hidden if a collaboration was created using `user_id`
* `name` is hidden if a collaboration was created using `login`

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`                  | string  |     ✅    | —       | The level of access granted. Valid values are: `editor` (full read/write access), `viewer` (read-only access), `previewer` (preview-only), `uploader` (upload-only), `previewer uploader` (preview and upload), `viewer uploader` (view and upload), or `co-owner` (full access including sharing).                                                                                                                                                                                                                                                                         |
| `fields`                | array   |          | —       | A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response. Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested.                                                                                                                                                        |
| `notify`                | boolean |          | —       | Determines if users should receive email notification for the action performed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `item__id`              | string  |          | —       | The unique ID of the file or folder to grant access to. Required for creating a new collaboration. You can find this ID in the Box web interface URL or from other API responses.                                                                                                                                                                                                                                                                                                                                                                                           |
| `expires_at`            | string  |          | —       | Set the expiration date for the collaboration. At this date, the collaboration will be automatically removed from the item. This feature will only work if the **Automatically remove invited collaborators: Allow folder owners to extend the expiry date** setting has been enabled in the **Enterprise Settings** of the **Admin Console**. When the setting is not enabled, collaborations can not have an expiry date and a value for this field will be result in an error.                                                                                           |
| `item__type`            | string  |          | —       | The type of the item that this collaboration will be granted access to. Must be either `file` or `folder`. Required for creating a new collaboration.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `can_view_path`         | boolean |          | —       | Determines if the invited users can see the entire parent path to the associated folder. The user will not gain privileges in any parent folder and therefore can not see content the user is not collaborated on. Be aware that this meaningfully increases the time required to load the invitee"s **All Files** page. We recommend you limit the number of collaborations with `can_view_path` enabled to 1,000 per user. Only owner or co-owners can invite collaborators with a `can_view_path` of `true`. `can_view_path` can only be used for folder collaborations. |
| `is_access_only`        | boolean |          | —       | If set to `true`, collaborators have access to shared items, but such items won't be visible in the All Files list. Additionally, collaborators won't see the the path to the root folder for the shared item.                                                                                                                                                                                                                                                                                                                                                              |
| `accessible__by__id`    | string  |          | —       | The Box user ID or group ID to invite. Either this field or `accessible_by_login` must be provided (not both). Use this when you know the exact Box user/group ID.                                                                                                                                                                                                                                                                                                                                                                                                          |
| `accessible__by__type`  | string  |          | —       | The type of collaborator to invite. Must be either `user` or `group`. Required. Use `user` when inviting an individual (by email or user ID), or `group` when sharing with a Box group.                                                                                                                                                                                                                                                                                                                                                                                     |
| `accessible__by__login` | string  |          | —       | The email address of the user to invite as a collaborator. Either this field or `accessible_by_id` must be provided (not both). Use this for user invitations when you have the email address but not the Box user ID. Not applicable for groups.                                                                                                                                                                                                                                                                                                                           |

***

### `Box Create Comment`

Integration name: **BOX\_CREATE\_COMMENT**

Adds a comment by the user to a specific file, or as a reply to an other comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`         | array  |          | —       | A comma-separated list of attributes to include in the response. This can be used to request fields that are not normally returned in a standard response. Be aware that specifying this parameter will have the effect that none of the standard fields are returned in the response unless explicitly specified, instead only fields for the mini representation are returned, additional to the fields requested. |
| `message`        | string |          | —       | The text of the comment. Required unless `tagged_message` is provided. To mention a user, use `tagged_message` instead.                                                                                                                                                                                                                                                                                              |
| `item__id`       | string |     ✅    | —       | The ID of the item to attach the comment to. This can be a file ID or a comment ID (when replying to a comment).                                                                                                                                                                                                                                                                                                     |
| `item__type`     | string |     ✅    | —       | The type of item this comment will be placed on. Use `file` to comment on a file, or `comment` to reply to an existing comment.                                                                                                                                                                                                                                                                                      |
| `tagged_message` | string |          | —       | The text of the comment with user mentions. Use the format `@[user_id:name]` to mention a user, which sends them an email notification. The `user_id` is the target user's ID, and `name` is a display phrase that links to the user's profile in Box UI. Either `message` or `tagged_message` must be provided, but not both.                                                                                       |

***

### `Box Create Email Alias`

Integration name: **BOX\_CREATE\_EMAIL\_ALIAS**

Adds a new email alias to a user account. The email domain must be registered to your enterprise. Returns the newly created email alias object with id, type, email, and is\_confirmed fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                      |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email`   | string |     ✅    | —       | The email address to add to the account as an alias. Note: The domain of the email alias must be registered to your enterprise. See the domain verification guide (<https://support.box.com/hc/en-us/articles/4408619650579-Domain-Verification>) for steps to add a new domain. |
| `user_id` | string |     ✅    | —       | The ID of the user.                                                                                                                                                                                                                                                              |

***

### `Box Create Folder`

Integration name: **BOX\_CREATE\_FOLDER**

Creates a new empty folder within the specified parent folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                               |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | —       | The name for the new folder. There are some restrictions to the file name. Names containing non-printable ASCII characters, forward and backward slashes (`/`, `\`), as well as names with trailing spaces are prohibited. Additionally, the names `.` and `..` are not allowed either.                                                                                                   |
| `fields`     | string |          | —       | A comma-separated list of attributes to include in the response (e.g., `id,name,created_at`). When specified, only the requested fields plus mini representation fields are returned. Common fields: id, type, name, description, size, created\_at, modified\_at, path\_collection, created\_by, modified\_by, owned\_by, shared\_link, parent, item\_status, tags, has\_collaborations. |
| `parent__id` | string |          | —       | The ID of the parent folder where the new folder will be created. Use `0` for the root folder (All Files). Example: `123456789`.                                                                                                                                                                                                                                                          |
| `sync_state` | string |          | —       | Specifies whether a folder should be synced to a user's device or not. This is used by Box Sync (discontinued) and is not used by Box Drive.                                                                                                                                                                                                                                              |

***

### `Box Create Folder Lock`

Integration name: **BOX\_CREATE\_FOLDER\_LOCK**

Creates a folder lock on a folder, preventing it from being moved and/or deleted. You must be authenticated as the owner or co-owner of the folder to use this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                |
| ---------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------- |
| `folder__id`                 | string  |          | —       | The ID of the folder.                                                      |
| `folder__type`               | string  |          | —       | The content type the lock is being applied to. Only `folder` is supported. |
| `locked__operations__move`   | boolean |          | —       | Whether moving the folder should be locked.                                |
| `locked__operations__delete` | boolean |          | —       | Whether deleting the folder should be locked.                              |

***

### `Box Create Group`

Integration name: **BOX\_CREATE\_GROUP**

Creates a new group of users in an enterprise. Only users with admin permissions can create new groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                            |
| -------------------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                     | string |     ✅    | —       | The name of the new group to be created. This name must be unique within the enterprise.                                                                                                                                                                                                                                                                                                                                               |
| `fields`                   | array  |          | —       | A list of additional attributes to include in the response. Provide as a list of strings, e.g. `['description', 'provenance', 'invitability_level']`. Available fields: `id`, `name`, `description`, `provenance`, `external_sync_identifier`, `invitability_level`, `member_viewability_level`, `created_at`, `modified_at`, `permissions`. If specified, only the mini representation fields plus the requested fields are returned. |
| `provenance`               | string |          | —       | Keeps track of which external source this group is coming, for example `Active Directory`, or `Okta`. Setting this will also prevent Box admins from editing the group name and its members directly via the Box web application. This is desirable for one-way syncing of groups.                                                                                                                                                     |
| `description`              | string |          | —       | A human readable description of the group.                                                                                                                                                                                                                                                                                                                                                                                             |
| `invitability_level`       | string |          | —       | Specifies who can invite the group to collaborate on folders. When set to `admins_only` the enterprise admin, co-admins, and the group's admin can invite the group. When set to `admins_and_members` all the admins listed above and group members can invite the group. When set to `all_managed_users` all managed users in the enterprise can invite the group.                                                                    |
| `external_sync_identifier` | string |          | —       | An arbitrary identifier that can be used by external group sync tools to link this Box Group to an external group. Example values of this field could be an **Active Directory Object ID** or a **Google Group ID**. We recommend you use of this field in order to avoid issues when group names are updated in either Box or external systems.                                                                                       |
| `member_viewability_level` | string |          | —       | Specifies who can see the members of the group. `admins_only` - the enterprise admin, co-admins, group"s group admin `admins_and_members` - all admins and group members `all_managed_users` - all managed users in the enterprise                                                                                                                                                                                                     |

***

### `Box Create Legal Hold Policy`

Integration name: **BOX\_CREATE\_LEGAL\_HOLD\_POLICY**

Create a new legal hold policy in Box. Legal hold policies are used to prevent permanent deletion of content during ongoing litigation. Once created, the policy can be assigned to specific users, folders, or files. IMPORTANT: Either `is_ongoing` must be set to true, OR both `filter_started_at` and `filter_ended_at` must be provided. The policy name must be unique within the enterprise. Requires Box Governance add-on (Enterprise plan with legal hold feature enabled).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                 |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `is_ongoing`        | boolean |          | —       | Whether new assignments under this policy should continue applying to files even after initialization. If true, the policy will apply to any new file versions uploaded by assigned users even after the initial assignment. Required if no filter dates are set. Must be false if filter dates are provided.               |
| `description`       | string  |          | —       | A description for the policy. Max 500 characters.                                                                                                                                                                                                                                                                           |
| `policy_name`       | string  |     ✅    | —       | The name of the policy. Must be unique within the enterprise. Max 254 characters.                                                                                                                                                                                                                                           |
| `filter_ended_at`   | string  |          | —       | The filter end date in ISO 8601 format (e.g., `2024-12-31T23:59:59-08:00`). When applied using custodian legal hold assignments, it will only apply to file versions created or uploaded inside the date range. Folder and file assignment types will ignore the date filter. Required if `is_ongoing` is set to `false`.   |
| `filter_started_at` | string  |          | —       | The filter start date in ISO 8601 format (e.g., `2024-01-01T00:00:00-08:00`). When applied using custodian legal hold assignments, it will only apply to file versions created or uploaded inside the date range. Folder and file assignment types will ignore the date filter. Required if `is_ongoing` is set to `false`. |

***

### `Box Create Metadata Cascade Policy`

Integration name: **BOX\_CREATE\_METADATA\_CASCADE\_POLICY**

Creates a new metadata cascade policy that automatically applies a metadata template to all files and subfolders within a specified folder. Prerequisites:

* A metadata instance must already be applied to the target folder before creating the cascade policy.
* The target folder cannot be the root folder (ID `0`).
* Enterprise admin must have enabled `Cascading Folder Level Metadata` in Admin Console > Enterprise Settings > Content & Sharing.

Common use case: After applying metadata to a folder, create a cascade policy to ensure all new items added to that folder automatically inherit the metadata.

Returns: A MetadataCascadePolicy object with id, type, owner\_enterprise, parent, scope, and templateKey fields.

Error codes:

* 400: Invalid format for scope, templateKey, or folder\_id
* 403: Policy cannot apply to restricted folders (e.g., root folder)
* 404: Folder or template not found/inaccessible
* 409: Duplicate policy already exists for this folder/template combination

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                       |
| ------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`       | string |     ✅    | —       | The scope of the metadata template. Use `global` for Box's built-in templates (e.g., `global.properties`), or `enterprise` for custom enterprise templates. The metadata instance with this scope must already exist on the target folder.                                                                                                                                        |
| `folder_id`   | string |     ✅    | —       | The unique identifier of the folder to apply the cascade policy to. IMPORTANT: This folder must already have a metadata instance of the targeted template applied to it before creating the cascade policy. The folder ID can be found in Box URLs (e.g., `https://app.box.com/folder/123` has folder\_id `123`). Note: Cannot be applied to the root folder (ID `0`).            |
| `templateKey` | string |     ✅    | —       | The key identifying the metadata template. Common examples include `properties` for the global.properties template. For enterprise templates, the key is often derived from the template's display name (e.g., `Contract Template` becomes `contractTemplate`). You can find template keys by listing templates for an enterprise or getting metadata instances on a file/folder. |

***

### `Box Create Metadata Instance On File`

Integration name: **BOX\_CREATE\_METADATA\_INSTANCE\_ON\_FILE**

Applies an instance of a metadata template to a file. The metadata\_fields parameter contains key-value pairs that match the fields defined in the template. In most cases only field keys present in the metadata template will be accepted, except for the `global.properties` template which accepts any key-value pair. Common error codes:

* 409 (`tuple_already_exists`): A metadata instance of this template already exists on the file.
* 404 (`not_found`): The file was not found or the user does not have access.
* 404 (`instance_tuple_not_found`): The metadata template was not found.
* 400 (`schema_validation_failed`): Invalid field key or value type for the template.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ----------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`           | string |     ✅    | —       | The scope of the metadata template. Use `global` for global templates (like `properties`) or `enterprise` for enterprise templates. For enterprise templates, the scope will be automatically converted to the enterprise ID format (e.g., `enterprise_12345`).                                                                                                                                                                          |
| `file_id`         | string |     ✅    | —       | The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/files/123` the `file_id` is `123`.                                                                                                                                                                                        |
| `template_key`    | string |     ✅    | —       | The name of the metadata template (templateKey). For example: `properties` for the global.properties template, or a custom template key like `testTemplate`. Use BOX\_LIST\_ALL\_METADATA\_TEMPLATES\_FOR\_ENTERPRISE or BOX\_LIST\_ALL\_GLOBAL\_METADATA\_TEMPLATES to find available template keys.                                                                                                                                    |
| `metadata_fields` | object |          | —       | A dictionary of metadata field key-value pairs to set on the file. The keys must match the field keys defined in the metadata template. For the `global.properties` template, any key-value pairs can be used. Example: `{'author': 'John', 'status': 'draft'}`. For enum fields, provide the option key string. For multiSelect fields, provide a list of strings. For date fields, use ISO 8601 format (e.g., `2024-01-15T00:00:00Z`). |

***

### `Box Create Metadata Instance On Folder`

Integration name: **BOX\_CREATE\_METADATA\_INSTANCE\_ON\_FOLDER**

Applies an instance of a metadata template to a folder. In most cases only values that are present in the metadata template will be accepted, except for the `global.properties` template which accepts any key-value pair. To display the metadata template in the Box web app the enterprise needs to be configured to enable **Cascading Folder Level Metadata** for the user in the admin console.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                        |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`        | string |     ✅    | —       | The scope of the metadata template. Use `global` for global templates or `enterprise` for enterprise templates (will use the enterprise ID like `enterprise_12345`).                                                                                                                                                               |
| `metadata`     | object |          | —       | A dictionary of key-value pairs representing the metadata fields to apply. For the `global.properties` template, any key-value pairs are accepted. For enterprise templates, keys must match the template's field names. Example: `{'field1': 'value1', 'field2': 'value2'}`                                                       |
| `folder_id`    | string |     ✅    | —       | The unique identifier that represent a folder. The ID for any folder can be determined by visiting this folder in the web application and copying the ID from the URL. For example, for the URL `https://*.app.box.com/folder/123` the `folder_id` is `123`. The root folder of a Box account is always represented by the ID `0`. |
| `template_key` | string |     ✅    | —       | The name of the metadata template                                                                                                                                                                                                                                                                                                  |

***

### `Box Create Metadata Taxonomy`

Integration name: **BOX\_CREATE\_METADATA\_TAXONOMY**

Tool to create a new metadata taxonomy in Box. Use when you need to set up a hierarchical classification system for organizing and categorizing metadata templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                                                                                                                                                                    |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key`         | string |          | —       | The taxonomy key. If not provided, it will be automatically generated from the displayName by converting to lowercase and replacing spaces and non-alphanumeric characters with underscores. Maximum length is 256 characters. Must match pattern `^[a-zA-Z_][-a-zA-Z0-9_]*$`. |
| `namespace`   | string |     ✅    | —       | The namespace of the metadata taxonomy to create. Must be in the format `enterprise_{enterprise_id}` where enterprise\_id is your Box enterprise ID. You can retrieve your enterprise ID from the /users/me endpoint with fields=enterprise.                                   |
| `displayName` | string |     ✅    | —       | The display name of the taxonomy. This name will be visible in the Box web app and can be used to identify the taxonomy. Maximum length is 4096 characters.                                                                                                                    |

***

### `Box Create Metadata Taxonomy Levels`

Integration name: **BOX\_CREATE\_METADATA\_TAXONOMY\_LEVELS**

Creates new hierarchical levels for a metadata taxonomy in Box. Use this to define the structure of your taxonomy by specifying levels like Continent -> Country -> City. Each level must have a unique level number starting from 1, with higher numbers representing deeper levels in the hierarchy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example               | Description                                                                                                                                                                                 |
| -------------- | ------ | -------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `levels`       | array  | ✅        | —                     | An array of taxonomy levels to create. Each level must have a unique level number (starting from 1), a display name, and optionally a description. Levels should be ordered hierarchically. |
| `namespace`    | string | ✅        | `"enterprise_123456"` | The namespace of the metadata taxonomy. For enterprise taxonomies, this is typically in the format `enterprise_<enterprise_id>` (e.g., `enterprise_123456`).                                |
| `taxonomy_key` | string | ✅        | `"geography"`         | The unique key identifier of the metadata taxonomy to which the levels will be added. This key was assigned when the taxonomy was created.                                                  |

***

### `Box Create Metadata Taxonomy Node`

Integration name: **BOX\_CREATE\_METADATA\_TAXONOMY\_NODE**

Tool to create a new metadata taxonomy node within a specified taxonomy. Use when you need to add a new classification or category to an existing metadata taxonomy hierarchy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                                                                             |
| -------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `level`        | integer |     ✅    | `1`                                      | The level of the taxonomy node in the hierarchy. Root-level nodes have level 1, their children have level 2, and so on. Must be a positive integer.                     |
| `parentId`     | string  |          | `"99df4513-7102-4896-8228-94635ee9d330"` | The identifier of the parent taxonomy node. Omit this field when creating root-level nodes (level 1). For child nodes, provide the UUID of the parent node.             |
| `namespace`    | string  |     ✅    | `"enterprise_123456"`                    | The namespace of the metadata taxonomy. Typically follows the format `enterprise_{enterprise_id}` for enterprise taxonomies. For example: `enterprise_1351007304`.      |
| `displayName`  | string  |     ✅    | `"France"`                               | The display name of the taxonomy node. This is the human-readable name that will be shown in the Box UI. For example: `France`, `California`, `Engineering Department`. |
| `taxonomy_key` | string  |     ✅    | `"geography"`                            | The key of the metadata taxonomy under which to create the node. This identifies the specific taxonomy within the namespace. For example: `geography` or `department`.  |

***

### `Box Create Metadata Template`

Integration name: **BOX\_CREATE\_METADATA\_TEMPLATE**

Creates a new metadata template that can be applied to files and folders.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                                                                                                                                             |
| ------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`                  | string  |          | —       | The scope of the metadata template to create. Must be set to `enterprise` as applications cannot create global templates. Defaults to `enterprise`.                                                                                                     |
| `fields`                 | array   |          | —       | An ordered list of template fields which are part of the template. Each field can be a regular text field, date field, number field, as well as a single or multi-select list.                                                                          |
| `hidden`                 | boolean |          | —       | Defines if this template is visible in the Box web app UI, or if it is purely intended for usage through the API.                                                                                                                                       |
| `displayName`            | string  |     ✅    | —       | The display name of the template.                                                                                                                                                                                                                       |
| `templateKey`            | string  |          | —       | A unique identifier for the template. This identifier needs to be unique across the enterprise for which the metadata template is being created. When not provided, the API will create a unique `templateKey` based on the value of the `displayName`. |
| `copyInstanceOnItemCopy` | boolean |          | —       | Whether or not to copy any metadata attached to a file or folder when it is copied. By default, metadata is not copied along with a file or folder when it is copied.                                                                                   |

***

### `Box Create Retention Policy`

Integration name: **BOX\_CREATE\_RETENTION\_POLICY**

Creates a retention policy for managing content lifecycle in Box. Retention policies prevent permanent deletion of content for a specified duration. Once created, policies can be assigned to folders or the entire enterprise. Note: This endpoint requires the Box Governance add-on feature and the `manage retention policies` scope enabled in your application.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example | Description                                                                                                                                                                                                                   |
| -------------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `description`                    | string  |          | —       | The additional text description of the retention policy (max 500 characters).                                                                                                                                                 |
| `policy_name`                    | string  |     ✅    | —       | The name for the retention policy. Must be unique within the enterprise.                                                                                                                                                      |
| `policy_type`                    | string  |     ✅    | —       | The type of the retention policy. Use `finite` when the retention duration is known upfront, or `indefinite` when the retention duration is unknown. For finite policies, retention\_length must be specified.                |
| `retention_type`                 | string  |          | —       | Retention type enum: controls if policy can be modified after creation.                                                                                                                                                       |
| `retention_length`               | integer |          | —       | The number of days to retain content under this policy. Required when policy\_type is `finite`. Minimum value is 1 day. For `indefinite` policies, this field should not be set. Specify as an integer (e.g., 30, 365, 2555). |
| `disposition_action`             | string  |     ✅    | —       | The action to take when the retention policy expires. `permanently_delete` will permanently delete the retained content. `remove_retention` lifts the retention policy, allowing users to delete the content manually.        |
| `are_owners_notified`            | boolean |          | —       | Whether owners and co-owners of files are notified when the retention policy nears expiration.                                                                                                                                |
| `can_owner_extend_retention`     | boolean |          | —       | Whether file owners are allowed to extend the retention period before it expires.                                                                                                                                             |
| `custom_notification_recipients` | array   |          | —       | A list of users to notify when the retention policy duration is about to end. Each user should be specified with at least their `id` field. Example: `[{'type': 'user', 'id': '12345678'}]`                                   |

***

### `Box Create Shield Information Barrier`

Integration name: **BOX\_CREATE\_SHIELD\_INFORMATION\_BARRIER**

Creates a shield information barrier to establish an "ethical wall" that separates individuals/groups within an enterprise and prevents confidential information sharing. Prerequisites: Box Shield add-on must be licensed and enabled. Admin-level permissions required. Only one barrier allowed per enterprise. NOT available in Shield trials. Workflow:

1. Get enterprise ID from /users/me
2. Create barrier (starts in `draft`)
3. Create segments and add users
4. Define segment restrictions
5. Enable barrier

Common errors: 400 (missing enterprise), 404 (Shield not enabled/invalid ID), 409 (barrier already exists).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                                        |
| ------------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enterprise__id`   | string |     ✅    | —       | The unique identifier of the enterprise where the shield information barrier will be created. This ID can be obtained from the GET /users/me endpoint (enterprise.id field). Example: `1351007304` |
| `enterprise__type` | string |          | —       | The type of the enterprise object. Must be `enterprise`. This field has a sensible default and typically doesn't need to be changed.                                                               |

***

### `Box Create Shield Information Barrier Report`

Integration name: **BOX\_CREATE\_SHIELD\_INFORMATION\_BARRIER\_REPORT**

Creates a shield information barrier report for a given barrier. Shield information barrier reports track the configuration status of information barriers in Box Shield. When created, reports start with status `pending` and transition to `done`, `error`, or `cancelled`. Note: Requires Box Shield enterprise add-on license. Returns 404 if Shield is not enabled for the enterprise. Returns 409 if a report is already being created.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type   | Required | Example | Description                                                                                                                                                           |
| ------------------------------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `shield__information__barrier__id`   | string |     ✅    | —       | The ID of the shield information barrier to create a report for. Get this from BOX\_LIST\_SHIELD\_INFORMATION\_BARRIERS or BOX\_CREATE\_SHIELD\_INFORMATION\_BARRIER. |
| `shield__information__barrier__type` | string |          | —       | The type of the shield information barrier resource. Must be `shield_information_barrier`.                                                                            |

***

### `Box Create Shield Information Barrier Segment`

Integration name: **BOX\_CREATE\_SHIELD\_INFORMATION\_BARRIER\_SEGMENT**

Creates a new shield information barrier segment for compliance and information isolation. Segments represent organizational divisions (e.g., Investment Banking, Research, Trading) that need to be isolated from each other for regulatory compliance. Each segment can have users assigned to it, and restrictions can be created to prevent collaboration between specific segments. Prerequisites: Box Shield license, existing barrier (`create_shield_information_barrier`), barrier in `draft`/`pending` status. Returns 404 if Shield not enabled or barrier doesn't exist. Returns 409 if segment name already exists. Related: `create_shield_information_barrier_segment_member`, `create_shield_information_barrier_segment_restriction`, `list_shield_information_barrier_segments`

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type   | Required | Example | Description                                                                                                                                                                                                                                                          |
| ------------------------------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                               | string |     ✅    | —       | **Required**. The name of the segment to create (e.g., `Investment Banking`, `Research Division`, `Trading Desk`). This name must be unique within the barrier and identifies the group of users for compliance isolation.                                           |
| `description`                        | string |          | —       | Optional description explaining the segment's purpose and scope (e.g., `Corporate division handling M&A advisory services and IPO underwriting`). Helps administrators understand the segment's business context.                                                    |
| `shield__information__barrier__id`   | string |     ✅    | —       | **Required**. The unique ID of the shield information barrier to create the segment under. Obtain this from list\_shield\_information\_barriers or create\_shield\_information\_barrier actions. The barrier must be in `draft` or `pending` status to add segments. |
| `shield__information__barrier__type` | string |          | —       | The type of the shield information barrier object. Must be `shield_information_barrier`. This field has a sensible default and typically doesn't need to be explicitly provided.                                                                                     |

***

*The remaining tool reference entries follow the same cleaned markdown structure.*


# Cal.com

Your Toolhouse AI Worker can connect to Cal.com using 175 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](https://toolhouse.app/auth-connections?authkit_slugs=cal).

## Tools (175)

### `Cal Add Attendee`

Integration name: **CAL\_ADD\_ATTENDEE**

Tool to create a new attendee for an existing booking in Cal.com. Use when you need to add an additional participant to a scheduled event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                 |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------- |
| `name`      | string  |     ✅    | `"John Doe"`             | Full name of the attendee.                                                  |
| `email`     | string  |     ✅    | `"john.doe@example.com"` | Email address of the attendee. Must be a valid email format.                |
| `timeZone`  | string  |     ✅    | `"America/New_York"`     | IANA timezone for the attendee (e.g., `America/New_York`, `Europe/London`). |
| `bookingId` | integer |     ✅    | `15100664`               | The unique identifier of the booking to add the attendee to.                |

***

### `Cal Add Member To Team Using Org And Team Id`

Integration name: **CAL\_ADD\_MEMBER\_TO\_TEAM\_USING\_ORG\_AND\_TEAM\_ID**

Adds a new member to a specified team within an organization by creating a team membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                                                    |
| ---------------------- | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------- |
| `role`                 | string  |          | `"MEMBER"` | Specifies the user's role within the team (e.g., `MEMBER`, `OWNER`, `ADMIN`).                                  |
| `orgId`                | integer |     ✅    | `123`      | The unique identifier of the organization to which the team belongs.                                           |
| `teamId`               | integer |     ✅    | `789`      | The unique identifier of the team to which the member will be added.                                           |
| `userId`               | integer |     ✅    | `112`      | The unique identifier of the user to be added to the team.                                                     |
| `accepted`             | boolean |          | `true`     | Indicates whether the membership invitation is accepted; `True` for active member, `False` for pending status. |
| `disableImpersonation` | boolean |          | `true`     | If `True`, this user cannot be impersonated by administrators or those with impersonation privileges.          |

***

### `Cal Add Organization Attribute Option`

Integration name: **CAL\_ADD\_ORGANIZATION\_ATTRIBUTE\_OPTION**

Adds a new option to an organization's SINGLE\_SELECT or MULTI\_SELECT attribute. Use this action to extend the available choices for an existing attribute. For example, adding a new department option like `"Marketing"` to a `"Department"` attribute. Prerequisites: - The organization must exist and the user must have admin access - The attribute must already exist and be of type SINGLE\_SELECT or MULTI\_SELECT Common use cases: - Adding new department options to a department selector - Expanding location choices for a location attribute - Creating new priority levels for a priority field Note: While it's recommended to use unique slugs for clarity, the API may allow duplicate slugs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                                                                                                                                                                                                             |
| ------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `slug`        | string  |     ✅    | `"engineering"`      | A URL-friendly programmatic identifier for the new option. Typically lowercase with hyphens (e.g., `engineering`, `sales-dept`). Used for programmatic access and filtering. While recommended to be unique, the API may allow duplicate slugs.         |
| `orgId`       | integer |     ✅    | `1001`               | The unique numeric identifier of the organization. Obtain this from the user's profile (organizationId field) or from organization membership data.                                                                                                     |
| `value`       | string  |     ✅    | `"Engineering"`      | The human-readable display name for the new option (e.g., `Engineering`, `Sales Team`). This is what users will see when selecting from the attribute options.                                                                                          |
| `attributeId` | string  |     ✅    | `"clq1abc123def456"` | The unique identifier of the attribute to which the new option will be added. Obtain this from the `retrieve_organization_attributes` action or when creating an attribute. Only attributes of type `SINGLE_SELECT` or `MULTI_SELECT` can have options. |

***

### `Cal Cancel Booking Via Uid`

Integration name: **CAL\_CANCEL\_BOOKING\_VIA\_UID**

Cancels an existing and active Cal.com booking using its unique identifier (UID).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                            | Description                                                                                                             |
| -------------------------- | ------- | :------: | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `seatUid`                  | string  |          | `"seat_123abc"`                    | For seated bookings only: the UID of the specific seat to cancel when cancelling as an attendee.                        |
| `bookingUid`               | string  |     ✅    | `"bk_XXXXXXXXXXXXX_YYYYYYYYYYYYY"` | The unique identifier (UID) of the booking to be cancelled. This UID is generated by Cal.com when a booking is created. |
| `cancellationReason`       | string  |          | `"User requested cancellation"`    | Optional reason for cancelling the booking. Recommended for clear communication with the attendee.                      |
| `cancelSubsequentBookings` | boolean |          | `true`                             | For recurring bookings only: if true, cancels the booking with the given bookingUid and all subsequent recurrences.     |

***

### `Cal Check Calendar Version2`

Integration name: **CAL\_CHECK\_CALENDAR\_VERSION2**

Retrieves free/busy availability for a specified calendar to aid scheduling without revealing event details; requires an existing, accessible calendar, noting that data granularity can vary.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example    | Description                                                                                   |
| ---------- | ------ | :------: | ---------- | --------------------------------------------------------------------------------------------- |
| `calendar` | string |     ✅    | `"google"` | The calendar type to check availability for. Must be one of the supported calendar providers. |

***

### `Cal Check Gcal Synchronization Status`

Integration name: **CAL\_CHECK\_GCAL\_SYNCHRONIZATION\_STATUS**

Call this read-only action to verify the connection and synchronization status of a user's Google Calendar integration with Cal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Check Ics Feed Calendar Endpoint`

Integration name: **CAL\_CHECK\_ICS\_FEED\_CALENDAR\_ENDPOINT**

Checks an ICS feed URL (expected as a query parameter) to verify its validity, accessibility, and iCalendar data integrity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Check Stripe Status`

Integration name: **CAL\_CHECK\_STRIPE\_STATUS**

Verifies if Stripe is correctly connected to the Cal scheduling system and functional for processing payments, reporting only on the integration's status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Check Team Stripe Integration Status`

Integration name: **CAL\_CHECK\_TEAM\_STRIPE\_INTEGRATION\_STATUS**

Retrieves the Stripe integration status and related information for a team, primarily to verify account connection, subscription details, or payment setup; this is a read-only operation that does not modify Stripe settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                             | Description                                                                            |
| --------- | ------ | :------: | ----------------------------------- | -------------------------------------------------------------------------------------- |
| `teamId`  | string |     ✅    | `"team_01H4S3X9N4K2PZJ5C6R8G7V0A0"` | The unique identifier of the team whose Stripe integration status needs to be checked. |

***

### `Cal Confirm Booking By Uid`

Integration name: **CAL\_CONFIRM\_BOOKING\_BY\_UID**

Confirms an existing booking by `bookingUid` if the booking exists and is in a state allowing confirmation (e.g., not already cancelled or confirmed); this finalizes the booking, does not modify its details, and should typically be performed once.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example          | Description                                                            |
| ------------ | ------ | :------: | ---------------- | ---------------------------------------------------------------------- |
| `bookingUid` | string |     ✅    | `"bk_123xyz789"` | The unique identifier (UID) of the booking that needs to be confirmed. |

***

### `Cal Connect To Calendar`

Integration name: **CAL\_CONNECT\_TO\_CALENDAR**

Initiates or checks the external connection status for a specified calendar, possibly returning a redirect URL for user authorization to complete integration, without altering calendar data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example    | Description                                                             |
| ---------- | ------ | :------: | ---------- | ----------------------------------------------------------------------- |
| `calendar` | string |     ✅    | `"google"` | The calendar type to connect to. Valid values: apple, google, office365 |

***

### `Cal Create Membership For Organization`

Integration name: **CAL\_CREATE\_MEMBERSHIP\_FOR\_ORGANIZATION**

Creates a new membership for a user within a Cal.com organization. The caller must have admin/owner access to the organization, and the target user must already exist in the system. Use `CAL_RETRIEVE_USERS_IN_ORGANIZATION` to get valid user IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                                                                                       |
| ---------------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`                 | string  |          | `"MEMBER"` | The role to assign to the user within the organization. MEMBER has basic access, ADMIN can manage members and settings, OWNER has full control.   |
| `orgId`                | integer |     ✅    | `12345`    | The unique identifier of the organization to add the membership to. The caller must have admin or owner permissions in this organization.         |
| `userId`               | integer |     ✅    | `2090888`  | The unique identifier of the user to add to the organization. The user must already exist in the Cal.com system.                                  |
| `accepted`             | boolean |          | —          | Whether the membership should be automatically accepted. If False, the user will receive an invitation to join. If True, they are added directly. |
| `disableImpersonation` | boolean |          | —          | If True, prevents organization admins and owners from impersonating this user. Useful for security-sensitive accounts.                            |

***

### `Cal Create Oauth Client User`

Integration name: **CAL\_CREATE\_OAUTH\_CLIENT\_USER**

Creates a new managed user for a Cal.com Platform OAuth client. This is a Platform API endpoint that requires OAuth client credentials (`clientId` and `x-cal-secret-key`). The endpoint is deprecated as of December 2025 but remains functional for existing Platform customers. Key behaviors: - If `timeZone` is provided: A default working schedule (Mon-Fri, 9AM-5PM) is automatically created - If `timeZone` is omitted: No default schedule is created; you must manually create one via the `/schedules` endpoint before the user can receive bookings Returns access and refresh tokens for the created managed user that should be stored securely. Access tokens expire in 60 minutes; refresh tokens expire in 1 year.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                                                                                                                                              |
| ------------------ | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string  |     ✅    | `"Jane Doe"`                             | Full name of the new managed user, used in communications and the Cal.com interface.                                                                                                     |
| `email`            | string  |     ✅    | `"jane.doe@example.com"`                 | Email address for the new managed user.                                                                                                                                                  |
| `locale`           | string  |          | `"en"`                                   | User's preferred language and regional settings as a locale code (e.g., `en`, `es`).                                                                                                     |
| `clientId`         | string  |     ✅    | `"client_abc123xyz"`                     | Unique identifier of the OAuth client. This often needs to match the `clientId` in the API path.                                                                                         |
| `timeZone`         | string  |          | `"America/New_York"`                     | IANA timezone (e.g., `America/New_York`) for the user's default schedule (Mon-Fri, 9AM-5PM). For behavior when omitted, see action description; `Europe/London` may serve as a fallback. |
| `avatarUrl`        | string  |          | `"https://example.com/avatars/jane.png"` | Publicly accessible URL for the user's avatar image to be used as their profile picture.                                                                                                 |
| `weekStart`        | string  |          | `"Monday"`                               | Day on which the user's week starts (e.g., `Monday`, `Sunday`).                                                                                                                          |
| `timeFormat`       | integer |          | `12`                                     | User's preferred time display format: 12 for 12-hour, 24 for 24-hour.                                                                                                                    |
| `x_cal_secret_key` | string  |     ✅    | `"cal_secret_abc123xyz"`                 | The OAuth client secret key, required for authentication. This is obtained when registering an OAuth client application with Cal.com.                                                    |

***

### `Cal Create Oauth Client Webhook Configuration`

Integration name: **CAL\_CREATE\_OAUTH\_CLIENT\_WEBHOOK\_CONFIGURATION**

Creates a webhook configuration for an OAuth client to receive real-time event notifications from Cal.com. This is a Platform API endpoint that requires OAuth client credentials (`clientId` and `x-cal-secret-key`). Use this to set up automated workflows by subscribing to events like `BOOKING_CREATED`, `BOOKING_CANCELLED`, `MEETING_ENDED`, `FORM_SUBMITTED`, and more. The webhook will POST event data to your specified `subscriberUrl`. Key features: - Subscribe to multiple event triggers in a single webhook - Optionally customize the payload using a template - Secure webhooks with a secret for signature verification (`X-Cal-Signature-256` header) - Control webhook activation status (`active`/`inactive`) Note: This endpoint is part of the deprecated Platform offering but remains functional for existing customers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                      |
| ------------------ | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `active`           | boolean |     ✅    | `true`                                   | Whether the webhook should be active upon creation. Set to true to start receiving notifications immediately, or false to create in an inactive state for later activation. Default recommendation: true for production webhooks, false for testing/development. |
| `secret`           | string  |          | `"mySuperSecretKey123"`                  | An optional secret key used to sign the webhook payloads. This allows your `subscriberUrl` to verify that incoming requests are genuinely from Cal.com. If provided, Cal.com will include an `X-Cal-Signature-256` header in webhook requests.                   |
| `clientId`         | string  |     ✅    | `"clxj8s9j3000108l37twm86xy"`            | The unique identifier of the OAuth client for which to create the webhook. This is obtained when you create an OAuth client via the Cal.com Platform settings or the POST `/v2/oauth-clients` API endpoint.                                                      |
| `triggers`         | array   |     ✅    | `["BOOKING_CREATED"]`                    | A list of event types that will trigger this webhook. You can subscribe to multiple event triggers. Choose from the available event triggers such as `BOOKING_CREATED`, `BOOKING_CANCELLED`, `MEETING_ENDED`, etc.                                               |
| `subscriberUrl`    | string  |     ✅    | `"https://example.com/webhook-receiver"` | The HTTPS URL to which webhook notifications will be POSTed. This endpoint must be capable of receiving and processing these notifications.                                                                                                                      |
| `payloadTemplate`  | string  |          | —                                        | Optional JSON template for the webhook payload. This allows customization of the data sent to the `subscriberUrl`. Refer to Cal.com documentation (`cal.com/docs/core-features/webhooks`) for details on template syntax and available variables.                |
| `x_cal_secret_key` | string  |     ✅    | `"cal_secret_abc123xyz"`                 | The OAuth client secret key required for Platform authentication. This key is obtained when registering an OAuth client application with Cal.com. It is used to sign and verify requests to OAuth client webhook endpoints.                                      |

***

### `Cal Create Organization Attributes`

Integration name: **CAL\_CREATE\_ORGANIZATION\_ATTRIBUTES**

Creates a new custom attribute for an existing organization, used to enhance data collection for event bookings or user profiles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example        | Description                                                                                                                                                                                                                                  |
| --------- | ------- | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string  |     ✅    | `"Department"` | The human-readable display name for the organization attribute.                                                                                                                                                                              |
| `slug`    | string  |     ✅    | `"department"` | A unique, URL-friendly identifier for the organization attribute, typically a lowercase version of the name with spaces or special characters replaced by hyphens or underscores. This slug must be unique within the organization.          |
| `type`    | string  |     ✅    | —              | The data type of the organization attribute, determining its behavior and storage.                                                                                                                                                           |
| `orgId`   | integer |     ✅    | —              | The unique identifier of the organization for which this attribute is being created. This ID is used in the API request path.                                                                                                                |
| `enabled` | boolean |          | —              | Indicates whether the organization attribute is active and usable upon creation. Set to `true` to enable, `false` to disable. If not specified, the system's default behavior for new attributes (e.g., enabled) will apply.                 |
| `options` | array   |     ✅    | —              | A list of options for the attribute. This field is always required. For `SINGLE_SELECT` or `MULTI_SELECT` types, this list must contain at least one option definition. For `TEXT` or `NUMBER` types, an empty list `[]` should be provided. |

***

### `Cal Create Organization Team Form Workflow`

Integration name: **CAL\_CREATE\_ORGANIZATION\_TEAM\_FORM\_WORKFLOW**

Tool to create a new workflow for routing forms within an organization team. Use when you need to set up automated actions (like sending emails or SMS) triggered by routing form submissions. Supports notification workflows with customizable triggers, steps, and activation settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                        | Description                                                                                                                             |
| ------------ | ------- | :------: | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string  |     ✅    | `"Test Routing Form Workflow"` | Name of the workflow to identify it in the system.                                                                                      |
| `orgId`      | integer |     ✅    | `184337`                       | The unique identifier of the organization. You must have access to this organization.                                                   |
| `steps`      | array   |     ✅    | —                              | List of steps to execute as part of the workflow. Allowed actions are: `email_attendee`, `email_address`, `sms_attendee`, `sms_number`. |
| `teamId`     | integer |     ✅    | `184346`                       | The unique identifier of the team within the organization.                                                                              |
| `trigger`    | object  |     ✅    | —                              | Trigger configuration that determines when the workflow executes.                                                                       |
| `activation` | object  |     ✅    | —                              | Activation settings that determine which routing forms this workflow applies to.                                                        |

***

### `Cal Create Organization Webhook By Org Id`

Integration name: **CAL\_CREATE\_ORGANIZATION\_WEBHOOK\_BY\_ORG\_ID**

Creates a webhook for an organization that sends HTTP POST notifications to a specified URL when triggered by events (e.g., booking created, cancelled, meeting started). Returns the webhook configuration including its unique ID, which can be used to update or delete the webhook later.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                          | Description                                                                                                                                                                                                                                                                                            |
| ----------------- | ------- | :------: | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `orgId`           | integer |     ✅    | `"123"`                                                          | Unique identifier for the organization to associate with this webhook.                                                                                                                                                                                                                                 |
| `active`          | boolean |     ✅    | `"true"`                                                         | If `true`, webhook is active upon creation and sends notifications; `false` creates it disabled.                                                                                                                                                                                                       |
| `secret`          | string  |          | `"your_secret_here"`                                             | Secret used to generate an HMAC SHA256 signature for payloads. If provided, Cal.com sends this signature in the `X-Cal-Signature-256` header, allowing `subscriberUrl` to verify request origin.                                                                                                       |
| `triggers`        | array   |     ✅    | `["BOOKING_CREATED"]`                                            | List of events that trigger this webhook to send a notification to `subscriberUrl`. At least one trigger must be provided.                                                                                                                                                                             |
| `subscriberUrl`   | string  |     ✅    | `"https://example.com/webhook-receiver"`                         | Publicly accessible URL to receive HTTP POST requests for triggered events; this endpoint must process the webhook payloads.                                                                                                                                                                           |
| `payloadTemplate` | string  |          | `"{\"event\": \"{{triggerEvent}}\", \"id\": \"{{bookingId}}\"}"` | Optional JSON template for customizing the webhook payload sent to `subscriberUrl`. Supports template variables like `{{triggerEvent}}`, `{{bookingId}}`, `{{type}}`, `{{title}}`, `{{organizer.name}}`, `{{attendees.0.name}}`, etc. If omitted, Cal.com sends a default payload with all event data. |

***

### `Cal Create Or Update Team Profile`

Integration name: **CAL\_CREATE\_OR\_UPDATE\_TEAM\_PROFILE**

Creates a new team profile, or updates one if a `slug` matches, customizing branding, scheduling, privacy, and operational details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example            | Description                                                                                                                    |
| --------------------- | ------- | :------: | ------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `bio`                 | string  |          | —                  | A short biography or description of the team.                                                                                  |
| `name`                | string  |     ✅    | `"Marketing Team"` | The name of the team.                                                                                                          |
| `slug`                | string  |          | `"marketing-team"` | Unique, URL-friendly identifier for the team. If not provided, may be generated from the name. Used for team page access.      |
| `theme`               | string  |          | `"light"`          | Visual theme for the team's booking page (e.g., `light`, `dark`, `system`).                                                    |
| `appLogo`             | string  |          | —                  | Logo URL for the team within the Cal.com application interface. Must be a valid URL or omitted; empty strings are not allowed. |
| `logoUrl`             | string  |          | —                  | URL of the team's primary logo. Must be a valid URL or omitted; empty strings are not allowed.                                 |
| `metadata`            | object  |          | —                  | Custom key-value data associated with the team profile.                                                                        |
| `timeZone`            | string  |          | —                  | Default timezone for the team, used for initial schedule setup (e.g., Mon-Fri, 9AM-5PM).                                       |
| `bannerUrl`           | string  |          | —                  | URL of the team's banner image for their booking page. Must be a valid URL or omitted; empty strings are not allowed.          |
| `isPrivate`           | boolean |          | —                  | If true, the team profile is private and not publicly discoverable without permissions.                                        |
| `weekStart`           | string  |          | `"Sunday"`         | Day the week starts for calendar displays (e.g., `Sunday`, `Monday`).                                                          |
| `brandColor`          | string  |          | `"#FF5733"`        | Primary brand color for team pages (hex format, e.g., `#FF5733`).                                                              |
| `timeFormat`          | string  |          | `"12"`             | Preferred time display format: 12 for 12-hour (e.g., 2:30 PM) or 24 for 24-hour (e.g., 14:30).                                 |
| `appIconLogo`         | string  |          | —                  | Icon version URL of the team's logo (e.g., for favicons). Must be a valid URL or omitted; empty strings are not allowed.       |
| `calVideoLogo`        | string  |          | —                  | Logo URL for display during the team's Cal.com video calls. Must be a valid URL or omitted; empty strings are not allowed.     |
| `hideBranding`        | boolean |          | —                  | If true, Cal.com's own branding is hidden on the team's public pages.                                                          |
| `darkBrandColor`      | string  |          | `"#C70039"`        | Brand color for dark mode (hex format); complements `brandColor`.                                                              |
| `autoAcceptCreator`   | boolean |          | —                  | If true, the team creator is automatically added and accepted as an admin member.                                              |
| `hideBookATeamMember` | boolean |          | —                  | If true, hides the option to book a specific team member, encouraging collective bookings.                                     |

***

### `Cal Create Phone Call Event`

Integration name: **CAL\_CREATE\_PHONE\_CALL\_EVENT**

Schedules a phone call event in Cal.com using existing eventType, organization, and team IDs; this action only registers the event details and does not initiate the actual phone call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                               | Description                                                                                             |
| ----------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `orgId`           | integer |     ✅    | —                                                                                                     | Unique identifier for an existing organization.                                                         |
| `teamId`          | integer |     ✅    | —                                                                                                     | Unique identifier for an existing team.                                                                 |
| `calApiKey`       | string  |     ✅    | —                                                                                                     | API key for Cal.com integration.                                                                        |
| `guestName`       | string  |          | `"John Smith"`                                                                                        | Name of the guest participating in the call.                                                            |
| `guestEmail`      | string  |          | `"john.smith@example.com"`                                                                            | Email address of the guest; can be used for notifications or record-keeping.                            |
| `eventTypeId`     | integer |     ✅    | —                                                                                                     | Unique identifier for an existing event type.                                                           |
| `beginMessage`    | string  |          | `"This call is regarding your recent inquiry."`                                                       | Initial message played or displayed when the call begins; useful for providing context or instructions. |
| `guestCompany`    | string  |          | `"Acme Corp"`                                                                                         | Company affiliation of the guest, if applicable.                                                        |
| `numberToCall`    | string  |     ✅    | `"+13105552368"`                                                                                      | Recipient's phone number in E.164 format (e.g., +13105552368), which will be dialed.                    |
| `templateType`    | string  |          | `"CHECK_IN_APPOINTMENT"`                                                                              | Template for the phone call event; determines the initial setup and prompts for the call.               |
| `generalPrompt`   | string  |          | `"Please confirm your availability for the upcoming meeting and discuss any questions you may have."` | General prompt or script to guide the conversation; can set the agenda or provide talking points.       |
| `schedulerName`   | string  |          | `"Jane Doe"`                                                                                          | Name of the person or entity scheduling the call.                                                       |
| `yourPhoneNumber` | string  |     ✅    | `"+12125552368"`                                                                                      | Your phone number in E.164 format (e.g., +12125552368), used as the caller ID.                          |

***

### `Cal Create Phone Call For Event Type`

Integration name: **CAL\_CREATE\_PHONE\_CALL\_FOR\_EVENT\_TYPE**

Configures Cal.ai phone call automation for a team event type, enabling AI-powered outbound calls for appointment reminders or custom conversations. Requires team membership - first use `CAL_GET_TEAMS_LIST` to get a valid teamId, then `CAL_GET_EVENT_TYPE_BY_TEAM_ID` or `CAL_RETRIEVE_TEAM_EVENT_TYPES` to get an eventTypeId belonging to that team. Note: This creates the call configuration but does not immediately initiate a call. Cal.ai charges $0.29/minute for AI calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                          | Description                                                                                                                                                                                          |
| ----------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `teamId`          | integer |     ✅    | —                                                                                                                | ID of the team that owns the event type. The authenticated user must be a member of this team. Get this from `CAL_GET_TEAMS_LIST`.                                                                   |
| `enabled`         | boolean |          | —                                                                                                                | Whether the phone call configuration is active. Set to true to enable AI calls for this event type.                                                                                                  |
| `calApiKey`       | string  |     ✅    | `"cal_live_xxxxxxxxxxxx"`                                                                                        | Cal.com API key for the AI phone call integration. This key authorizes the Cal.ai service to make calls on your behalf.                                                                              |
| `guestName`       | string  |          | `"Jane Smith"`                                                                                                   | Name of the person being called. The AI will address them by this name during the conversation.                                                                                                      |
| `guestEmail`      | string  |          | `"jane.smith@example.com"`                                                                                       | Email address of the call recipient. Used for sending follow-up notifications or confirmations.                                                                                                      |
| `eventTypeId`     | integer |     ✅    | —                                                                                                                | ID of the team event type to associate the phone call with. Must be an event type belonging to the specified team. Get this from `CAL_GET_EVENT_TYPE_BY_TEAM_ID` or `CAL_RETRIEVE_TEAM_EVENT_TYPES`. |
| `beginMessage`    | string  |          | `"Hello, this is a courtesy call from Acme Healthcare regarding your upcoming appointment."`                     | Opening message the AI speaks when the call connects. Use this to set the context and purpose of the call.                                                                                           |
| `guestCompany`    | string  |          | `"Acme Corp"`                                                                                                    | Company or organization the guest is affiliated with. Provides context for the AI conversation.                                                                                                      |
| `numberToCall`    | string  |     ✅    | `"+13105552672"`                                                                                                 | Recipient's phone number in E.164 format. This is the number the AI will dial to initiate the call.                                                                                                  |
| `templateType`    | string  |          | `"CHECK_IN_APPOINTMENT"`                                                                                         | Call template type: `CHECK_IN_APPOINTMENT` uses a predefined appointment reminder script, `CUSTOM_TEMPLATE` allows fully customized conversation flow.                                               |
| `generalPrompt`   | string  |          | `"Confirm the appointment time, ask if they have any questions, and remind them to bring their insurance card."` | Instructions that guide the AI's conversation behavior throughout the call. Define the tone, objectives, and topics to cover.                                                                        |
| `schedulerName`   | string  |          | `"John Doe Scheduling"`                                                                                          | Name of the person or organization scheduling the call. The AI will use this to introduce itself.                                                                                                    |
| `yourPhoneNumber` | string  |     ✅    | `"+14155552671"`                                                                                                 | Caller's phone number in E.164 format. This is the number that will appear as the caller ID when the AI makes outbound calls.                                                                        |

***

### `Cal Create Team Event Type`

Integration name: **CAL\_CREATE\_TEAM\_EVENT\_TYPE**

Creates a new event type for a specified team in Cal.com; ensure `teamId`, any provided `scheduleId`, `hosts.userId`, and `destinationCalendar` details are valid and accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                          | Type    | Required | Example                                                                                   | Description                                                                                                                                                                                                    |
| ---------------------------------- | ------- | :------: | ----------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `slug`                             | string  |     ✅    | `"team-sync"`                                                                             | A URL-friendly identifier for the event type, typically derived from the title.                                                                                                                                |
| `hosts`                            | array   |          | —                                                                                         | List of specific hosts for this event. Each host needs `userId`. For round-robin, `mandatory` and `priority` can be set. Either provide `hosts` OR set `assignAllTeamMembers=true`, not both.                  |
| `seats`                            | object  |          | `"{'perSlot': 10, 'attendeeNoun': 'participant', 'showAttendees': True}"`                 | Seat-based availability for multiple attendees per slot.                                                                                                                                                       |
| `title`                            | string  |     ✅    | `"Team Sync"`                                                                             | The title of the event type that will be displayed to bookers.                                                                                                                                                 |
| `teamId`                           | integer |     ✅    | `"789"`                                                                                   | The unique identifier of the team for which this event type is being created.                                                                                                                                  |
| `locations`                        | array   |          | `"[{'type': 'integrations:google:meet'}]"`                                                | Event locations (e.g., physical, integration links). Defaults to Cal.com video link.                                                                                                                           |
| `customName`                       | string  |          | —                                                                                         | Customizable name for the created calendar event. Supports variables like `{Event type title}`, `{Organiser}`, `{Scheduler}`, etc.                                                                             |
| `recurrence`                       | object  |          | `"{'frequency': 'weekly', 'interval': 1, 'byDay': ['MO', 'WE', 'FR']}"`                   | Recurrence rules for the event.                                                                                                                                                                                |
| `scheduleId`                       | integer |          | —                                                                                         | Overrides team's default schedule with this schedule ID.                                                                                                                                                       |
| `description`                      | string  |          | —                                                                                         | Detailed event type description for bookers.                                                                                                                                                                   |
| `offsetStart`                      | integer |          | —                                                                                         | Offsets start times of available slots by specified minutes.                                                                                                                                                   |
| `slotInterval`                     | integer |          | —                                                                                         | Duration in minutes for each available time slot.                                                                                                                                                              |
| `bookingFields`                    | array   |          | `"[{'name': 'company_name', 'type': 'text', 'label': 'Company Name', 'required': True}]"` | Custom fields for the booking form (name and email are default).                                                                                                                                               |
| `bookingWindow`                    | object  |          | `"{'start': 0, 'end': 30, 'unit': 'days'}"`                                               | Future booking window.                                                                                                                                                                                         |
| `disableGuests`                    | boolean |          | —                                                                                         | If true, booker cannot add additional guests via email.                                                                                                                                                        |
| `schedulingType`                   | string  |     ✅    | `"collective"`                                                                            | How bookings are distributed among hosts. `collective`: all hosts must attend. `roundRobin`: distribute bookings across hosts based on availability/priority. `managed`: platform-specific managed scheduling. |
| `lengthInMinutes`                  | integer |     ✅    | `"30"`                                                                                    | The default duration of the event in minutes.                                                                                                                                                                  |
| `afterEventBuffer`                 | integer |          | —                                                                                         | Buffer time (minutes) after events (marked unavailable).                                                                                                                                                       |
| `beforeEventBuffer`                | integer |          | —                                                                                         | Buffer time (minutes) before events (marked unavailable).                                                                                                                                                      |
| `hideCalendarNotes`                | boolean |          | —                                                                                         | If true, hide calendar notes (description, location, etc.) from created event.                                                                                                                                 |
| `bookingLimitsCount`               | object  |          | `"{'count': 10, 'period': 'day'}"`                                                        | Limits on booking frequency.                                                                                                                                                                                   |
| `confirmationPolicy`               | object  |          | `"{'type': 'MANUAL', 'message': 'Your booking requires manual approval.'}"`               | Booking confirmation policy.                                                                                                                                                                                   |
| `successRedirectUrl`               | string  |          | `"https://example.com/booking-success"`                                                   | Redirect URL after successful booking. Defaults to Cal.com page.                                                                                                                                               |
| `color__darkThemeHex`              | string  |          | `"#4A90E2"`                                                                               | Hex color for dark theme display.                                                                                                                                                                              |
| `assignAllTeamMembers`             | boolean |          | —                                                                                         | If true, assigns all current and future team members as hosts automatically.                                                                                                                                   |
| `color__lightThemeHex`             | string  |          | `"#FFD700"`                                                                               | Hex color for light theme display.                                                                                                                                                                             |
| `minimumBookingNotice`             | integer |          | —                                                                                         | Minimum minutes notice required for booking.                                                                                                                                                                   |
| `bookingLimitsDuration`            | object  |          | `"{'duration': 120, 'period': 'week'}"`                                                   | Limits on total booking duration per period.                                                                                                                                                                   |
| `lengthInMinutesOptions`           | array   |          | `[15,30,45,60]`                                                                           | Optional alternative event durations that bookers can choose from.                                                                                                                                             |
| `hideCalendarEventDetails`         | boolean |          | —                                                                                         | If true, hide event details (attendees, description) from non-organizer attendees.                                                                                                                             |
| `onlyShowFirstAvailableSlot`       | boolean |          | —                                                                                         | If true, show only the earliest available slot per day.                                                                                                                                                        |
| `useDestinationCalendarEmail`      | boolean |          | —                                                                                         | If true, use destination calendar's email for event invites/updates.                                                                                                                                           |
| `destinationCalendar__externalId`  | string  |          | —                                                                                         | External ID for destination calendar. See `/api/v2/calendars`.                                                                                                                                                 |
| `lockTimeZoneToggleOnBookingPage`  | boolean |          | —                                                                                         | If true, lock timezone toggle on booking page.                                                                                                                                                                 |
| `requiresBookerEmailVerification`  | boolean |          | —                                                                                         | If true, bookers must verify email before confirmation.                                                                                                                                                        |
| `destinationCalendar__integration` | string  |          | —                                                                                         | Integration type for destination calendar. See `/api/v2/calendars`.                                                                                                                                            |

***

### `Cal Create Team Event Types With Custom Options`

Integration name: **CAL\_CREATE\_TEAM\_EVENT\_TYPES\_WITH\_CUSTOM\_OPTIONS**

Creates a highly customizable Cal.com team event type with extensive scheduling, booking, and host assignment options; `schedulingType` is required, `lengthInMinutes` must be included in `lengthInMinutesOptions`, destination calendar details (from `/api/v2/calendars`) must be valid if provided, and host User IDs must be valid team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                          | Type    | Required | Example                                                                                             | Description                                                                                                                                                                                                     |
| ---------------------------------- | ------- | :------: | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `slug`                             | string  |     ✅    | `"team-sync"`                                                                                       | A URL-friendly identifier for the event type. Usually a hyphenated version of the title.                                                                                                                        |
| `hosts`                            | array   |     ✅    | —                                                                                                   | List of hosts. Each specifies user ID and optionally mandatory status/priority (for round-robin). At least one host required.                                                                                   |
| `orgId`                            | integer |     ✅    | `"12345"`                                                                                           | The unique identifier for the organization.                                                                                                                                                                     |
| `seats`                            | object  |          | `"{\"enabled\": true, \"per_slot\": 25, \"show_remaining_seats\": false}"`                          | Defines seat-based availability, allowing multiple attendees per slot.                                                                                                                                          |
| `title`                            | string  |     ✅    | `"Team Sync"`                                                                                       | The title of the event type.                                                                                                                                                                                    |
| `teamId`                           | integer |     ✅    | `"67890"`                                                                                           | The unique identifier for the team.                                                                                                                                                                             |
| `locations`                        | array   |          | `"[{\"type\": \"cal_video\"}]"`                                                                     | A list of physical or virtual locations for the event. If not provided, a Cal.com video link will be used by default.                                                                                           |
| `customName`                       | string  |          | `"{Event type title} with {Scheduler}"`                                                             | Customizable name for the calendar event entry.                                                                                                                                                                 |
| `recurrence`                       | object  |          | `"{\"frequency\": \"weekly\", \"interval\": 1, \"days\": [1,3,5], \"count\": 4}"`                   | Defines the recurrence pattern for recurring events.                                                                                                                                                            |
| `scheduleId`                       | integer |          | `"987"`                                                                                             | The ID of a specific schedule to use for this event type, overriding the team's or user's default schedule.                                                                                                     |
| `description`                      | string  |          | `"Weekly synchronization meeting for the development team."`                                        | A detailed description of the event type. Can include HTML for formatting.                                                                                                                                      |
| `offsetStart`                      | integer |          | `"0"`                                                                                               | Offset (minutes) to shift display of available slots.                                                                                                                                                           |
| `slotInterval`                     | integer |          | `"15"`                                                                                              | Duration in minutes of each bookable time slot.                                                                                                                                                                 |
| `bookingFields`                    | array   |          | `"[{\"name\": \"project_id\", \"label\": \"Project ID\", \"type\": \"text\", \"required\": true}]"` | A list of custom fields for the booking form.                                                                                                                                                                   |
| `bookingWindow`                    | object  |          | `"{\"type\": \"rolling_days\", \"days\": 60}"`                                                      | Defines how far in the future this event can be booked.                                                                                                                                                         |
| `disableGuests`                    | boolean |          | —                                                                                                   | If true, the person booking this event cannot add guests via their email addresses.                                                                                                                             |
| `schedulingType`                   | string  |     ✅    | `"COLLECTIVE"`                                                                                      | How bookings are distributed among hosts. `COLLECTIVE`: all hosts must attend. `ROUND_ROBIN`: distribute bookings across hosts based on availability/priority. `MANAGED`: platform-specific managed scheduling. |
| `lengthInMinutes`                  | integer |     ✅    | `"30"`                                                                                              | The default duration of the event in minutes.                                                                                                                                                                   |
| `afterEventBuffer`                 | integer |          | `"5"`                                                                                               | Buffer time in minutes to add after each event.                                                                                                                                                                 |
| `beforeEventBuffer`                | integer |          | `"5"`                                                                                               | Buffer time in minutes to add before each event.                                                                                                                                                                |
| `hideCalendarNotes`                | boolean |          | —                                                                                                   | If true, any notes added to the calendar event by the organizer will be hidden from the booker.                                                                                                                 |
| `bookingLimitsCount`               | object  |          | `"{\"period\": \"day\", \"count\": 1}"`                                                             | Defines limits on how many times this event can be booked per period.                                                                                                                                           |
| `confirmationPolicy`               | object  |          | `"{\"type\": \"automatic_confirmation\"}"`                                                          | Specifies the manual confirmation policy for bookings.                                                                                                                                                          |
| `successRedirectUrl`               | string  |          | `"https://example.com/thank-you"`                                                                   | A valid URL to which the booker will be redirected after a successful booking.                                                                                                                                  |
| `color__darkThemeHex`              | string  |          | `"#50E3C2"`                                                                                         | Hexadecimal color code for the event type when displayed in a dark theme.                                                                                                                                       |
| `assignAllTeamMembers`             | boolean |          | —                                                                                                   | If true, all current and future members of the team will automatically be assigned as hosts to this event type.                                                                                                 |
| `color__lightThemeHex`             | string  |          | `"#4A90E2"`                                                                                         | Hexadecimal color code for the event type when displayed in a light theme.                                                                                                                                      |
| `minimumBookingNotice`             | integer |          | `"60"`                                                                                              | The minimum number of minutes before the event's start time that a booking can be made.                                                                                                                         |
| `bookingLimitsDuration`            | object  |          | `"{\"period\": \"day\", \"duration\": 60}"`                                                         | Defines limits on total booked duration (minutes) for this event type per period.                                                                                                                               |
| `lengthInMinutesOptions`           | array   |     ✅    | `[30,60]`                                                                                           | Alternative event durations (in minutes) that bookers can choose from. The value of `lengthInMinutes` must be included in this list.                                                                            |
| `hideCalendarEventDetails`         | boolean |          | —                                                                                                   | If true, sensitive details of the calendar event may be hidden or summarized for bookers.                                                                                                                       |
| `onlyShowFirstAvailableSlot`       | boolean |          | —                                                                                                   | If true, only the earliest available slot per day will be displayed to bookers for this event type.                                                                                                             |
| `useDestinationCalendarEmail`      | boolean |          | —                                                                                                   | If true, the email address associated with the destination calendar will be used for sending event notifications.                                                                                               |
| `destinationCalendar__externalId`  | string  |          | `"primary"`                                                                                         | External ID of the specific calendar for new bookings.                                                                                                                                                          |
| `lockTimeZoneToggleOnBookingPage`  | boolean |          | —                                                                                                   | If true, the booker will not be able to change the timezone on the booking page.                                                                                                                                |
| `requiresBookerEmailVerification`  | boolean |          | —                                                                                                   | If true, bookers will be required to verify their email address before the booking is confirmed.                                                                                                                |
| `destinationCalendar__integration` | string  |          | `"google_calendar"`                                                                                 | Integration type of the calendar for new bookings.                                                                                                                                                              |

***

### `Cal Create Team In Organization`

Integration name: **CAL\_CREATE\_TEAM\_IN\_ORGANIZATION**

Creates a new team with customizable attributes within an existing and accessible Cal.com organization specified by orgId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                                             | Description                                                                                                                                                                                                                                                                      |
| --------------------- | ------- | :------: | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `bio`                 | string  |          | `"The core engineering team focused on platform development."`                                      | Short description or biography for the team.                                                                                                                                                                                                                                     |
| `name`                | string  |     ✅    | `"Marketing Team"`                                                                                  | Name of the team to be created.                                                                                                                                                                                                                                                  |
| `slug`                | string  |          | `"marketing-team-alpha"`                                                                            | Unique, URL-friendly identifier for the team (e.g., `marketing-team`). Auto-generated from name if not provided.                                                                                                                                                                 |
| `orgId`               | integer |     ✅    | —                                                                                                   | ID of the organization where the team will be created.                                                                                                                                                                                                                           |
| `theme`               | string  |          | `"light"`                                                                                           | Visual theme for the team's booking page (e.g., `light`, `dark`, `system`, or custom).                                                                                                                                                                                           |
| `appLogo`             | string  |          | `"https://example.com/logos/app-logo.png"`                                                          | URL for the logo displayed within the Cal.com application interface for this team.                                                                                                                                                                                               |
| `logoUrl`             | string  |          | `"https://example.com/logos/team-logo.png"`                                                         | URL of the team's logo image, displayed on its booking page and profile.                                                                                                                                                                                                         |
| `metadata`            | string  |          | `"{\"internal_id\": \"team_alpha_007\", \"region\": \"EMEA\", \"slack_channel\": \"#team-alpha\"}"` | JSON string for custom key-value pairs to store additional team information. NOTE: This parameter may not be supported by the API and can cause 400 errors. The API documentation indicates this should be an object with up to 50 keys. Recommended to leave as default (None). |
| `timeZone`            | string  |          | `"America/Los_Angeles"`                                                                             | IANA time zone identifier for the team's default schedule. Defaults to `Europe/London`.                                                                                                                                                                                          |
| `bannerUrl`           | string  |          | `"https://example.com/banners/team-banner.jpg"`                                                     | URL of the team's banner image, displayed at the top of its booking page.                                                                                                                                                                                                        |
| `isPrivate`           | boolean |          | —                                                                                                   | If true, the team is private, not publicly discoverable, and access is restricted.                                                                                                                                                                                               |
| `weekStart`           | string  |          | `"Sunday"`                                                                                          | First day of the week for calendar displays.                                                                                                                                                                                                                                     |
| `brandColor`          | string  |          | `"#3498db"`                                                                                         | Primary brand color for the team.                                                                                                                                                                                                                                                |
| `timeFormat`          | integer |          | `12`                                                                                                | Preferred time format. NOTE: This parameter may not be supported by the API and can cause 400 errors. Recommended to leave as default (None).                                                                                                                                    |
| `appIconLogo`         | string  |          | `"https://example.com/logos/app-icon.ico"`                                                          | URL for a smaller icon version of the team's logo for contexts like list views or notifications.                                                                                                                                                                                 |
| `calVideoLogo`        | string  |          | `"https://example.com/logos/team-video-logo.mp4"`                                                   | URL for the team's video logo, displayed during Cal Video sessions.                                                                                                                                                                                                              |
| `hideBranding`        | boolean |          | —                                                                                                   | If true, hides Cal.com's default branding on the team's booking pages for a white-labeled experience.                                                                                                                                                                            |
| `darkBrandColor`      | string  |          | `"#1A202C"`                                                                                         | Brand color for dark theme on the team's booking page.                                                                                                                                                                                                                           |
| `autoAcceptCreator`   | boolean |          | —                                                                                                   | If true, the team creator is automatically accepted as a member. Defaults to true. WARNING: Setting this to false may cause 400 errors. Platform customers should not set this to false.                                                                                         |
| `hideBookATeamMember` | boolean |          | —                                                                                                   | If true, hides the option to book a specific team member from the team's main booking page.                                                                                                                                                                                      |

***

### `Cal Create Team Invite Link`

Integration name: **CAL\_CREATE\_TEAM\_INVITE\_LINK**

Creates a shareable invite link for a Cal.com team that allows new members to join. Returns both the raw token and a complete invitation URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                                                                                  |
| --------- | ------- | :------: | -------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `teamId`  | integer |     ✅    | `184336` | Unique identifier of the team to create an invite link for. The authenticated user must have permission to manage this team. |

***

### `Cal Create Team Membership With Role`

Integration name: **CAL\_CREATE\_TEAM\_MEMBERSHIP\_WITH\_ROLE**

Adds a user to a team with a specified role, acceptance status, and impersonation settings; ensure `teamId` and `userId` refer to existing, valid entities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                                                                                        |
| ---------------------- | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`                 | string  |          | `"MEMBER"` | The role to assign to the user within the team.                                                                                                    |
| `teamId`               | integer |     ✅    | —          | The unique identifier of the team to which the user will be added.                                                                                 |
| `userId`               | integer |     ✅    | —          | The unique identifier of the user to be added to the team.                                                                                         |
| `accepted`             | boolean |          | —          | Indicates if the membership invitation is pre-accepted. If `true`, the user is added directly to the team without needing to accept an invitation. |
| `disableImpersonation` | boolean |          | —          | If `true`, prevents administrators from impersonating this user.                                                                                   |

***

### `Cal Create User Availability Schedule`

Integration name: **CAL\_CREATE\_USER\_AVAILABILITY\_SCHEDULE**

Creates a Cal.com user availability schedule, defining its name, timezone, weekly recurring availability, and specific date overrides; if `isDefault` is true, this schedule replaces any existing default and applies to event types not linked to a specific schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                 | Description                                                                                                                                                                                                    |
| -------------- | ------- | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"Standard Work Week"`  | Descriptive name for the availability schedule (e.g., `Working Hours`, `Holiday Schedule`).                                                                                                                    |
| `timeZone`     | string  |     ✅    | `"America/Los_Angeles"` | IANA timezone identifier (e.g., `America/New_York`). Essential for correct event availability calculation.                                                                                                     |
| `isDefault`    | boolean |     ✅    | —                       | Sets this as the user's default schedule if true, replacing any existing default. The default schedule is used for event types not linked to a specific one. Each user must have exactly one default schedule. |
| `overrides`    | array   |          | —                       | List of override objects for specific date exceptions (e.g., holidays). Overrides take precedence over weekly availability.                                                                                    |
| `availability` | array   |          | —                       | List of availability objects defining active days and time slots. If omitted, a default (Mon-Fri, 09:00-17:00 in schedule's timeZone) is applied.                                                              |

***

### `Cal Create User Schedule In Organization`

Integration name: **CAL\_CREATE\_USER\_SCHEDULE\_IN\_ORGANIZATION**

Creates a new schedule defining a user's availability with weekly slots and date-specific overrides in an organization; setting `isDefault` to true may replace an existing default schedule for the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example              | Description                                                                                                                                     |
| -------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"Working Hours"`    | Descriptive name for the schedule.                                                                                                              |
| `orgId`        | integer |     ✅    | —                    | Unique identifier of the organization.                                                                                                          |
| `userId`       | integer |     ✅    | —                    | Unique identifier of the user for whom the schedule is created.                                                                                 |
| `timeZone`     | string  |     ✅    | `"America/New_York"` | IANA timezone identifier for the schedule; used to calculate event times.                                                                       |
| `isDefault`    | boolean |     ✅    | —                    | Specifies if this is the user's default schedule. Only one schedule can be default; used for event types not tied to a specific schedule.       |
| `overrides`    | array   |          | —                    | List of overrides to change availability for specific dates (e.g., holidays, special events).                                                   |
| `availability` | array   |          | —                    | List of availability objects defining the user's regular weekly schedule. If omitted, system may assume a default (e.g., Mon-Fri, 09:00-17:00). |

***

### `Cal Create Webhook For Event Type`

Integration name: **CAL\_CREATE\_WEBHOOK\_FOR\_EVENT\_TYPE**

Creates a webhook for an existing `eventTypeId` in Cal.com, sending notifications for specified `triggers` to a `subscriberUrl` that handles POST requests.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                     | Description                                                                                  |
| ----------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| `active`          | boolean |     ✅    | `"true"`                                                                                                    | Indicates if the webhook is active.                                                          |
| `secret`          | string  |          | `"your_secret_here"`                                                                                        | Secret key to sign the webhook payload, allowing verification of Cal.com origin.             |
| `triggers`        | array   |     ✅    | `["BOOKING_CREATED"]`                                                                                       | List of events that trigger the webhook. At least one trigger must be provided.              |
| `eventTypeId`     | integer |     ✅    | `"123"`                                                                                                     | Unique identifier for the event type.                                                        |
| `subscriberUrl`   | string  |     ✅    | `"https://api.example.com/webhooks/cal"`                                                                    | URL to receive webhook payloads for trigger events; must handle POST requests.               |
| `payloadTemplate` | string  |          | `"{\"event_type\": \"{{type}}\", \"booking_id\": \"{{uid}}\", \"attendee_email\": \"{{attendee.email}}\"}"` | String template for the payload sent to `subscriberUrl`, allowing variables like `{{type}}`. |

***

### `Cal Decline Booking With Reason`

Integration name: **CAL\_DECLINE\_BOOKING\_WITH\_REASON**

Declines a pending booking using its bookingUid, optionally with a reason; this action is irreversible and applies only to bookings awaiting confirmation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                             | Description                                                                                                   |
| ------------ | ------ | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `reason`     | string |          | `"Unexpected scheduling conflict."` | Reason provided by the host for declining the booking; recommended for clear communication with the attendee. |
| `bookingUid` | string |     ✅    | `"bk_123abc456xyz"`                 | The unique identifier (UID) of the booking to be declined.                                                    |

***

### `Cal Delete All Team Event Type Webhooks`

Integration name: **CAL\_DELETE\_ALL\_TEAM\_EVENT\_TYPE\_WEBHOOKS**

Permanently deletes all webhooks associated with a specific team event type. Use when you need to remove all webhook configurations for a team's event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                       |
| ------------- | ------- | :------: | --------- | --------------------------------------------------------------------------------- |
| `teamId`      | integer |     ✅    | `184336`  | The unique numeric identifier of the team that owns the event type.               |
| `eventTypeId` | integer |     ✅    | `4591148` | The unique numeric identifier of the event type whose webhooks should be deleted. |

***

### `Cal Delete Conference App Connection`

Integration name: **CAL\_DELETE\_CONFERENCE\_APP\_CONNECTION**

Disconnects the specified conferencing application (e.g., `zoom`, `google_meet`) for the Cal.com account, immediately terminating any ongoing call or meeting; use with caution.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example  | Description                                                                                                                                  |
| --------- | ------ | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `app`     | string |     ✅    | `"zoom"` | Identifier for the conferencing application to be disconnected. This is typically the unique name or slug of the app integration in Cal.com. |

***

### `Cal Delete Destination Calendar By Id`

Integration name: **CAL\_DELETE\_DESTINATION\_CALENDAR\_BY\_ID**

Tool to remove an existing destination calendar by its unique ID. Use when you need to delete a destination calendar configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example   | Description                                                  |
| --------- | ------- | :------: | --------- | ------------------------------------------------------------ |
| `id`      | integer |     ✅    | `1085730` | The unique identifier of the destination calendar to delete. |

***

### `Cal Delete Event Type By Id`

Integration name: **CAL\_DELETE\_EVENT\_TYPE\_BY\_ID**

Permanently deletes an existing event type by its ID, which invalidates its scheduling links; the operation is irreversible, and while existing bookings are unaffected, no new bookings can be made for this event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                      |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------- |
| `eventTypeId` | integer |     ✅    | `"123"` | The unique numerical identifier of the event type to be deleted. |

***

### `Cal Delete Event Type In Team`

Integration name: **CAL\_DELETE\_EVENT\_TYPE\_IN\_TEAM**

Permanently removes an event type's configuration from a team's scheduling options (e.g., for cleanup); this action is irreversible and requires the event type to be associated with the team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                             |
| ------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------- |
| `teamId`      | integer |     ✅    | —       | The unique identifier for the team from which the event type will be deleted.           |
| `eventTypeId` | integer |     ✅    | —       | The unique identifier for the event type that is to be deleted from the specified team. |

***

### `Cal Delete Membership In Team`

Integration name: **CAL\_DELETE\_MEMBERSHIP\_IN\_TEAM**

Use to permanently remove a user's membership from a specific team within an organization, which revokes their team-associated access but does not remove them from the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                   |
| -------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------- |
| `orgId`        | integer |     ✅    | `123`   | The unique identifier for the organization in which the team resides.         |
| `teamId`       | integer |     ✅    | `101`   | The unique identifier for the team from which the membership will be deleted. |
| `membershipId` | integer |     ✅    | `111`   | The unique identifier for the membership entry to be deleted.                 |

***

### `Cal Delete Oauth Client User`

Integration name: **CAL\_DELETE\_OAUTH\_CLIENT\_USER**

Permanently removes a managed user's association with an OAuth client without deleting their Cal.com account. This is a Cal.com Platform API endpoint for developers who manage users through OAuth clients. Prerequisites: - A registered OAuth client application (provides clientId) - The OAuth client secret key (`x_cal_secret_key`) - A valid managed user ID that was created under this OAuth client The deleted user's information is returned in the response for confirmation. Note: This endpoint is marked as deprecated in Cal.com docs but remains functional for existing Platform customers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                    |
| ------------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------- |
| `userId`           | integer |     ✅    | `12345`                                  | The unique numerical identifier of the managed user to delete. |
| `clientId`         | string  |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | The unique identifier of the OAuth client application.         |
| `x_cal_secret_key` | string  |     ✅    | `"cal_secret_abc123xyz"`                 | The OAuth client secret key for authentication.                |

***

### `Cal Delete Oauth Client Webhook`

Integration name: **CAL\_DELETE\_OAUTH\_CLIENT\_WEBHOOK**

Permanently deletes a specific webhook for an OAuth client in Cal.com Platform API. This endpoint is part of the Cal.com Platform API and requires valid OAuth client credentials. When a webhook is deleted, it will stop receiving notifications for all configured event triggers. **Prerequisites:** - A Platform-enabled Cal.com organization (requires `isPlatform: true`) - Valid OAuth client credentials (`clientId` and `x_cal_secret_key`) - An existing webhook created for the OAuth client **Typical Use Case:** Remove webhook subscriptions that are no longer needed, helping to manage and clean up your OAuth client's notification endpoints. **Note:** This endpoint is marked as deprecated in Cal.com documentation and may be removed in future versions. Consider using alternative webhook management endpoints when available.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                       | Description                                                       |
| ------------------ | ------ | :------: | ----------------------------- | ----------------------------------------------------------------- |
| `clientId`         | string |     ✅    | `"clsx38nbl0001vkhlwin9fmt0"` | Unique identifier of the OAuth client.                            |
| `webhookId`        | string |     ✅    | `"wh_9z8y7x6w5v4u3t2s"`       | Unique identifier of the webhook to be deleted.                   |
| `x_cal_secret_key` | string |     ✅    | `"cal_secret_abc123xyz"`      | The OAuth client secret key required for Platform authentication. |

***

### `Cal Delete Organization Attribute`

Integration name: **CAL\_DELETE\_ORGANIZATION\_ATTRIBUTE**

Permanently deletes an existing attribute (specified by `attributeId`) from an existing organization (specified by `orgId`); this action is irreversible and may affect features dependent on the attribute.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example             | Description                                                   |
| ------------- | ------- | :------: | ------------------- | ------------------------------------------------------------- |
| `orgId`       | integer |     ✅    | `12345`             | The unique numeric identifier of the organization.            |
| `attributeId` | string  |     ✅    | `"clx123abc456def"` | The unique string identifier (ID) of the attribute to delete. |

***

### `Cal Delete Organization Attribute Option`

Integration name: **CAL\_DELETE\_ORGANIZATION\_ATTRIBUTE\_OPTION**

Permanently deletes a specified option from an organization's attribute. Use this action to remove an option value from attributes of type `SINGLE_SELECT` or `MULTI_SELECT`. This is useful for cleaning up unused or deprecated configuration choices. Note: This action is destructive and cannot be undone. The option will be permanently removed. Requires organization admin access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example         | Description                                                     |
| ------------- | ------- | :------: | --------------- | --------------------------------------------------------------- |
| `orgId`       | integer |     ✅    | `1001`          | The unique numeric identifier of the organization.              |
| `optionId`    | string  |     ✅    | `"opt_abc123"`  | The unique identifier of the option to delete.                  |
| `attributeId` | string  |     ✅    | `"clp1234abcd"` | The unique identifier of the attribute within the organization. |

***

### `Cal Delete Organization Membership`

Integration name: **CAL\_DELETE\_ORGANIZATION\_MEMBERSHIP**

Irreversibly deletes a user's membership from an organization, removing all associated access and permissions; the response confirms deletion without returning details of the deleted membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                          |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------ |
| `orgId`        | integer |     ✅    | `123`   | The unique identifier of the organization from which the membership will be removed. |
| `membershipId` | integer |     ✅    | `789`   | The unique identifier of the membership to be deleted.                               |

***

### `Cal Delete Org Webhook`

Integration name: **CAL\_DELETE\_ORG\_WEBHOOK**

Permanently deletes an organization-level webhook by its ID. This action removes the specified webhook from the organization, stopping all future notifications to its subscriber URL. The deletion is irreversible - the webhook configuration cannot be recovered after deletion. Requirements: - User must be authenticated and have admin permissions in the organization - The webhook must exist within the specified organization - Use `retrieve_organization_webhooks_by_org_id` to list webhooks before deletion

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                      |
| ----------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------- |
| `orgId`     | integer |     ✅    | `12345`                                  | The unique identifier of the organization that owns the webhook. |
| `webhookId` | string  |     ✅    | `"d7ffbce3-4768-41be-b976-a004bbb5b0c4"` | The unique identifier of the webhook to be deleted.              |

***

### `Cal Delete Schedule By Id`

Integration name: **CAL\_DELETE\_SCHEDULE\_BY\_ID**

Permanently deletes a specific schedule using its unique identifier, which must correspond to an existing schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                          |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------- |
| `scheduleId` | integer |     ✅    | `"123"` | The unique identifier of the schedule to be deleted. |

***

### `Cal Delete Selected Calendars`

Integration name: **CAL\_DELETE\_SELECTED\_CALENDARS**

Removes a specified, currently selected calendar from the user's active list within the application, without deleting it from the external provider.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example             | Description                                                                                                                                               |
| -------------- | ------ | :------: | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `externalId`   | string |     ✅    | —                   | The unique identifier of the calendar as recognized by the external integration provider (e.g., a Google Calendar ID or an Outlook Calendar primary key). |
| `integration`  | string |     ✅    | `"google_calendar"` | Identifier for the calendar integration provider, specifying the type of the external calendar system.                                                    |
| `credentialId` | string |     ✅    | —                   | The unique identifier for the set of credentials used to authenticate and access the specified calendar integration for this user.                        |

***

### `Cal Delete Selected Slot`

Integration name: **CAL\_DELETE\_SELECTED\_SLOT**

Deletes a previously selected time slot from the Cal schedule using its `uid`; the slot must exist and this action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example             | Description                                                 |
| --------- | ------ | :------: | ------------------- | ----------------------------------------------------------- |
| `uid`     | string |     ✅    | `"slot_uid_1a2b3c"` | The unique identifier (UID) of the time slot to be deleted. |

***

### `Cal Delete Team By Id`

Integration name: **CAL\_DELETE\_TEAM\_BY\_ID**

Permanently and irreversibly deletes an existing team and all its associated data from the Cal system, using the team's unique `teamId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                      |
| --------- | ------- | :------: | ------- | ------------------------------------------------ |
| `teamId`  | integer |     ✅    | `"123"` | The unique identifier of the team to be deleted. |

***

### `Cal Delete Team Event Type In Organization`

Integration name: **CAL\_DELETE\_TEAM\_EVENT\_TYPE\_IN\_ORGANIZATION**

Permanently removes a team event type from an organization's scheduling configuration. Use when cleaning up unused event types or consolidating team scheduling options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                                     |
| ------------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------- |
| `orgId`       | integer |     ✅    | `184337`  | The unique identifier of the organization containing the team whose event type will be deleted. |
| `teamId`      | integer |     ✅    | `184336`  | The unique identifier of the team from which the event type will be deleted.                    |
| `eventTypeId` | integer |     ✅    | `4590968` | The unique identifier of the event type to be deleted from the specified team.                  |

***

### `Cal Delete Team From Organization`

Integration name: **CAL\_DELETE\_TEAM\_FROM\_ORGANIZATION**

Permanently and irreversibly deletes a specific team from a Cal.com organization. WARNING: This action cannot be undone and will remove all associated team data including memberships, event types, and bookings. Requires ORG\_ADMIN role in the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                    |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `orgId`   | integer |     ✅    | `12345` | The unique numeric identifier of the Cal.com organization containing the team. |
| `teamId`  | integer |     ✅    | `11111` | The unique numeric identifier of the team to be permanently deleted.           |

***

### `Cal Delete Team Memberships By Id`

Integration name: **CAL\_DELETE\_TEAM\_MEMBERSHIPS\_BY\_ID**

Irreversibly removes a user's team membership in the Cal application, revoking access to that specific team; the user's overall Cal account remains active.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                  |
| -------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------- |
| `teamId`       | integer |     ✅    | `"123"` | The unique identifier of the team from which the membership will be removed. |
| `membershipId` | integer |     ✅    | `"789"` | The unique identifier of the specific team membership record to be deleted.  |

***

### `Cal Delete User Attribute Option`

Integration name: **CAL\_DELETE\_USER\_ATTRIBUTE\_OPTION**

Unassigns a specific attribute option from a user within an organization. Use this action to remove an attribute option assignment (e.g., skill, role, department) from a specific user. This does NOT delete the attribute option itself from the organization - it only removes the association between the user and that option. The attribute option must currently be assigned to the user. To find assigned attribute options for a user, use the `Get all attribute options for a user` endpoint first. Requires organization admin access. The operation is reversible by re-assigning the attribute option to the user using the `Assign attribute option to user` endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example         | Description                                                                                  |
| ------------------- | ------- | :------: | --------------- | -------------------------------------------------------------------------------------------- |
| `orgId`             | integer |     ✅    | `1001`          | The unique numeric identifier of the organization.                                           |
| `userId`            | integer |     ✅    | `2090888`       | The unique numeric identifier of the user from whom the attribute option will be unassigned. |
| `attributeOptionId` | string  |     ✅    | `"clp1234abcd"` | The unique identifier of the attribute option to unassign from the user.                     |

***

### `Cal Delete User From Organization`

Integration name: **CAL\_DELETE\_USER\_FROM\_ORGANIZATION**

Permanently removes a user from a specific organization (user's system-wide account is unaffected), revoking their access rights therein; this action is irreversible via API and expects the user to be a current member.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                    |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `orgId`   | integer |     ✅    | —       | The unique identifier of the organization from which the user will be removed. |
| `userId`  | integer |     ✅    | —       | The unique identifier of the user to be removed from the organization.         |

***

### `Cal Delete User Schedule`

Integration name: **CAL\_DELETE\_USER\_SCHEDULE**

Permanently deletes a specific user's schedule, provided the organization, user, and schedule (identified by `orgId`, `userId`, and `scheduleId`) exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                       |
| ------------ | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `orgId`      | integer |     ✅    | `1001`  | Specifies the organization to which the user and schedule belong. |
| `userId`     | integer |     ✅    | `500`   | Specifies the user whose schedule is to be deleted.               |
| `scheduleId` | integer |     ✅    | `90012` | Specifies the schedule to be deleted.                             |

***

### `Cal Delete Webhook By Id`

Integration name: **CAL\_DELETE\_WEBHOOK\_BY\_ID**

Permanently deletes an existing webhook by its `webhookId`, stopping future notifications; this action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                          | Description                                         |
| ----------- | ------ | :------: | -------------------------------- | --------------------------------------------------- |
| `webhookId` | string |     ✅    | `"wh_clq0f3x7x000108ju3fx7g7z1"` | The unique identifier of the webhook to be deleted. |

***

### `Cal Delete Webhook For Event Type`

Integration name: **CAL\_DELETE\_WEBHOOK\_FOR\_EVENT\_TYPE**

Permanently deletes a specific webhook for an event type, halting its real-time notifications; this operation is irreversible and leaves the event type and other webhooks untouched.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example       | Description                                                                     |
| ------------- | ------- | :------: | ------------- | ------------------------------------------------------------------------------- |
| `webhookId`   | string  |     ✅    | `"wh_abc123"` | The unique identifier of the webhook configuration to be deleted.               |
| `eventTypeId` | integer |     ✅    | `"123"`       | The unique identifier of the event type from which the webhook will be deleted. |

***

### `Cal Delete Webhooks For Event Type`

Integration name: **CAL\_DELETE\_WEBHOOKS\_FOR\_EVENT\_TYPE**

Call this to irreversibly delete all webhooks for a specific `eventTypeId` if the event type exists; details of deleted webhooks are not returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------ |
| `eventTypeId` | integer |     ✅    | `"123"` | The unique identifier of the event type for which all associated webhooks will be deleted. |

***

### `Cal Disconnect Calendar Using Credential Id`

Integration name: **CAL\_DISCONNECT\_CALENDAR\_USING\_CREDENTIAL\_ID**

Disconnects a calendar integration by its provider name and credential ID, irreversibly revoking Cal's access; external calendar data remains unaffected.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example    | Description                                                                                                                                  |
| ---------- | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`       | integer |     ✅    | `"12345"`  | Unique numeric credential ID for the calendar integration to be disconnected.                                                                |
| `calendar` | string  |     ✅    | `"google"` | Identifier for the calendar to be disconnected, typically the provider name (e.g., `google`, `outlook`) or a service-specific calendar name. |

***

### `Cal Edit Attendee By Id`

Integration name: **CAL\_EDIT\_ATTENDEE\_BY\_ID**

Tool to edit an existing attendee in a Cal.com booking. Use when you need to update attendee details such as name, email, or timezone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                   | Description                                                          |
| ----------- | ------- | :------: | ------------------------- | -------------------------------------------------------------------- |
| `id`        | integer |     ✅    | `17601482`                | ID of the attendee to edit.                                          |
| `name`      | string  |          | `"Updated Test User V2"`  | The attendee's name.                                                 |
| `email`     | string  |          | `"test.user@example.com"` | The attendee's email address.                                        |
| `timeZone`  | string  |          | `"America/Chicago"`       | The attendee's timezone in IANA Time Zone Database format.           |
| `bookingId` | integer |     ✅    | `15100618`                | The booking ID associated with the attendee. This field is required. |

***

### `Cal Edit Availability By Id`

Integration name: **CAL\_EDIT\_AVAILABILITY\_BY\_ID**

Tool to edit an existing availability by ID on Cal.com. Use when you need to update the days, start time, end time, or schedule association of an existing availability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                      | Description                                                                                                                        |
| ------------ | ------- | :------: | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`         | integer |     ✅    | `41737395`                   | ID of the availability to edit                                                                                                     |
| `days`       | array   |          | `[1,2,3,4]`                  | Array of integers depicting weekdays (`0=Sunday`, `1=Monday`, `2=Tuesday`, `3=Wednesday`, `4=Thursday`, `5=Friday`, `6=Saturday`). |
| `endTime`    | string  |          | `"1970-01-01T16:00:00.000Z"` | End time of the availability in ISO 8601 datetime format.                                                                          |
| `startTime`  | string  |          | `"1970-01-01T10:00:00.000Z"` | Start time of the availability in ISO 8601 datetime format.                                                                        |
| `scheduleId` | integer |          | `123456`                     | ID of schedule this availability is associated with                                                                                |

***

### `Cal Edit Booking By Id`

Integration name: **CAL\_EDIT\_BOOKING\_BY\_ID**

Tool to edit an existing booking by its ID. Use when you need to update booking details such as title, description, status, or time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                   | Description                                          |
| ------------- | ------- | :------: | ----------------------------------------- | ---------------------------------------------------- |
| `id`          | integer |     ✅    | `15100670`                                | ID of the booking to edit                            |
| `end`         | string  |          | `"2024-06-15T11:00:00Z"`                  | End time of the event in ISO 8601 date-time format   |
| `start`       | string  |          | `"2024-06-15T10:00:00Z"`                  | Start time of the event in ISO 8601 date-time format |
| `title`       | string  |          | `"Updated Meeting Title"`                 | Booking event title                                  |
| `status`      | string  |          | `"ACCEPTED"`                              | Status values for a booking.                         |
| `description` | string  |          | `"This meeting has been updated via API"` | Description of the meeting                           |

***

### `Cal Edit Event Type By Id`

Integration name: **CAL\_EDIT\_EVENT\_TYPE\_BY\_ID**

Tool to edit an existing Cal.com event type by ID. Use when you need to update event type settings like title, description, duration, locations, or booking configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                         | Description                                                                               |
| ---------------------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------- |
| `id`                         | integer |     ✅    | `4518235`                       | ID of the eventType to edit                                                               |
| `slug`                       | string  |          | `"30min"`                       | Unique slug for the event type                                                            |
| `hosts`                      | array   |          | —                               | List of hosts for team event types                                                        |
| `price`                      | integer |          | —                               | Price of the event type booking                                                           |
| `title`                      | string  |          | `"30 Minute Meeting"`           | Title of the event type                                                                   |
| `hidden`                     | boolean |          | —                               | If the event type should be hidden from your public booking page                          |
| `length`                     | integer |          | `30`                            | Duration of the event type in minutes                                                     |
| `teamId`                     | integer |          | —                               | Team ID if the event type should belong to a team                                         |
| `currency`                   | string  |          | `"usd"`                         | Currency acronym. Eg- usd, eur, gbp, etc.                                                 |
| `metadata`                   | object  |          | —                               | Metadata relating to event type. Pass `{}` if empty.                                      |
| `position`                   | integer |          | —                               | The position of the event type on the public booking page                                 |
| `locations`                  | array   |          | —                               | A list of all available locations for the event type.                                     |
| `periodDays`                 | integer |          | —                               | Number of bookable days (Required if periodType is rolling)                               |
| `periodType`                 | string  |          | —                               | Period type for bookable event range.                                                     |
| `scheduleId`                 | integer |          | —                               | The ID of the schedule for this event type                                                |
| `description`                | string  |          | `"A quick 30 minute meeting"`   | Description of the event type                                                             |
| `slotInterval`               | integer |          | —                               | The intervals of available bookable slots in minutes                                      |
| `disableGuests`              | boolean |          | —                               | If the event type should disable adding guests to the booking                             |
| `periodEndDate`              | string  |          | `"2024-12-31T23:59:59Z"`        | End date of bookable period (Required if periodType is `range`)                           |
| `recurringEvent`             | object  |          | —                               | Recurring event configuration.                                                            |
| `schedulingType`             | string  |          | —                               | Scheduling type for team events.                                                          |
| `periodStartDate`            | string  |          | `"2024-01-01T00:00:00Z"`        | Start date of bookable period (Required if periodType is `range`)                         |
| `afterEventBuffer`           | integer |          | —                               | Number of minutes of buffer time after a Cal Event                                        |
| `seatsPerTimeSlot`           | integer |          | —                               | The number of seats for each time slot                                                    |
| `beforeEventBuffer`          | integer |          | —                               | Number of minutes of buffer time before a Cal Event                                       |
| `hideCalendarNotes`          | boolean |          | —                               | If the calendar notes should be hidden from the booking                                   |
| `seatsShowAttendees`         | boolean |          | —                               | Share attendee information in seats                                                       |
| `successRedirectUrl`         | string  |          | `"https://example.com/success"` | A valid URL where the booker will redirect to, once the booking is completed successfully |
| `minimumBookingNotice`       | integer |          | —                               | Minimum time in minutes before the event is bookable                                      |
| `requiresConfirmation`       | boolean |          | —                               | If the event type should require your confirmation before completing the booking          |
| `periodCountCalendarDays`    | boolean |          | —                               | If calendar days should be counted for period days                                        |
| `seatsShowAvailabilityCount` | boolean |          | —                               | Show the number of available seats                                                        |

***

### `Cal Edit Selected Calendar By Id`

Integration name: **CAL\_EDIT\_SELECTED\_CALENDAR\_BY\_ID**

Tool to edit a selected calendar by its composite ID in Cal.com. Use when you need to update an existing calendar integration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                       | Description                                                 |
| ------------------- | ------- | :------: | ----------------------------- | ----------------------------------------------------------- |
| `user_id`           | integer |     ✅    | `2090888`                     | User ID of the selected calendar to edit.                   |
| `external_id`       | string  |     ✅    | `"partnerships@composio.dev"` | External calendar identifier from the integration provider. |
| `integration`       | string  |     ✅    | `"google_calendar"`           | Integration provider of the calendar.                       |
| `new_external_id`   | string  |          | `"new_calendar@example.com"`  | New external calendar identifier.                           |
| `new_integration`   | string  |          | `"google_calendar"`           | New integration provider to set for this calendar.          |
| `new_credential_id` | integer |          | `101`                         | New credential ID to associate with this calendar.          |

***

### `Cal Fetch All Bookings`

Integration name: **CAL\_FETCH\_ALL\_BOOKINGS**

Fetches a list of bookings, optionally filtered by status, attendee, date range, or by event/team IDs (which must belong to/include the authenticated user respectively), with support for pagination and sorting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                            |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------- |
| `skip`          | integer |          | `"0"`                    | Number of bookings to skip from the beginning of results.              |
| `take`          | integer |          | `"10"`                   | Maximum number of bookings to return.                                  |
| `status`        | array   |          | `["upcoming","past"]`    | Filter bookings by status.                                             |
| `teamId`        | integer |          | `123`                    | Filter bookings by a single team ID of which the user is a member.     |
| `sortEnd`       | string  |          | `"asc"`                  | Sort results by booking end time.                                      |
| `teamsIds`      | string  |          | `"123,456"`              | Filter bookings by one or more team IDs of which the user is a member. |
| `beforeEnd`     | string  |          | `"2024-12-31"`           | Filter bookings ending before this ISO 8601 date or date-time string.  |
| `sortStart`     | string  |          | `"asc"`                  | Sort results by booking start time.                                    |
| `afterStart`    | string  |          | `"2024-01-01"`           | Filter bookings starting after this ISO 8601 date or date-time string. |
| `eventTypeId`   | integer |          | `123`                    | Filter bookings by a single event type ID belonging to the user.       |
| `sortCreated`   | string  |          | `"asc"`                  | Sort results by booking creation time.                                 |
| `attendeeName`  | string  |          | `"John Doe"`             | Filter bookings by the name of an attendee.                            |
| `eventTypeIds`  | string  |          | `"123,456"`              | Filter bookings by one or more event type IDs belonging to the user.   |
| `attendeeEmail` | string  |          | `"john.doe@example.com"` | Filter bookings by the exact email address of an attendee.             |

***

### `Cal Fetch Event Type Details`

Integration name: **CAL\_FETCH\_EVENT\_TYPE\_DETAILS**

Fetches all configuration settings and characteristics for a single event type (identified by orgId, teamId, and eventTypeId), which must exist and be accessible; this read-only action cannot list, create, or modify event types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                                            |
| ------------- | ------- | :------: | --------- | ------------------------------------------------------------------------------------------------------ |
| `orgId`       | integer |     ✅    | `"12345"` | The unique identifier of the organization to which the event type belongs.                             |
| `teamId`      | integer |     ✅    | `"67890"` | The unique identifier of the team, within the specified organization, to which the event type belongs. |
| `eventTypeId` | integer |     ✅    | `"11223"` | The unique identifier of the specific event type for which details are to be fetched.                  |

***

### `Cal Fetch Organization Attribute By Id`

Integration name: **CAL\_FETCH\_ORGANIZATION\_ATTRIBUTE\_BY\_ID**

Retrieves a specific attribute of an organization, useful for fetching a single data point instead of the entire organization record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                          |
| ------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `orgId`       | integer |     ✅    | `"12345"`                                | The unique numerical identifier of the organization. |
| `attributeId` | string  |     ✅    | `"1eed080a-36d4-4e51-bdee-b7debe2786f4"` | The UUID of the custom attribute to retrieve.        |

***

### `Cal Fetch Provider Access Token`

Integration name: **CAL\_FETCH\_PROVIDER\_ACCESS\_TOKEN**

Fetches an OAuth access token for the specified `clientId` to authenticate API calls; this action only retrieves the token, not managing scheduling or calendar events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                  | Description                                                                             |
| ---------- | ------ | :------: | ------------------------ | --------------------------------------------------------------------------------------- |
| `clientId` | string |     ✅    | `"cal_oauth_client_123"` | The unique identifier of the OAuth client application registered with Cal.com Platform. |

***

### `Cal Fetch Schedule By Id`

Integration name: **CAL\_FETCH\_SCHEDULE\_BY\_ID**

Fetches comprehensive details for a specific, existing schedule using its `scheduleId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                    |
| ------------ | ------- | :------: | ------- | ---------------------------------------------- |
| `scheduleId` | integer |     ✅    | `12345` | Unique identifier of the schedule to retrieve. |

***

### `Cal Fetch User Schedule By Org Id`

Integration name: **CAL\_FETCH\_USER\_SCHEDULE\_BY\_ORG\_ID**

Retrieves a specific user's schedule within an organization, returning availability windows, timezone settings, and date-specific overrides. Requires organization-level access permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                          |
| ------------ | ------- | :------: | --------- | -------------------------------------------------------------------- |
| `orgId`      | integer |     ✅    | `12345`   | The unique identifier of the organization.                           |
| `userId`     | integer |     ✅    | `2090888` | The unique identifier of the user whose schedule is being retrieved. |
| `scheduleId` | integer |     ✅    | `1199397` | The unique identifier of the specific schedule to retrieve.          |

***

### `Cal Fetch Webhook By Event Type Id`

Integration name: **CAL\_FETCH\_WEBHOOK\_BY\_EVENT\_TYPE\_ID**

Retrieves details for a single, specific webhook using its `webhookId` and associated `eventTypeId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example       | Description                           |
| ------------- | ------- | :------: | ------------- | ------------------------------------- |
| `webhookId`   | string  |     ✅    | `"wh_abc123"` | Unique identifier for the webhook.    |
| `eventTypeId` | integer |     ✅    | `"123"`       | Unique identifier for the event type. |

***

### `Cal Force Refresh User Oauth Client`

Integration name: **CAL\_FORCE\_REFRESH\_USER\_OAUTH\_CLIENT**

Forces an immediate refresh of OAuth tokens for a Platform managed user. This is a Cal.com Platform API endpoint (deprecated as of December 2025 but still functional for existing customers). Use this endpoint when you've lost a managed user's access or refresh tokens and need to obtain new ones. Prerequisites: - A registered OAuth client application with Cal.com (provides clientId and x\_cal\_secret\_key) - The managed user must exist and be associated with your OAuth client - Valid OAuth client credentials (clientId and secret key) Token Validity: - Access tokens are valid for 60 minutes - Refresh tokens are valid for 1 year Important: Store the returned tokens securely in your database (e.g., as calAccessToken and calRefreshToken fields).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                  | Description                                               |
| ------------------ | ------- | :------: | ------------------------ | --------------------------------------------------------- |
| `userId`           | integer |     ✅    | `"101"`                  | Unique numerical identifier of the managed user.          |
| `clientId`         | string  |     ✅    | `"web_app_client_id"`    | Unique string identifier of the OAuth client application. |
| `x_cal_secret_key` | string  |     ✅    | `"cal_secret_abc123xyz"` | The OAuth client secret key, required for authentication. |

***

### `Cal Get All Timezones`

Integration name: **CAL\_GET\_ALL\_TIMEZONES**

Retrieves all supported time zone identifiers (e.g., `America/New_York`, `Europe/London`) and their associated metadata, excluding specific DST changes or precise UTC offset details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Available Slots Info`

Integration name: **CAL\_GET\_AVAILABLE\_SLOTS\_INFO**

Retrieves available time slots for scheduling by considering existing bookings and availability, based on criteria like a specified time range and event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                  |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------ |
| `endTime`       | string  |     ✅    | `"2024-07-01T17:00:00Z"` | End date and time in UTC (ISO 8601 format) until which to fetch available slots. Must be after `startTime`.  |
| `orgSlug`       | string  |          | `"acme-corp"`            | The slug identifying the organization to which the event type or users belong.                               |
| `duration`      | integer |          | `"15"`                   | The desired duration of the time slots in minutes.                                                           |
| `timeZone`      | string  |          | `"America/New_York"`     | The IANA time zone identifier in which the available slots should be calculated and returned.                |
| `startTime`     | string  |     ✅    | `"2024-07-01T09:00:00Z"` | Start date and time in UTC (ISO 8601 format) from which to fetch available slots.                            |
| `slotFormat`    | string  |          | `"range"`                | Determines the format of the returned slot times.                                                            |
| `eventTypeId`   | integer |     ✅    | `"123"`                  | Unique numeric identifier for the event type.                                                                |
| `usernameList`  | array   |          | `"johndoe"`              | Required for dynamic or collective event types to specify the users whose availability should be considered. |
| `eventTypeSlug` | string  |          | `"30-min-meeting"`       | The URL-friendly string identifier (slug) of the event type.                                                 |
| `rescheduleUid` | string  |          | `"bk_1abc2def3ghi"`      | The unique identifier of an existing booking that is being rescheduled.                                      |

***

### `Cal Get Booking Reference By Id`

Integration name: **CAL\_GET\_BOOKING\_REFERENCE\_BY\_ID**

Tool to find a specific booking reference by its ID. Use when you need to retrieve details about a single booking reference that links a booking to an external platform or calendar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                              |
| --------- | ------- | :------: | ---------- | ---------------------------------------- |
| `id`      | integer |     ✅    | `23461188` | ID of the booking reference to retrieve. |

***

### `Cal Get Booking References`

Integration name: **CAL\_GET\_BOOKING\_REFERENCES**

Retrieves external references for a specific booking within an organization's team. Use when you need to get calendar or video platform integration details for a booking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                    | Description                                                            |
| ------------ | ------- | :------: | -------------------------- | ---------------------------------------------------------------------- |
| `type`       | string  |          | `"google_calendar"`        | Type of booking reference to filter by.                                |
| `orgId`      | integer |     ✅    | `184337`                   | The ID of the organization that owns the booking.                      |
| `teamId`     | integer |     ✅    | `184345`                   | The ID of the team within the organization that owns the booking.      |
| `bookingUid` | string  |     ✅    | `"rAXCQWMrV8pNjQTVxXeNVb"` | The unique identifier (UID) of the booking to retrieve references for. |

***

### `Cal Get Conference Oauth Authorization Url`

Integration name: **CAL\_GET\_CONFERENCE\_OAUTH\_AUTHORIZATION\_URL**

Generates an OAuth 2.0 authorization URL for a supported conferencing `app` to initiate or refresh its integration with Cal.com.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example         | Description                                                                                             |
| ----------------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------- |
| `app`             | string |     ✅    | `"google_meet"` | The identifier of the conferencing application (e.g., `zoom`, `google_meet`).                           |
| `returnTo`        | string |     ✅    | —               | The URL to which the user will be redirected after successful OAuth authorization.                      |
| `onErrorReturnTo` | string |     ✅    | —               | The URL to which the user will be redirected if an error occurs during the OAuth authorization process. |

***

### `Cal Get Default Schedule Details`

Integration name: **CAL\_GET\_DEFAULT\_SCHEDULE\_DETAILS**

Retrieves the Cal system's global default schedule configuration, not custom or user-specific ones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Destination Calendars`

Integration name: **CAL\_GET\_DESTINATION\_CALENDARS**

Tool to retrieve all destination calendars configured for the authenticated user. Use when you need to find where new bookings will be created.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Event Type By Team Id`

Integration name: **CAL\_GET\_EVENT\_TYPE\_BY\_TEAM\_ID**

Retrieves a specific event type by its ID, requiring that the event type is associated with the given team ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                            |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------ |
| `teamId`      | integer |     ✅    | `"123"` | The unique identifier for the team.                                                                    |
| `eventTypeId` | integer |     ✅    | `"789"` | The unique identifier for the event type. Must be an event type associated with the provided `teamId`. |

***

### `Cal Get Event Type Private Links`

Integration name: **CAL\_GET\_EVENT\_TYPE\_PRIVATE\_LINKS**

Retrieves all private booking links for a specific event type. Private links allow sharing event booking URLs with restricted access, either time-limited or usage-limited.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                          |
| ------------- | ------- | :------: | --------- | ------------------------------------------------------------------------------------ |
| `eventTypeId` | integer |     ✅    | `4518236` | The unique identifier of the event type for which private links are to be retrieved. |

***

### `Cal Get Google Calendar Oauth Authentication Url`

Integration name: **CAL\_GET\_GOOGLE\_CALENDAR\_OAUTH\_AUTHENTICATION\_URL**

Generates the initial Google Calendar OAuth 2.0 authorization URL for user redirection to begin the authentication and authorization process.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Oauth Clients User`

Integration name: **CAL\_GET\_OAUTH\_CLIENTS\_USER**

Retrieves all managed users associated with a Platform OAuth client. This endpoint is part of Cal.com's Platform API for managing users created through OAuth client credentials. Requires a valid Platform OAuth client ID and secret key, which are obtained when creating an OAuth client at <https://app.cal.com/settings/platform/oauth-clients>. Use this to: - List all users managed under your OAuth client - Audit user access and permissions - Retrieve user profile details (email, timezone, locale, avatar, etc.) Authentication: Requires both Bearer token (from auth metadata) and `x-cal-secret-key` header.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                                       |
| ------------------ | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------- |
| `limit`            | integer |          | —                                        | The maximum number of user records to return.                                     |
| `clientId`         | string  |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | The unique identifier of the OAuth client for which to retrieve associated users. |
| `x_cal_secret_key` | string  |          | `"cal_secret_abc123xyz"`                 | The OAuth client secret key for authentication.                                   |

***

### `Cal Get Organization Attribute Assigned Options`

Integration name: **CAL\_GET\_ORGANIZATION\_ATTRIBUTE\_ASSIGNED\_OPTIONS**

Retrieves all assigned attribute options for a specific attribute within an organization. This action returns the list of attribute options that have been assigned to users, along with which users have been assigned each option.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                   | Description                                                                              |
| ------------------- | ------- | :------: | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `skip`              | integer |          | `0`                                                                       | Number of responses to skip from the beginning (for pagination).                         |
| `take`              | integer |          | `10`                                                                      | Maximum number of responses to return (for pagination).                                  |
| `orgId`             | integer |     ✅    | `184337`                                                                  | The unique identifier of the organization.                                               |
| `teamIds`           | string  |          | `"100,200"`                                                               | Filter by team IDs.                                                                      |
| `attributeId`       | string  |     ✅    | `"0641b76e-59b5-4c6e-bfaf-a838d2cf6a59"`                                  | The unique UUID identifier of the attribute whose assigned options you want to retrieve. |
| `assignedOptionIds` | string  |          | `"aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee"` | Filter by assigned attribute option IDs.                                                 |

***

### `Cal Get Organization Attribute Assigned Options By Slug`

Integration name: **CAL\_GET\_ORGANIZATION\_ATTRIBUTE\_ASSIGNED\_OPTIONS\_BY\_SLUG**

Tool to retrieve all assigned attribute options for a specific attribute by its slug within an organization. Use when you need to see which attribute options have been assigned to users, filtered by the attribute's slug identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                       | Description                                        |
| ------------------- | ------- | :------: | ----------------------------------------------------------------------------- | -------------------------------------------------- |
| `skip`              | integer |          | `0`                                                                           | Number of responses to skip for pagination.        |
| `take`              | integer |          | `10`                                                                          | Number of responses to take for pagination.        |
| `orgId`             | integer |     ✅    | `184337`                                                                      | The unique identifier of the organization.         |
| `teamIds`           | array   |          | `[100,200]`                                                                   | Filter by team IDs.                                |
| `attributeSlug`     | string  |     ✅    | `"department"`                                                                | The URL-friendly slug identifier of the attribute. |
| `assignedOptionIds` | array   |          | `["aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee","aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee"]` | Filter by assigned attribute option IDs.           |

***

### `Cal Get Organization Id`

Integration name: **CAL\_GET\_ORGANIZATION\_ID**

Retrieves the organization ID associated with the currently authenticated user from the Cal.com `/v2/me` endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Organization Schedules`

Integration name: **CAL\_GET\_ORGANIZATION\_SCHEDULES**

Retrieves availability schedules for an organization. Returns schedules that define when users are available for bookings, including working hours, time zones, and date-specific overrides. These are not individual events or appointments, but rather the availability templates that determine when bookings can be made.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------- |
| `skip`    | integer |          | `0`     | The number of schedules to skip before returning results.                  |
| `take`    | integer |          | `10`    | The maximum number of schedules to return per page.                        |
| `orgId`   | integer |     ✅    | `123`   | The unique identifier of the organization for which to retrieve schedules. |

***

### `Cal Get Organization Teams Event Types`

Integration name: **CAL\_GET\_ORGANIZATION\_TEAMS\_EVENT\_TYPES**

Retrieves event types, including names, durations, and custom settings for team scheduling, for all teams within an existing organization specified by `orgId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                       |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------- |
| `skip`          | integer |          | `0`     | The number of event types to skip before starting to return results.              |
| `take`          | integer |          | `10`    | The maximum number of event types to return.                                      |
| `orgId`         | integer |     ✅    | —       | The unique identifier of the organization for which to retrieve team event types. |
| `sortCreatedAt` | string  |          | `"asc"` | Order results by creation date.                                                   |

***

### `Cal Get Organization Team Workflows`

Integration name: **CAL\_GET\_ORGANIZATION\_TEAM\_WORKFLOWS**

Retrieves workflows configured for a specific team within an organization. Returns workflow configurations including triggers, steps, and activation settings. Use when you need to list or inspect workflow automations for a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                        |
| --------- | ------- | :------: | -------- | ------------------------------------------------------------------ |
| `skip`    | integer |          | `0`      | Number of workflows to skip before returning results.              |
| `take`    | integer |          | `25`     | Maximum number of workflows to return per page.                    |
| `orgId`   | integer |     ✅    | `184337` | The unique numeric identifier of the organization.                 |
| `teamId`  | integer |     ✅    | `184336` | The unique numeric identifier of the team within the organization. |

***

### `Cal Get Organization User Schedules`

Integration name: **CAL\_GET\_ORGANIZATION\_USER\_SCHEDULES**

Retrieves all availability schedules configured for a specific user within an organization. Returns detailed schedule information including time slots, timezones, and overrides. Does not include booked events or appointments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example   | Description                                                             |
| --------- | ------- | :------: | --------- | ----------------------------------------------------------------------- |
| `orgId`   | integer |     ✅    | `"12345"` | The unique identifier for the organization.                             |
| `userId`  | integer |     ✅    | `"9876"`  | The unique identifier for the user whose schedules are to be retrieved. |

***

### `Cal Get Private Links`

Integration name: **CAL\_GET\_PRIVATE\_LINKS**

Get all private links for a team event type. Use this to retrieve both time-based (with expiration) and usage-based (with usage limits) private links for scheduling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example   | Description                               |
| --------------- | ------- | :------: | --------- | ----------------------------------------- |
| `org_id`        | integer |     ✅    | `184337`  | The unique identifier of the organization |
| `team_id`       | integer |     ✅    | `184336`  | The unique identifier of the team         |
| `event_type_id` | integer |     ✅    | `4591148` | The unique identifier of the event type   |

***

### `Cal Get Schedule For User In Team`

Integration name: **CAL\_GET\_SCHEDULE\_FOR\_USER\_IN\_TEAM**

Retrieves all availability schedules for a specific user within a team and organization. Returns schedule configurations including working hours, time zones, weekly availability patterns, default schedule designation, and date-specific overrides. Use this to understand when a team member is available for bookings. Requires valid userId (from team memberships), orgId (from organization list), and teamId (from teams list).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `orgId`   | integer |     ✅    | `67890` | Unique identifier for the organization.                              |
| `teamId`  | integer |     ✅    | `11223` | Unique identifier for the team within the organization.              |
| `userId`  | integer |     ✅    | `12345` | Unique identifier for the user whose schedules you want to retrieve. |

***

### `Cal Get Selected Calendar By Id`

Integration name: **CAL\_GET\_SELECTED\_CALENDAR\_BY\_ID**

Tool to retrieve a selected calendar by its compound ID (`userId_integration_externalId`). Use when you need to fetch details of a specific calendar that has been selected for synchronization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                       | Description                                               |
| ------------- | ------- | :------: | ----------------------------- | --------------------------------------------------------- |
| `user_id`     | integer |     ✅    | `2090888`                     | User ID of the selected calendar to retrieve              |
| `external_id` | string  |     ✅    | `"partnerships@composio.dev"` | External ID of the calendar from the integration provider |
| `integration` | string  |     ✅    | `"google_calendar"`           | Integration provider of the selected calendar             |

***

### `Cal Get Stripe Connect Info`

Integration name: **CAL\_GET\_STRIPE\_CONNECT\_INFO**

Retrieves Stripe Connect account details (ID, charges/payouts status, verification, settings) for the user's linked Cal.com account; response may be empty or indicate no integration if no account is linked.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Stripe Connect Url`

Integration name: **CAL\_GET\_STRIPE\_CONNECT\_URL**

Tool to get Stripe Connect authorization URL for a team within an organization. Use when you need to obtain a URL that allows team members to connect their Stripe account for payment processing on Cal.com.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                         | Description                                      |
| ----------------- | ------- | :------: | ------------------------------- | ------------------------------------------------ |
| `orgId`           | integer |     ✅    | `184337`                        | Organization identifier.                         |
| `teamId`          | integer |     ✅    | `184336`                        | Team identifier.                                 |
| `returnTo`        | string  |     ✅    | `"https://example.com/success"` | Redirect destination upon successful connection. |
| `onErrorReturnTo` | string  |     ✅    | `"https://example.com/error"`   | Redirect destination if connection fails.        |

***

### `Cal Get Team Bookings`

Integration name: **CAL\_GET\_TEAM\_BOOKINGS**

Retrieves all bookings for a specified team, optionally filtered by status, attendee details, date ranges, or event type IDs, with support for pagination and sorting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                      | Description                                                                    |
| --------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------ |
| `skip`          | integer |          | `0`                          | Number of bookings to skip from the beginning of results.                      |
| `take`          | integer |          | `10`                         | Maximum number of bookings to return.                                          |
| `status`        | array   |          | `["upcoming","past"]`        | Filter bookings by status.                                                     |
| `teamId`        | integer |     ✅    | `184346`                     | The unique numeric identifier of the team whose bookings you want to retrieve. |
| `sortEnd`       | string  |          | `"asc"`                      | Sort order for end time.                                                       |
| `beforeEnd`     | string  |          | `"2025-03-07T11:00:00.000Z"` | Filter bookings ending before this ISO 8601 date or date-time string.          |
| `sortStart`     | string  |          | `"asc"`                      | Sort order for start time.                                                     |
| `afterStart`    | string  |          | `"2025-03-07T10:00:00.000Z"` | Filter bookings starting after this ISO 8601 date or date-time string.         |
| `bookingUid`    | string  |          | `"2NtaeaVcKfpmSZ4CthFdfk"`   | Filter bookings by the unique booking UID.                                     |
| `eventTypeId`   | string  |          | `"100"`                      | Filter bookings by a single event type ID belonging to the team.               |
| `sortCreated`   | string  |          | `"asc"`                      | Sort order for creation time.                                                  |
| `attendeeName`  | string  |          | `"John Doe"`                 | Filter bookings by the name of an attendee.                                    |
| `eventTypeIds`  | string  |          | `"100,200"`                  | Filter bookings by one or more event type IDs belonging to the team.           |
| `attendeeEmail` | string  |          | `"john.doe@example.com"`     | Filter bookings by the exact email address of an attendee.                     |

***

### `Cal Get Team Default Conferencing App`

Integration name: **CAL\_GET\_TEAM\_DEFAULT\_CONFERENCING\_APP**

Retrieves the default conferencing application configured for a specific team within an organization. Use this to check which video platform (e.g., Zoom, Google Meet) is set as the team's default for scheduling meetings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                                            |
| --------- | ------- | :------: | -------- | -------------------------------------------------------------------------------------- |
| `orgId`   | integer |     ✅    | `184337` | The unique identifier of the organization to which the team belongs.                   |
| `teamId`  | integer |     ✅    | `184336` | The unique identifier of the team for which the default conferencing app is retrieved. |

***

### `Cal Get Team Details By Org Id And Team Id`

Integration name: **CAL\_GET\_TEAM\_DETAILS\_BY\_ORG\_ID\_AND\_TEAM\_ID**

Retrieves comprehensive details for a specific team within an organization, including team metadata, configuration settings, branding options, and timezone/week preferences. Use this to get team information like name, slug, bio, timezone, branding colors, and visibility settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                              |
| --------- | ------- | :------: | -------- | ------------------------------------------------------------------------ |
| `orgId`   | integer |     ✅    | `"1001"` | The unique identifier of the organization to which the team belongs.     |
| `teamId`  | integer |     ✅    | `"505"`  | The unique identifier of the team for which details are to be retrieved. |

***

### `Cal Get Team Event Type Webhook`

Integration name: **CAL\_GET\_TEAM\_EVENT\_TYPE\_WEBHOOK**

Retrieves details for a specific webhook configured on a team event type. Use when you need to inspect webhook configuration, verify settings, or troubleshoot webhook deliveries for team-managed event types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                          |
| ------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `teamId`      | integer |     ✅    | `184336`                                 | The unique identifier of the team that owns the event type.          |
| `webhookId`   | string  |     ✅    | `"ceb49b63-e528-4e81-91f3-c6c266394664"` | The unique identifier (UUID format) of the webhook to retrieve.      |
| `eventTypeId` | integer |     ✅    | `4591148`                                | The unique identifier of the event type associated with the webhook. |

***

### `Cal Get Team Event Type Webhooks`

Integration name: **CAL\_GET\_TEAM\_EVENT\_TYPE\_WEBHOOKS**

Retrieves all webhooks configured for a specific team event type. Use this to audit webhook configurations or troubleshoot webhook delivery issues.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                     |
| ------------- | ------- | :------: | --------- | ------------------------------------------------------------------------------- |
| `skip`        | integer |          | `0`       | Number of webhook records to skip for pagination.                               |
| `take`        | integer |          | `25`      | Maximum number of webhook records to return.                                    |
| `teamId`      | integer |     ✅    | `184336`  | The unique numerical identifier of the team.                                    |
| `eventTypeId` | integer |     ✅    | `4591148` | The unique identifier of the event type for which webhooks are to be retrieved. |

***

### `Cal Get Team Information By Team Id`

Integration name: **CAL\_GET\_TEAM\_INFORMATION\_BY\_TEAM\_ID**

Retrieves detailed information about a specific Cal.com team by its ID. Returns team configuration including name, slug, branding (logo, colors, theme), timezone settings, and privacy options. Requires the authenticated user to be a member of the team. Use `get_teams_list` to find available team IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                |
| --------- | ------- | :------: | ------- | ------------------------------------------ |
| `teamId`  | integer |     ✅    | `12345` | The unique numeric identifier of the team. |

***

### `Cal Get Team Routing Forms`

Integration name: **CAL\_GET\_TEAM\_ROUTING\_FORMS**

Retrieves routing forms for a specific team within an organization. Routing forms are used to collect information from potential bookers and route them to appropriate event types or team members based on their responses. Use this to fetch routing form configurations, fields, and routing logic for a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                  | Description                                                        |
| -------------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------ |
| `skip`               | integer |          | `0`                      | Number of routing forms to skip for pagination (offset).           |
| `take`               | integer |          | `10`                     | Maximum number of routing forms to return per page.                |
| `orgId`              | integer |     ✅    | `184337`                 | The unique identifier of the organization containing the team.     |
| `teamId`             | integer |     ✅    | `184346`                 | The unique identifier of the team whose routing forms to retrieve. |
| `sortCreatedAt`      | string  |          | —                        | Enum for sort order values.                                        |
| `sortUpdatedAt`      | string  |          | —                        | Enum for sort order values.                                        |
| `afterCreatedAt`     | string  |          | `"2024-01-01T00:00:00Z"` | Filter to include only routing forms created after this date.      |
| `afterUpdatedAt`     | string  |          | `"2024-01-01T00:00:00Z"` | Filter to include only routing forms updated after this date.      |
| `beforeCreatedAt`    | string  |          | `"2024-12-31T23:59:59Z"` | Filter to include only routing forms created before this date.     |
| `beforeUpdatedAt`    | string  |          | `"2024-12-31T23:59:59Z"` | Filter to include only routing forms updated before this date.     |
| `routedToBookingUid` | string  |          | `"abc123xyz"`            | Filter routing forms by responses routed to a specific booking.    |

***

### `Cal Get Team Schedules`

Integration name: **CAL\_GET\_TEAM\_SCHEDULES**

Retrieves availability schedules for all members of a specific team within an organization. Returns schedules that define when team members are available for bookings, including working hours, time zones, and date-specific overrides.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example  | Description                                                |
| ------------- | ------- | :------: | -------- | ---------------------------------------------------------- |
| `skip`        | integer |          | `0`      | Number of schedules to skip before returning results.      |
| `take`        | integer |          | `25`     | Maximum number of schedules to return.                     |
| `orgId`       | integer |     ✅    | `184337` | The unique identifier of the organization.                 |
| `teamId`      | integer |     ✅    | `184346` | The unique identifier of the team within the organization. |
| `eventTypeId` | integer |          | `1`      | Filter schedules by a specific event type ID.              |

***

### `Cal Get Teams List`

Integration name: **CAL\_GET\_TEAMS\_LIST**

Retrieves all teams the user belongs to, including their names and members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Get Verified Phone Numbers`

Integration name: **CAL\_GET\_VERIFIED\_PHONE\_NUMBERS**

Retrieves a paginated list of verified phone numbers for a specific organization team. Use when you need to get phone numbers that have been verified and associated with a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                        |
| --------- | ------- | :------: | -------- | ------------------------------------------------------------------ |
| `skip`    | integer |          | `0`      | Number of items to skip for pagination.                            |
| `take`    | integer |          | `25`     | Maximum number of items to return.                                 |
| `orgId`   | integer |     ✅    | `184337` | The unique numeric identifier of the organization.                 |
| `teamId`  | integer |     ✅    | `184336` | The unique numeric identifier of the team within the organization. |

***

### `Cal Get Webhook By Id`

Integration name: **CAL\_GET\_WEBHOOK\_BY\_ID**

Retrieves details for an existing and accessible webhook by its ID; this is a read-only operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                       |
| ----------- | ------ | :------: | ------- | ------------------------------------------------- |
| `webhookId` | string |     ✅    | —       | The unique identifier of the webhook to retrieve. |

***

### `Cal Handle Conferencing Oauth Callback For App`

Integration name: **CAL\_HANDLE\_CONFERENCING\_OAUTH\_CALLBACK\_FOR\_APP**

Processes an OAuth 2.0 callback for a conferencing `app`, exchanging the `code` and `state` for access credentials; ensure an OAuth flow was previously initiated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                     | Description                                                            |
| --------- | ------ | :------: | --------------------------- | ---------------------------------------------------------------------- |
| `app`     | string |     ✅    | `"zoom"`                    | Unique identifier for the conferencing application.                    |
| `code`    | string |     ✅    | `"authCodeFromProvider123"` | Authorization code from the conferencing application's OAuth provider. |
| `state`   | string |     ✅    | `"xyz123stateValue"`        | OAuth state parameter for CSRF protection.                             |

***

### `Cal List Attendees`

Integration name: **CAL\_LIST\_ATTENDEES**

Tool to retrieve all attendees from Cal.com. Use when you need to get a complete list of all attendees across all bookings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal List Booking References`

Integration name: **CAL\_LIST\_BOOKING\_REFERENCES**

Fetches one page of booking references in Cal.com. The Cal.com v2 API does not expose `/booking-references` for Bearer-token auth, so this action paginates the v2 `/bookings` endpoint and extracts each booking's `references` array. ONE Cal.com API call is made per invocation; pagination is caller-driven via the `cursor` parameter and the `next_cursor` field in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                       |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `take`    | integer |          | `100`   | Number of bookings to fetch from the Cal.com v2 `/bookings` endpoint in this single call (1-100).                                                 |
| `cursor`  | —       |          | `12345` | Cal.com keyset cursor returned as `next_cursor` from a previous response. Omit on the first call; pass the value verbatim (as either int or str). |

***

### `Cal List Event Types`

Integration name: **CAL\_LIST\_EVENT\_TYPES**

Retrieves Cal event types, filterable by `username` (required if `eventSlug` is provided), multiple `usernames`, or organization details (`orgSlug` or `orgId`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                                                              |
| ----------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------------- |
| `orgId`     | integer |          | `"101"`              | The unique identifier of the user's organization.                                                        |
| `orgSlug`   | string  |          | `"acme-innovations"` | The slug of the user's organization.                                                                     |
| `username`  | string  |          | `"johndoe"`          | The username of the user whose event types are to be retrieved.                                          |
| `eventSlug` | string  |          | `"30min-meeting"`    | The slug of a specific event type to retrieve.                                                           |
| `usernames` | string  |          | `"alice,bob"`        | A comma-separated string of usernames to retrieve dynamic event types for multiple users simultaneously. |

***

### `Cal List Organization Memberships`

Integration name: **CAL\_LIST\_ORGANIZATION\_MEMBERSHIPS**

Retrieves all memberships for a given organization, including user details, roles, status, and membership dates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                              |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------ |
| `skip`    | integer |          | `"0"`   | The number of initial membership records to skip.                        |
| `take`    | integer |          | `"10"`  | The maximum number of membership records to return.                      |
| `orgId`   | integer |     ✅    | —       | The unique identifier of the organization for which to list memberships. |

***

### `Cal List Team Event Types By Org And Team Id`

Integration name: **CAL\_LIST\_TEAM\_EVENT\_TYPES\_BY\_ORG\_AND\_TEAM\_ID**

Retrieves all event types for a specific team within an organization, optionally filtering by a specific event slug.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example               | Description                                                                   |
| ----------- | ------- | :------: | --------------------- | ----------------------------------------------------------------------------- |
| `orgId`     | integer |     ✅    | `12345`               | The unique numeric identifier of the organization.                            |
| `teamId`    | integer |     ✅    | `9876`                | The unique numeric identifier of the team whose event types are to be listed. |
| `eventSlug` | string  |          | `"15-minute-meeting"` | Optional slug of a specific team event type.                                  |

***

### `Cal Mark Booking Absent For Uid`

Integration name: **CAL\_MARK\_BOOKING\_ABSENT\_FOR\_UID**

Marks the host and/or specified attendees as absent for an existing booking, typically used after a scheduled event to record no-shows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                | Description                              |
| ------------ | ------- | :------: | ---------------------- | ---------------------------------------- |
| `host`       | boolean |          | —                      | If true, marks the host as absent.       |
| `attendees`  | array   |          | —                      | List of attendees to mark as absent.     |
| `bookingUid` | string  |     ✅    | `"bk_123abc456xyz789"` | Unique identifier (UID) for the booking. |

***

### `Cal Modify Organization Membership By Id`

Integration name: **CAL\_MODIFY\_ORGANIZATION\_MEMBERSHIP\_BY\_ID**

Updates an organization membership's status (`accepted`), role, or impersonation settings, identified by `orgId` and `membershipId` in the path; requires at least one of these fields in the request to apply changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                              |
| ---------------------- | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------- |
| `role`                 | string  |          | `"MEMBER"` | New role for the member; if omitted, role is unchanged.                                  |
| `orgId`                | integer |     ✅    | —          | Organization's unique identifier.                                                        |
| `accepted`             | boolean |          | —          | Set true to accept membership, false to decline/revoke; if omitted, status is unchanged. |
| `membershipId`         | integer |     ✅    | —          | Membership's unique identifier to modify.                                                |
| `disableImpersonation` | boolean |          | —          | Set true to disable impersonation, false to enable; if omitted, setting is unchanged.    |

***

### `Cal Modify Org Attribute By Id`

Integration name: **CAL\_MODIFY\_ORG\_ATTRIBUTE\_BY\_ID**

Partially updates an organization attribute using `orgId` and `attributeId`, allowing modification of its name, slug, type, or enabled status; changing the `type` may affect existing data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example           | Description                                                                                                |
| ------------- | ------- | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------- |
| `name`        | string  |          | `"Customer Tier"` | The new name for the attribute.                                                                            |
| `slug`        | string  |          | `"customer-tier"` | The new URL-friendly slug for the attribute.                                                               |
| `type`        | string  |          | `"TEXT"`          | The new type for the attribute; changing the type may affect existing data associated with this attribute. |
| `orgId`       | integer |     ✅    | —                 | The unique identifier for the organization.                                                                |
| `enabled`     | boolean |          | `"true"`          | Specifies whether the attribute should be enabled or disabled.                                             |
| `attributeId` | string  |     ✅    | —                 | The unique identifier for the attribute to be modified.                                                    |

***

### `Cal Patch Organization Attribute Option`

Integration name: **CAL\_PATCH\_ORGANIZATION\_ATTRIBUTE\_OPTION**

Partially updates a specific option for an organization's attribute, modifying its `value` and/or `slug`; at least one of `value` or `slug` must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                            |
| ------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------- |
| `slug`        | string  |          | `"engineering"`      | The new URL-friendly programmatic identifier for the attribute option. |
| `orgId`       | integer |     ✅    | `123`                | The unique identifier of the organization.                             |
| `value`       | string  |          | `"Engineering"`      | The new human-readable display value for the attribute option.         |
| `optionId`    | string  |     ✅    | `"clo456def789ghi"`  | The unique identifier of the attribute option to be updated.           |
| `attributeId` | string  |     ✅    | `"clq1abc123def456"` | The unique identifier of the attribute whose option is being updated.  |

***

### `Cal Patch Organization User Details`

Integration name: **CAL\_PATCH\_ORGANIZATION\_USER\_DETAILS**

Partially updates details for a user that exists within the specified organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example  | Description                                                        |
| --------------------- | ------- | :------: | -------- | ------------------------------------------------------------------ |
| `bio`                 | string  |          | —        | A short biography or description of the user.                      |
| `name`                | string  |          | —        | The display name of the user.                                      |
| `email`               | string  |          | —        | The email address of the user to update.                           |
| `orgId`               | integer |     ✅    | `"1001"` | The unique identifier of the organization.                         |
| `theme`               | string  |          | —        | The UI theme preference for the user.                              |
| `locale`              | string  |          | —        | The locale/language preference for the user.                       |
| `userId`              | integer |     ✅    | `"500"`  | The unique identifier of the user whose details are to be updated. |
| `timeZone`            | string  |          | —        | The timezone of the user.                                          |
| `avatarUrl`           | string  |          | —        | The URL of the user's avatar image.                                |
| `weekStart`           | string  |          | —        | The day the week starts for the user.                              |
| `brandColor`          | string  |          | —        | The primary brand color in hex format.                             |
| `timeFormat`          | integer |          | —        | The time format preference (12 for 12-hour, 24 for 24-hour).       |
| `hideBranding`        | boolean |          | —        | Whether to hide Cal.com branding for this user.                    |
| `darkBrandColor`      | string  |          | —        | The brand color for dark mode in hex format.                       |
| `defaultScheduleId`   | integer |          | —        | The ID of the default schedule for this user.                      |
| `allowDynamicBooking` | boolean |          | —        | Whether to allow dynamic booking for this user.                    |

***

### `Cal Patch Team Details By Id`

Integration name: **CAL\_PATCH\_TEAM\_DETAILS\_BY\_ID**

Updates specified details for an existing team identified by `teamId`; unspecified fields remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                            | Description                                                |
| ------------------------------ | ------- | :------: | -------------------------------------------------- | ---------------------------------------------------------- |
| `bio`                          | string  |          | `"This team focuses on new market acquisition."`   | Short biography or description for the team.               |
| `name`                         | string  |          | `"Marketing Team"`                                 | The new name for the team.                                 |
| `slug`                         | string  |          | `"marketing-team"`                                 | Unique URL-friendly identifier for the team.               |
| `theme`                        | string  |          | `"dark"`                                           | Color theme for team booking pages.                        |
| `teamId`                       | integer |     ✅    | —                                                  | The unique identifier of the team to be updated.           |
| `appLogo`                      | string  |          | `"https://example.com/logos/app_logo.png"`         | URL for the logo in the Cal.com application for this team. |
| `logoUrl`                      | string  |          | `"https://example.com/logos/team_logo.png"`        | URL of the team's logo image.                              |
| `metadata`                     | object  |          | `{"cost_center":"CC456","department_id":"DPT123"}` | Custom key-value metadata for the team.                    |
| `timeZone`                     | string  |          | `"America/Los_Angeles"`                            | IANA time zone; affects default schedule.                  |
| `bannerUrl`                    | string  |          | `"https://example.com/banners/team_banner.jpg"`    | URL of the team's banner image for their booking page.     |
| `isPrivate`                    | boolean |          | —                                                  | If true, team is private and not publicly discoverable.    |
| `weekStart`                    | string  |          | `"Sunday"`                                         | Start day of the week for team calendar views.             |
| `brandColor`                   | string  |          | `"#1A2B3C"`                                        | Primary brand color for the team.                          |
| `timeFormat`                   | integer |          | `"12"`                                             | Preferred time format.                                     |
| `appIconLogo`                  | string  |          | `"https://example.com/logos/app_icon.ico"`         | URL for the icon logo in the application.                  |
| `calVideoLogo`                 | string  |          | `"https://example.com/logos/cal_video_logo.png"`   | URL for the logo in Cal Video sessions for this team.      |
| `hideBranding`                 | boolean |          | —                                                  | If true, hides Cal.com branding on team booking pages.     |
| `bookingLimits`                | object  |          | `{"per_day":10,"per_week":50,"future_days":90}`    | Booking limits, conforming to Cal.com's schema.            |
| `darkBrandColor`               | string  |          | `"#FFFFFF"`                                        | Brand color for dark theme.                                |
| `hideBookATeamMember`          | boolean |          | —                                                  | If true, hides booking specific team members.              |
| `includeManagedEventsInLimits` | boolean |          | —                                                  | If true, team-managed events count towards booking limits. |

***

### `Cal Patch Webhook Event Type`

Integration name: **CAL\_PATCH\_WEBHOOK\_EVENT\_TYPE**

Updates configuration (e.g., payload template, active status, URL, triggers, secret) for an existing webhook tied to a specific event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                                  | Description                                                  |
| ----------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------ |
| `active`          | boolean |          | `"true"`                                                                                                                 | Set `true` to activate or `false` to deactivate the webhook. |
| `secret`          | string  |          | `"your-secure-secret-string-for-signing"`                                                                                | Secret key to sign webhook payloads, verifying their origin. |
| `triggers`        | string  |          | `"BOOKING_CREATED"`                                                                                                      | Specific event that triggers the webhook.                    |
| `webhookId`       | string  |     ✅    | `"wh_clx05g1vx000008l3e1z89xts"`                                                                                         | Unique identifier of the webhook to be updated.              |
| `eventTypeId`     | integer |     ✅    | `"12345"`                                                                                                                | Unique identifier of the event type for the webhook.         |
| `subscriberUrl`   | string  |          | `"https://api.example.com/webhook-receiver"`                                                                             | URL where webhook notifications are sent.                    |
| `payloadTemplate` | string  |          | `"{\"event_type\": \"{{triggerEvent}}\", \"attendee_email\": \"{{attendeeEmail}}\", \"booking_id\": \"{{bookingId}}\"}"` | Template for the payload sent to `subscriberUrl`.            |

***

### `Cal Post Calendar Credentials`

Integration name: **CAL\_POST\_CALENDAR\_CREDENTIALS**

Use to submit/update authentication credentials (passed in the request body) for an existing calendar, enabling Cal to connect with external calendar services for synchronization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                                                                                    |
| ---------- | ------ | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------- |
| `calendar` | string |     ✅    | `"apple"`             | The calendar type for which credentials will be posted. Currently only `apple` is supported for this endpoint. |
| `password` | string |     ✅    | `"your_app_password"` | The Apple account app-specific password for calendar access.                                                   |
| `username` | string |     ✅    | `"user@icloud.com"`   | The Apple account username (typically an iCloud email address).                                                |

***

### `Cal Post Conferencing App Connect`

Integration name: **CAL\_POST\_CONFERENCING\_APP\_CONNECT**

Connects or reconnects Cal.com with a specified conferencing application to enable future virtual meeting scheduling, but does not itself create or schedule meetings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                                                                                                             |
| --------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `app`     | string |     ✅    | `"google-meet"` | Identifier of the conferencing application for establishing its connection with Cal.com. Note: Google Meet requires a Google Calendar connection first. |

***

### `Cal Post New Booking Request`

Integration name: **CAL\_POST\_NEW\_BOOKING\_REQUEST**

Creates a new booking for an event type at a specified start time. Use this action to schedule a meeting with a Cal.com user. Prerequisites: 1. Get a valid event type ID from `list_event_types` 2. Find an available time slot using `get_available_slots_info` 3. Provide attendee name and email in the `responses` object 4. Specify timezone and language preferences The booking will be created with status `ACCEPTED` if no confirmation is required, or `PENDING` if the event type requires host confirmation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                              | Description                                                                         |
| ------------------------ | ------- | :------: | ---------------------------------------------------- | ----------------------------------------------------------------------------------- |
| `start`                  | string  |     ✅    | `"2024-09-15T10:00:00Z"`                             | Start date and time for the booking in ISO 8601 format in UTC.                      |
| `guests`                 | array   |          | `["guest1@example.com","guest2@example.com"]`        | List of additional guest email addresses to invite to the event.                    |
| `instant`                | boolean |          | `true`                                               | Whether this is an instant booking that bypasses approval flows (team events only). |
| `routing`                | object  |          | `{"teamMemberIds":[123,456]}`                        | Routing form response data with team member IDs for assignment.                     |
| `language`               | string  |     ✅    | `"en"`                                               | ISO 639-1 language code for communications with the attendee.                       |
| `location`               | object  |          | `{"type":"integrations:daily"}`                      | Location object matching one of the event type's configured locations.              |
| `metadata`               | object  |          | `{}`                                                 | Custom key-value metadata for tracking or analytics.                                |
| `teamSlug`               | string  |          | `"engineering"`                                      | Team slug for event type identification when using eventTypeSlug.                   |
| `timeZone`               | string  |     ✅    | `"America/New_York"`                                 | IANA timezone identifier for the attendee.                                          |
| `username`               | string  |          | `"johndoe"`                                          | Username of the host for event type identification when using eventTypeSlug.        |
| `responses`              | object  |     ✅    | `{"name":"John Doe","email":"john.doe@example.com"}` | Attendee details object. Required keys: `name` and `email`.                         |
| `eventTypeId`            | integer |          | `3116942`                                            | Unique numeric identifier of the event type to be booked.                           |
| `eventTypeSlug`          | string  |          | `"30min"`                                            | Slug of the event type.                                                             |
| `lengthInMinutes`        | integer |          | `15`                                                 | Duration of the event in minutes.                                                   |
| `organizationSlug`       | string  |          | `"acme-corp"`                                        | Optional organization slug when using eventTypeSlug with username or teamSlug.      |
| `emailVerificationCode`  | string  |          | `"ABC123"`                                           | Email verification code if the event type requires email verification.              |
| `bookingFieldsResponses` | object  |          | `{"projectCode":"ABC-123"}`                          | Key/value responses to custom booking fields defined for the event type.            |

***

### `Cal Post Org Attribute Option By User`

Integration name: **CAL\_POST\_ORG\_ATTRIBUTE\_OPTION\_BY\_USER**

Assigns an existing attribute option (using `attributeOptionId`) or creates a new one (using `value`) for a user, linking it to a specified `attributeId` which must already exist within the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                                                                        |
| ------------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------- |
| `orgId`             | integer |     ✅    | `12345`              | The unique identifier for the organization.                                                        |
| `value`             | string  |          | `"Morning Shift"`    | Value for a new attribute option to be created under `attributeId` and then assigned to the user.  |
| `userId`            | integer |     ✅    | `2090888`            | The unique identifier for the user within the organization to assign the attribute option to.      |
| `attributeId`       | string  |     ✅    | `"clq1abc123def456"` | The unique identifier of the attribute to which this option belongs or will be added and assigned. |
| `attributeOptionId` | string  |          | `"opt_abc123"`       | Identifier of an existing attribute option to be assigned to the user for `attributeId`.           |

***

### `Cal Post Selected Calendars`

Integration name: **CAL\_POST\_SELECTED\_CALENDARS**

Links a new external calendar or updates an existing link to one, enabling synchronization with the Cal application by specifying the `integration` provider, the calendar's `externalId`, and the `credentialId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example             | Description                                                                                            |
| -------------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------------ |
| `externalId`   | string  |     ✅    | `"primary"`         | Unique identifier of the specific calendar within the external service.                                |
| `integration`  | string  |     ✅    | `"google_calendar"` | Specifies the external calendar system to connect with.                                                |
| `credentialId` | integer |     ✅    | `"101"`             | Unique identifier for the stored credential authorizing Cal's access to the external calendar service. |

***

### `Cal Post User To Organization`

Integration name: **CAL\_POST\_USER\_TO\_ORGANIZATION**

Adds a new user to an existing organization (identified by `orgId` in path), requiring user's `email` and allowing extensive optional profile customization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                     | Description                                                         |
| ------------------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------- |
| `email`             | string  |     ✅    | `"new.user@example.com"`                    | Email address of the user.                                          |
| `orgId`             | integer |     ✅    | `"123"`                                     | Unique identifier of the organization.                              |
| `theme`             | string  |          | `"light"`                                   | Preferred visual theme for the application.                         |
| `locale`            | string  |          | `"en"`                                      | Preferred language and regional settings.                           |
| `weekday`           | string  |          | `"monday"`                                  | Preferred start day of the week for calendar views.                 |
| `appTheme`          | string  |          | `"calcom-light"`                            | Preferred application-specific theme with granular styling options. |
| `timeZone`          | string  |          | `"America/New_York"`                        | Preferred time zone.                                                |
| `username`          | string  |          | `"new_user_123"`                            | Desired username.                                                   |
| `avatarUrl`         | string  |          | `"https://example.com/avatars/user123.png"` | URL for the user's avatar image.                                    |
| `autoAccept`        | boolean |          | —                                           | If true, user automatically accepts event invitations.              |
| `brandColor`        | string  |          | `"#3F51B5"`                                 | Preferred brand color for the interface.                            |
| `timeFormat`        | integer |          | `"12"`                                      | Preferred time display format.                                      |
| `hideBranding`      | boolean |          | —                                           | Set to true to hide Cal.com branding.                               |
| `darkBrandColor`    | string  |          | `"#1A237E"`                                 | Preferred brand color for dark mode interface.                      |
| `organizationRole`  | string  |          | —                                           | Role of the user within the organization.                           |
| `defaultScheduleId` | integer |          | `"789"`                                     | ID of the default schedule for the new user.                        |

***

### `Cal Post Webhook Event`

Integration name: **CAL\_POST\_WEBHOOK\_EVENT**

Creates a new Cal.com webhook subscription to send real-time notifications for specified calendar events (like bookings, meetings, forms) to a publicly accessible subscriber URL. Supports custom payload templates and webhook signature verification via HMAC-SHA256.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                     | Description                                                                                        |
| ----------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `active`          | boolean |     ✅    | `true`                                                                                                      | Indicates if the webhook is active.                                                                |
| `secret`          | string  |          | `"mySuperSecretKey"`                                                                                        | Secret key for signing the webhook payload.                                                        |
| `triggers`        | array   |     ✅    | `["BOOKING_CREATED"]`                                                                                       | The list of event types that will trigger this webhook notification.                               |
| `subscriberUrl`   | string  |     ✅    | `"https://api.example.com/webhook-receiver"`                                                                | The callback URL where webhook notifications will be sent.                                         |
| `payloadTemplate` | string  |          | `"{\"event_type\": \"{{type}}\", \"booking_title\": \"{{title}}\", \"organizer\": \"{{organizer.name}}\"}"` | JSON string template for the webhook payload, using placeholders like `{{type}}` for dynamic data. |

***

### `Cal Reassign Booking To Another User`

Integration name: **CAL\_REASSIGN\_BOOKING\_TO\_ANOTHER\_USER**

Reassigns an existing booking to a specified user. Requires `cal-api-version 2024-08-13`. The booking owner must be authorized to perform the reassignment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                           | Description                                                             |
| ------------ | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------- |
| `reason`     | string  |          | `"Original host is unavailable due to sickness."` | An optional text explaining the reason for reassigning the booking.     |
| `userId`     | integer |     ✅    | `101`                                             | The numerical ID of the user to whom the booking will be reassigned.    |
| `bookingUid` | string  |     ✅    | `"bk_123xyz789abc"`                               | The unique identifier (UID) of the booking that needs to be reassigned. |

***

### `Cal Reassign Booking With Uid`

Integration name: **CAL\_REASSIGN\_BOOKING\_WITH\_UID**

Reassigns the specified booking to a new team member, who is determined by the system rather than being specified in the request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example          | Description                                              |
| ------------ | ------ | :------: | ---------------- | -------------------------------------------------------- |
| `bookingUid` | string |     ✅    | `"bk_123xyz789"` | Unique identifier (UID) of the booking to be reassigned. |

***

### `Cal Refresh Oauth Token For Client Id`

Integration name: **CAL\_REFRESH\_OAUTH\_TOKEN\_FOR\_CLIENT\_ID**

Refreshes an OAuth access token for a specified `clientId` and managed user using their `refreshToken`. This is a Cal.com Platform feature for developers building applications that manage users. Prerequisites: - A registered OAuth client application with Cal.com (provides clientId) - The OAuth client secret key (`x_cal_secret_key`) - A valid refresh token obtained when creating a managed user The endpoint implements refresh token rotation - both access and refresh tokens are returned. Access tokens expire after 60 minutes; refresh tokens expire after 1 year. Note: This endpoint is marked as deprecated in Cal.com docs and may be replaced in future versions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                      | Description                                                                           |
| ------------------ | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------- |
| `clientId`         | string |     ✅    | `"client_app_123xyz"`                        | The unique identifier of the OAuth client application whose token is being refreshed. |
| `refreshToken`     | string |     ✅    | `"rt_a1b2c3d4e5f67890_example_token_string"` | The refresh token for the managed user, used to obtain a new access token.            |
| `x_cal_secret_key` | string |     ✅    | `"cal_secret_abc123xyz"`                     | The OAuth client secret key, required for authentication.                             |

***

### `Cal Request Email Verification Code`

Integration name: **CAL\_REQUEST\_EMAIL\_VERIFICATION\_CODE**

Request an email verification code for a team's verified resources. Use this action when you need to verify an email address for a team. The API will send a verification code to the specified email address. After receiving the code, you'll need to use it with a separate verification endpoint to complete the email verification process. This is typically used to verify email addresses that will be used as verified resources within a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                |
| --------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------- |
| `email`   | string  |     ✅    | `"acme@example.com"` | Email address to verify.                                                   |
| `teamId`  | integer |     ✅    | `184346`             | The unique identifier of the team for which to request email verification. |

***

### `Cal Reschedule Booking By Uid`

Integration name: **CAL\_RESCHEDULE\_BOOKING\_BY\_UID**

Reschedules an existing booking (identified by `bookingUid`) to a new time. Requires the booking UID and the new start time in ISO 8601 format. Optionally, you can provide a rescheduling reason and the email of the person rescheduling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                       | Description                                                              |
| ----------------------- | ------ | :------: | ----------------------------- | ------------------------------------------------------------------------ |
| `start`                 | string |     ✅    | `"2024-08-13T10:00:00Z"`      | The new start time for the booking in ISO 8601 format.                   |
| `bookingUid`            | string |     ✅    | `"qSzjkEyRkNP6aYyuYBvTPw"`    | The unique identifier (UID) of the booking that needs to be rescheduled. |
| `rescheduledBy`         | string |          | `"user@example.com"`          | Email of the person who is rescheduling the booking.                     |
| `reschedulingReason`    | string |          | `"User requested reschedule"` | The reason for rescheduling the booking.                                 |
| `emailVerificationCode` | string |          | `"123456"`                    | Required when event type has email verification enabled.                 |

***

### `Cal Reserve Slot For Event`

Integration name: **CAL\_RESERVE\_SLOT\_FOR\_EVENT**

Temporarily reserves an available time slot for an existing and bookable event type, useful for high-demand slots to prevent double-bookings while the user completes the booking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                  | Description                                                                                                                    |
| ------------------ | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `bookingUid`       | string  |          | `"booking-uid-123"`      | Optional unique identifier, typically used for events with seats to associate the reservation with a specific booking or seat. |
| `eventTypeId`      | integer |     ✅    | `"123"`                  | The unique identifier for the event type for which the time slot is being reserved.                                            |
| `slotUtcEndDate`   | string  |     ✅    | `"2024-07-15T11:00:00Z"` | The end date and time of the slot to be reserved, in UTC.                                                                      |
| `slotUtcStartDate` | string  |     ✅    | `"2024-07-15T10:00:00Z"` | The start date and time of the slot to be reserved, in UTC.                                                                    |

***

### `Cal Retrieve Attribute Options For Org`

Integration name: **CAL\_RETRIEVE\_ATTRIBUTE\_OPTIONS\_FOR\_ORG**

Retrieves all available options for a specific attribute within an organization. This action returns the list of selectable options for SINGLE\_SELECT or MULTI\_SELECT type attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                     |
| ------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `orgId`       | integer |     ✅    | `184337`                                 | The unique numerical identifier of the organization.                            |
| `attributeId` | string  |     ✅    | `"1eed080a-36d4-4e51-bdee-b7debe2786f4"` | The unique UUID identifier of the attribute whose options you want to retrieve. |

***

### `Cal Retrieve Booking Details By Uid`

Integration name: **CAL\_RETRIEVE\_BOOKING\_DETAILS\_BY\_UID**

Fetches comprehensive details for an existing booking, identified by its `bookingUid`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example             | Description                             |
| ------------ | ------ | :------: | ------------------- | --------------------------------------- |
| `bookingUid` | string |     ✅    | `"bk_123xyz789abc"` | Unique identifier (UID) of the booking. |

***

### `Cal Retrieve Calendar Busy Times`

Integration name: **CAL\_RETRIEVE\_CALENDAR\_BUSY\_TIMES**

To find busy calendar slots for scheduling/conflict detection, call this with a valid `credentialId`, an `externalId` accessible by it, and a recognized IANA `loggedInUsersTz`; returns only busy intervals, not event details or free slots. Use `credentialId`/`externalId` for single calendar queries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                  | Description                                                                                   |
| ----------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------- |
| `dateTo`          | string  |          | `"2024-03-17T17:00:00Z"` | The end date and time for querying busy times in ISO 8601 format.                             |
| `dateFrom`        | string  |          | `"2024-03-10T09:00:00Z"` | The start date and time for querying busy times.                                              |
| `externalId`      | string  |     ✅    | `"primary"`              | The external identifier of the specific calendar to query.                                    |
| `credentialId`    | integer |     ✅    | `12345`                  | The numeric identifier for the credential associated with the calendar account to be queried. |
| `loggedInUsersTz` | string  |     ✅    | `"America/New_York"`     | The IANA timezone string of the logged-in user.                                               |

***

### `Cal Retrieve Calendar List`

Integration name: **CAL\_RETRIEVE\_CALENDAR\_LIST**

Retrieves a list of all calendar summaries (no event details) associated with the authenticated user's account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Retrieve Current Team For Organization`

Integration name: **CAL\_RETRIEVE\_CURRENT\_TEAM\_FOR\_ORGANIZATION**

Retrieves details of the team(s) for the currently authenticated user within the specified organization `orgId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                 |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `skip`    | integer |          | `0`     | The number of team entries to skip from the beginning of the list.                                          |
| `take`    | integer |          | `10`    | The maximum number of team entries to return.                                                               |
| `orgId`   | integer |     ✅    | —       | The unique identifier of the organization for which the current user's team information is being requested. |

***

### `Cal Retrieve Default Conferencing Settings`

Integration name: **CAL\_RETRIEVE\_DEFAULT\_CONFERENCING\_SETTINGS**

Retrieves an account's or organization's read-only default conferencing settings in Cal.com (e.g., video platform, meeting duration) to inform event creation or ensure consistency.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Retrieve Event Type By Id`

Integration name: **CAL\_RETRIEVE\_EVENT\_TYPE\_BY\_ID**

Retrieves comprehensive details for a specific, existing Cal.com event type using its unique ID; this is a read-only action and does not return associated events or bookings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example   | Description                               |
| ------------- | ------ | :------: | --------- | ----------------------------------------- |
| `eventTypeId` | string |     ✅    | `"12345"` | The unique identifier for the event type. |

***

### `Cal Retrieve Membership From Organization`

Integration name: **CAL\_RETRIEVE\_MEMBERSHIP\_FROM\_ORGANIZATION**

Retrieves detailed information about a specific membership within a particular organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example     | Description                                                      |
| -------------- | ------- | :------: | ----------- | ---------------------------------------------------------------- |
| `orgId`        | integer |     ✅    | `"184337"`  | The unique identifier of the organization.                       |
| `membershipId` | integer |     ✅    | `"1329743"` | The unique identifier of the membership within the organization. |

***

### `Cal Retrieve My Information`

Integration name: **CAL\_RETRIEVE\_MY\_INFORMATION**

Retrieves the authenticated user's core profile information (e.g., name, email, timezone); does not retrieve related data like calendar events or schedules.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Retrieve Oauth Client User By Id`

Integration name: **CAL\_RETRIEVE\_OAUTH\_CLIENT\_USER\_BY\_ID**

Retrieves detailed profile information for a specific managed user associated with an OAuth client. This endpoint is part of Cal.com's Platform API for OAuth client management. It requires: - A valid OAuth client ID (`clientId`) obtained from the Cal.com Platform dashboard - A valid managed user ID (`userId`) that was created via the create managed user endpoint - OAuth client secret key (`x_cal_secret_key`) for authentication Returns the user's profile including email, name, timezone, schedule settings, and custom metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                       | Description                                                      |
| ------------------ | ------- | :------: | ----------------------------- | ---------------------------------------------------------------- |
| `userId`           | integer |     ✅    | `1001`                        | The unique numerical identifier of the managed user to retrieve. |
| `clientId`         | string  |     ✅    | `"clzocd3lh000008lgha4e4fp5"` | The unique identifier of the OAuth client.                       |
| `x_cal_secret_key` | string  |     ✅    | `"cal_secret_abc123xyz"`      | The OAuth client secret key for Platform API authentication.     |

***

### `Cal Retrieve Oauth Client Webhook By Id`

Integration name: **CAL\_RETRIEVE\_OAUTH\_CLIENT\_WEBHOOK\_BY\_ID**

Retrieves detailed configuration for a specific webhook by ID from a Platform OAuth client. This Platform API endpoint requires OAuth client credentials (`clientId` and `x-cal-secret-key`) to access webhook settings including subscriber URL, active status, event triggers, payload template, and verification secret.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                       | Description                                                                |
| ------------------ | ------ | :------: | ----------------------------- | -------------------------------------------------------------------------- |
| `clientId`         | string |     ✅    | `"clxj8s9j3000108l37twm86xy"` | The unique identifier of the Platform OAuth client that owns the webhook.  |
| `webhookId`        | string |     ✅    | `"12345"`                     | The unique identifier of the webhook to retrieve.                          |
| `x_cal_secret_key` | string |     ✅    | `"cal_secret_your_key_here"`  | The Platform OAuth client secret key required for authenticating requests. |

***

### `Cal Retrieve Organization Attributes`

Integration name: **CAL\_RETRIEVE\_ORGANIZATION\_ATTRIBUTES**

Retrieves detailed attributes for an organization, identified by its `orgId`, which must correspond to an existing organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                         |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------- |
| `skip`    | integer |          | `"0"`   | The number of attributes to skip before starting to return items.                   |
| `take`    | integer |          | `"10"`  | The maximum number of attributes to return.                                         |
| `orgId`   | integer |     ✅    | `"123"` | The unique identifier of the organization for which attributes are to be retrieved. |

***

### `Cal Retrieve Organization Attributes Options`

Integration name: **CAL\_RETRIEVE\_ORGANIZATION\_ATTRIBUTES\_OPTIONS**

Retrieves all attribute options assigned to a specific user within an organization. Attribute options are customizable organizational metadata (like department, role, location, or team) that organizations define and assign to users for flexible categorization and management.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                                |
| --------- | ------- | :------: | ----------- | ---------------------------------------------------------- |
| `orgId`   | integer |     ✅    | `"184337"`  | The unique identifier of the organization.                 |
| `userId`  | integer |     ✅    | `"1547273"` | The unique identifier of the user within the organization. |

***

### `Cal Retrieve Organization Webhook By Id`

Integration name: **CAL\_RETRIEVE\_ORGANIZATION\_WEBHOOK\_BY\_ID**

Retrieves detailed information, including configuration and status, for a specific webhook by its ID (`webhookId`) within a given organization (`orgId`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                                     |
| ----------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `orgId`     | integer |     ✅    | `184337`                                 | The unique numeric identifier of the organization to which the webhook belongs. |
| `webhookId` | string  |     ✅    | `"a4db4d1d-5712-4239-ab5d-201becc7b4b7"` | The unique identifier (UUID) of the webhook to retrieve.                        |

***

### `Cal Retrieve Organization Webhooks By Org Id`

Integration name: **CAL\_RETRIEVE\_ORGANIZATION\_WEBHOOKS\_BY\_ORG\_ID**

Retrieves all webhooks configured for a specific organization, returning an array of webhook objects with their configuration details (ID, triggers, subscriber URL, active status, etc.). Supports pagination via `take` and `skip` parameters. This is a read-only operation that does not modify any webhooks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                               |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------- |
| `skip`    | integer |          | `0`     | Number of webhooks to skip (for pagination).                              |
| `take`    | integer |          | `10`    | Maximum number of webhooks to return.                                     |
| `orgId`   | integer |     ✅    | —       | The unique identifier of the organization for which to retrieve webhooks. |

***

### `Cal Retrieve Provider Details`

Integration name: **CAL\_RETRIEVE\_PROVIDER\_DETAILS**

Verifies and retrieves details for an OAuth client (provider) in Cal.com's Platform API. This endpoint is part of Cal.com's Platform API for managing OAuth clients. It verifies the OAuth client credentials (`clientId` and `x-cal-secret-key`) and returns provider details including the client ID, associated organization ID, and provider name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                 |
| ------------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------- |
| `clientId`         | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | Unique identifier of the OAuth client (provider) to verify. |
| `x_cal_secret_key` | string |     ✅    | `"cal_secret_abc123xyz"`                 | The OAuth client secret key, required for authentication.   |

***

### `Cal Retrieve Schedules List`

Integration name: **CAL\_RETRIEVE\_SCHEDULES\_LIST**

Retrieve all availability schedules for the authenticated Cal.com user. This action returns a list of schedules that define when a user is available for bookings. Each schedule includes availability time blocks, timezone, and whether it's the default schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Retrieve Team Details In Organization`

Integration name: **CAL\_RETRIEVE\_TEAM\_DETAILS\_IN\_ORGANIZATION**

Retrieves a paginated list of teams and their details for a specific organization ID; individual team member details or schedules are not included.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                         |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------- |
| `skip`    | integer |          | `0`     | Number of teams to skip for pagination (offset).                                    |
| `take`    | integer |          | `10`    | Maximum number of teams to return per page.                                         |
| `orgId`   | integer |     ✅    | `101`   | The unique numeric identifier of the organization whose teams you want to retrieve. |

***

### `Cal Retrieve Team Event Types`

Integration name: **CAL\_RETRIEVE\_TEAM\_EVENT\_TYPES**

Retrieves event types for a team within the Cal scheduling system; this action does not provide details on scheduled instances or member availability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example               | Description                                                                            |
| ------------ | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------- |
| `teamId`     | integer |     ✅    | `101`                 | The unique numerical identifier of the team for which event types are to be retrieved. |
| `eventSlug`  | string  |          | `"30-minute-meeting"` | The URL-friendly slug of a specific team event type.                                   |
| `hostsLimit` | integer |          | `5`                   | Maximum number of hosts to include in the response.                                    |

***

### `Cal Retrieve Team Membership By Id`

Integration name: **CAL\_RETRIEVE\_TEAM\_MEMBERSHIP\_BY\_ID**

Retrieves detailed information for a specific team membership by its ID within an organization's team. Returns membership details including the user's role (`MEMBER`, `OWNER`, or `ADMIN`), acceptance status, impersonation settings, and user profile information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                       |
| -------------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `orgId`        | integer |     ✅    | `12345` | The unique identifier of the organization that contains the team. |
| `teamId`       | integer |     ✅    | `67890` | The unique identifier of the team within the organization.        |
| `membershipId` | integer |     ✅    | `11223` | The unique identifier of the membership record to retrieve.       |

***

### `Cal Retrieve Team Membership Details`

Integration name: **CAL\_RETRIEVE\_TEAM\_MEMBERSHIP\_DETAILS**

Retrieves detailed attributes for a specific team membership by its ID and the team ID, such as member information, role, and status; does not list all team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                 |
| -------------- | ------- | :------: | ------- | ----------------------------------------------------------- |
| `teamId`       | integer |     ✅    | `12345` | The unique identifier of the team.                          |
| `membershipId` | integer |     ✅    | `111`   | The unique identifier of the membership record to retrieve. |

***

### `Cal Retrieve Team Memberships`

Integration name: **CAL\_RETRIEVE\_TEAM\_MEMBERSHIPS**

Retrieves all memberships for a team, including member details, roles (`MEMBER`/`OWNER`/`ADMIN`), and invitation acceptance status. Supports pagination via `take` and `skip` parameters. Use this action to list team members and their roles. The authenticated user must be a member of the team to access its memberships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                              |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------ |
| `skip`    | integer |          | `0`     | Number of membership records to skip before returning results.           |
| `take`    | integer |          | `10`    | Maximum number of membership records to return.                          |
| `teamId`  | integer |     ✅    | `12345` | The unique identifier of the team whose memberships are to be retrieved. |

***

### `Cal Retrieve Team Memberships For Organization`

Integration name: **CAL\_RETRIEVE\_TEAM\_MEMBERSHIPS\_FOR\_ORGANIZATION**

Retrieves all user memberships for a specific team within an organization, including each member's role (`OWNER`, `ADMIN`, `MEMBER`), acceptance status, impersonation settings, and detailed user information. Supports pagination via `take` and `skip` parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                             |
| --------- | ------- | :------: | -------- | ----------------------------------------------------------------------- |
| `skip`    | integer |          | `0`      | Number of team memberships to skip for pagination offset.               |
| `take`    | integer |          | `50`     | Maximum number of team memberships to return per page.                  |
| `orgId`   | integer |     ✅    | `184337` | The unique numeric identifier of the organization containing the team   |
| `teamId`  | integer |     ✅    | `184336` | The unique numeric identifier of the team whose memberships to retrieve |

***

### `Cal Retrieve Users In Organization`

Integration name: **CAL\_RETRIEVE\_USERS\_IN\_ORGANIZATION**

Retrieves users associated with a specific organization ID, excluding individual scheduling or calendar data; the `orgId` must be a valid identifier for an existing organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                        | Description                                                            |
| --------- | ------- | :------: | ---------------------------------------------- | ---------------------------------------------------------------------- |
| `skip`    | integer |          | —                                              | Number of user records to skip for pagination.                         |
| `take`    | integer |          | —                                              | Maximum number of user records to return for pagination.               |
| `orgId`   | integer |     ✅    | —                                              | The unique identifier of the organization for which to retrieve users. |
| `emails`  | array   |          | `"['user1@example.com', 'user2@example.com']"` | Optional list of email addresses to filter users by.                   |

***

### `Cal Retrieve V2 Conferencing Info`

Integration name: **CAL\_RETRIEVE\_V2\_CONFERENCING\_INFO**

Retrieves an authenticated Cal user's or organization's video conferencing configurations, capabilities, and installed apps, useful for understanding options before scheduling or verifying setups; provider availability may vary by subscription or settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Cal Retrieve Webhook Details For Oauth Client`

Integration name: **CAL\_RETRIEVE\_WEBHOOK\_DETAILS\_FOR\_OAUTH\_CLIENT**

Retrieves all webhook configurations for a specific OAuth client with optional pagination. This endpoint is part of Cal.com's Platform API for managing webhooks associated with OAuth clients.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                    | Description                                                                      |
| ------------------ | ------- | :------: | -------------------------- | -------------------------------------------------------------------------------- |
| `skip`             | integer |          | `0`                        | The number of webhook details to skip.                                           |
| `take`             | integer |          | `10`                       | The maximum number of webhook details to return.                                 |
| `clientId`         | string  |     ✅    | `"oauth_client_123xyz789"` | The unique identifier of the OAuth client for which to retrieve webhook details. |
| `x_cal_secret_key` | string  |          | `"cal_secret_abc123xyz"`   | The OAuth client secret key for authentication.                                  |

***

### `Cal Retrieve Webhooks For Event Type`

Integration name: **CAL\_RETRIEVE\_WEBHOOKS\_FOR\_EVENT\_TYPE**

Retrieves a paginated list of webhooks (including URLs, subscribed events, and status) for a specified, existing event type ID, useful for auditing configurations or troubleshooting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                     |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------- |
| `skip`        | integer |          | `"0"`   | Number of webhook records to skip (for pagination).                             |
| `take`        | integer |          | `"10"`  | Maximum number of webhook records to return (for pagination).                   |
| `eventTypeId` | integer |     ✅    | `"101"` | The unique identifier of the event type for which webhooks are to be retrieved. |

***

### `Cal Retrieve Webhooks List`

Integration name: **CAL\_RETRIEVE\_WEBHOOKS\_LIST**

Retrieves a paginated list of webhooks from the user's Cal scheduling system account, which are used for real-time notifications on events like new bookings, cancellations, or updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                  |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------ |
| `skip`    | integer |          | `0`     | Number of webhook records to skip before collecting results. |
| `take`    | integer |          | `10`    | Maximum number of webhook records to return.                 |

***

### `Cal Save Calendar Entry`

Integration name: **CAL\_SAVE\_CALENDAR\_ENTRY**

Saves or updates a calendar's settings using a GET request, typically for data already on the server or simple updates via query parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                | Description                                                                     |
| ---------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------- |
| `code`     | string |     ✅    | `"authorizationCodeFromOAuthProvider"` | Authorization code or token required to validate and permit the save operation. |
| `state`    | string |     ✅    | `"aRandomSessionStateString12345"`     | Client-provided opaque string to maintain state.                                |
| `calendar` | string |     ✅    | `"google"`                             | The calendar type to save or update.                                            |

***

### `Cal Save Calendar Ics Feeds`

Integration name: **CAL\_SAVE\_CALENDAR\_ICS\_FEEDS**

Imports and saves one or more publicly accessible external iCalendar (ICS) feed URLs into the Cal.com calendar system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                   | Description                                                                                             |
| ---------- | ------- | :------: | ----------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `urls`     | array   |     ✅    | `"https://calendar.example.com/feed.ics"` | A list of iCalendar (ICS) feed URLs to be imported and saved.                                           |
| `readOnly` | boolean |          | —                                         | Specifies if the imported calendar events are read-only (`True`) or writable (`False`) via the Cal API. |

***

### `Cal Save Oauth Credentials Via Gcal Api`

Integration name: **CAL\_SAVE\_OAUTH\_CREDENTIALS\_VIA\_GCAL\_API**

Completes the Google Calendar OAuth 2.0 flow by exchanging the `code` and `state` (received from Google's redirect after user consent) for access and refresh tokens.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                | Description                                                                                                                                 |
| --------- | ------ | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`    | string |     ✅    | `"4/0AeaYSHAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"` | The authorization code received from the Google authorization server after the user has successfully authenticated and granted permissions. |
| `state`   | string |     ✅    | `"_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"`                              | An opaque value used to maintain state between the initial authorization request to Stripe and the callback.                                |

***

### `Cal Save Stripe Details`

Integration name: **CAL\_SAVE\_STRIPE\_DETAILS**

Completes the Stripe OAuth flow by saving Stripe details; call this when a user is redirected back from Stripe with an authorization `code` and `state`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                                                                                                  |
| --------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `code`    | string |     ✅    | `"ac_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"`         | The authorization code returned by Stripe after the user successfully authorizes the Cal.com application.    |
| `state`   | string |     ✅    | `"random_string_for_csrf_prevention_123xyz"` | An opaque value used to maintain state between the initial authorization request to Stripe and the callback. |

***

### `Cal Set Default Conferencing App`

Integration name: **CAL\_SET\_DEFAULT\_CONFERENCING\_APP**

Sets the specified, valid, and configured conferencing application as the default for new meetings for the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example  | Description                                                                                           |
| --------- | ------ | :------: | -------- | ----------------------------------------------------------------------------------------------------- |
| `app`     | string |     ✅    | `"zoom"` | Identifier of a valid and configured conferencing application to set as the default for new meetings. |

***

### `Cal Update Destination Calendar Integration`

Integration name: **CAL\_UPDATE\_DESTINATION\_CALENDAR\_INTEGRATION**

Updates the destination calendar for syncing events, using `integration` and `externalId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                           | Description                                                       |
| ------------- | ------ | :------: | --------------------------------- | ----------------------------------------------------------------- |
| `externalId`  | string |     ✅    | `"your_calendar_id_from_service"` | The unique identifier for the calendar within the chosen service. |
| `integration` | string |     ✅    | `"apple_calendar"`                | The calendar service to integrate with.                           |

***

### `Cal Update Oauth Client User Settings`

Integration name: **CAL\_UPDATE\_OAUTH\_CLIENT\_USER\_SETTINGS**

Updates specified profile and scheduling preference fields for a user associated with an OAuth client; `defaultScheduleId`, if provided, must be an existing, valid schedule for the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                             | Description                                             |
| ------------------- | ------- | :------: | --------------------------------------------------- | ------------------------------------------------------- |
| `bio`               | string  |          | `"I am a software developer"`                       | User's biography or description text for their profile. |
| `name`              | string  |          | `"Jane Doe"`                                        | New full name for the user.                             |
| `email`             | string  |          | `"new.email@example.com"`                           | New email address for the user.                         |
| `locale`            | string  |          | `"en"`                                              | Preferred language and regional setting.                |
| `userId`            | integer |     ✅    | `12345`                                             | Identifier for the user.                                |
| `clientId`          | string  |     ✅    | `"client_abc123"`                                   | Identifier for the OAuth client.                        |
| `metadata`          | object  |          | `{"department":"Engineering"}`                      | Key-value metadata for storing custom user data.        |
| `timeZone`          | string  |          | `"America/Los_Angeles"`                             | Preferred IANA Time Zone Database name.                 |
| `avatarUrl`         | string  |          | `"https://example.com/avatars/new_user_avatar.png"` | URL of the user's new avatar.                           |
| `weekStart`         | string  |          | `"Monday"`                                          | First day of the user's week.                           |
| `timeFormat`        | integer |          | `12`                                                | Preferred time format.                                  |
| `x_cal_secret_key`  | string  |          | `"cal_secret_abc123xyz"`                            | The OAuth client secret key for authentication.         |
| `defaultScheduleId` | integer |          | `1`                                                 | ID of the user's default schedule.                      |

***

### `Cal Update Oauth Client Webhook`

Integration name: **CAL\_UPDATE\_OAUTH\_CLIENT\_WEBHOOK**

Updates specified properties of an existing webhook for an OAuth client; omitted fields remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                                           | Description                                                             |
| ------------------ | ------- | :------: | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| `active`           | boolean |          | `true`                                                                                                            | Specifies whether the webhook is active.                                |
| `secret`           | string  |          | `"myN3wS3cr3tKeyF0rW3bh00ks"`                                                                                     | A secret key for verifying webhook payload authenticity.                |
| `clientId`         | string  |     ✅    | `"oauth_client_app_12345abcdef"`                                                                                  | The unique identifier of the OAuth client to which the webhook belongs. |
| `triggers`         | array   |          | `["BOOKING_RESCHEDULED"]`                                                                                         | The list of event types that will trigger this webhook.                 |
| `webhookId`        | string  |     ✅    | `"wh_67890ghijk_updated"`                                                                                         | The unique identifier of the webhook configuration to be updated.       |
| `subscriberUrl`    | string  |          | `"https://api.example.com/calcom-webhooks/updated-endpoint"`                                                      | The URL where the webhook payload will be sent.                         |
| `payloadTemplate`  | string  |          | `"{\"event_type\": \"{{triggerEvent}}\", \"booking_id\": \"{{bookingId}}\", \"custom_field\": \"custom_value\"}"` | The template for the webhook payload.                                   |
| `x_cal_secret_key` | string  |          | `"cal_secret_abc123xyz"`                                                                                          | The OAuth client secret key required for Platform authentication.       |

***

### `Cal Update Private Link`

Integration name: **CAL\_UPDATE\_PRIVATE\_LINK**

Updates a private link for a team event type within an organization. Use to modify `maxUsageCount` for usage-based links or `expiresAt` for time-based links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                    | Description                                                |
| --------------- | ------- | :------: | -------------------------- | ---------------------------------------------------------- |
| `orgId`         | integer |     ✅    | `184337`                   | The unique identifier of the organization.                 |
| `linkId`        | string  |     ✅    | `"durF9BSn4cwU9wbMF9PmKo"` | The unique identifier of the private link to update.       |
| `teamId`        | integer |     ✅    | `184336`                   | The unique identifier of the team within the organization. |
| `expiresAt`     | string  |          | `"2024-12-31T23:59:59Z"`   | Expiration date/time in ISO 8601 format.                   |
| `eventTypeId`   | integer |     ✅    | `4591148`                  | The unique identifier of the event type.                   |
| `maxUsageCount` | integer |          | `10`                       | Maximum number of times the private link can be used.      |

***

### `Cal Update Schedule By Id`

Integration name: **CAL\_UPDATE\_SCHEDULE\_BY\_ID**

Updates an existing schedule by its ID, allowing partial modification of properties; providing `availability` or `overrides` replaces them entirely.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                 | Description                                                             |
| -------------- | ------- | :------: | ----------------------- | ----------------------------------------------------------------------- |
| `name`         | string  |          | `"My Work Schedule"`    | Descriptive name for the schedule.                                      |
| `timeZone`     | string  |          | `"America/Los_Angeles"` | IANA timezone string for the schedule.                                  |
| `isDefault`    | boolean |          | `true`                  | Set as the default schedule.                                            |
| `overrides`    | array   |          | —                       | List of override objects for specific date/time adjustments.            |
| `scheduleId`   | string  |     ✅    | `"sched_123xyz"`        | The unique identifier of the schedule to be updated.                    |
| `availability` | array   |          | —                       | List of availability objects for regular weekly recurring availability. |

***

### `Cal Update Team Event Type`

Integration name: **CAL\_UPDATE\_TEAM\_EVENT\_TYPE**

Tool to update a team event type in Cal.com. Use when modifying settings for a team's event type such as duration, description, scheduling, locations, or any other event configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type    | Required | Example | Description                                                                                    |
| ------------------------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------- |
| `slug`                               | string  |          | —       | URL-friendly identifier                                                                        |
| `color`                              | object  |          | —       | Theme color configuration.                                                                     |
| `hosts`                              | array   |          | —       | Specific team members to assign. Do not use with `assignAllTeamMembers`                        |
| `price`                              | integer |          | —       | Event price                                                                                    |
| `seats`                              | object  |          | —       | Multi-seat event configuration.                                                                |
| `title`                              | string  |          | —       | Event type title                                                                               |
| `hidden`                             | boolean |          | —       | Hide event type from public listing                                                            |
| `teamId`                             | integer |     ✅    | —       | ID of the team                                                                                 |
| `currency`                           | string  |          | —       | Currency code                                                                                  |
| `metadata`                           | object  |          | —       | Custom metadata                                                                                |
| `locations`                          | array   |          | —       | Meeting locations                                                                              |
| `customName`                         | string  |          | —       | Customizable event name with variables like `{Event type title}`, `{Organiser}`, `{Scheduler}` |
| `recurrence`                         | object  |          | —       | Recurring event configuration.                                                                 |
| `scheduleId`                         | integer |          | —       | Custom schedule ID to use                                                                      |
| `description`                        | string  |          | —       | Event type description                                                                         |
| `eventTypeId`                        | integer |     ✅    | —       | ID of the event type to update                                                                 |
| `offsetStart`                        | integer |          | —       | Offset timeslots by specified number of minutes                                                |
| `slotInterval`                       | integer |          | —       | Interval between available time slots in minutes                                               |
| `bookerLayouts`                      | object  |          | —       | Calendar layout preferences for booker.                                                        |
| `bookingFields`                      | array   |          | —       | Complete set of booking form fields. Replaces all existing fields.                             |
| `bookingWindow`                      | —       |          | —       | Limit how far in future bookings can be made                                                   |
| `disableGuests`                      | boolean |          | —       | Prevent attendees from adding guests                                                           |
| `emailSettings`                      | object  |          | —       | Email notification settings.                                                                   |
| `schedulingType`                     | string  |          | —       | Team event scheduling types.                                                                   |
| `lengthInMinutes`                    | integer |          | —       | Duration of the event in minutes                                                               |
| `afterEventBuffer`                   | integer |          | —       | Buffer time after event ends in minutes                                                        |
| `calVideoSettings`                   | object  |          | —       | Settings for Cal Video recordings and transcriptions.                                          |
| `beforeEventBuffer`                  | integer |          | —       | Buffer time before event starts in minutes                                                     |
| `disableCancelling`                  | object  |          | —       | Settings for disabling cancelling.                                                             |
| `hideCalendarNotes`                  | boolean |          | —       | Hide notes from calendar events                                                                |
| `interfaceLanguage`                  | string  |          | —       | Supported interface languages for booking page.                                                |
| `bookingLimitsCount`                 | object  |          | —       | Count-based booking limits.                                                                    |
| `confirmationPolicy`                 | object  |          | —       | Manual confirmation policy configuration.                                                      |
| `hideOrganizerEmail`                 | boolean |          | —       | Hide organizer email from booking screen and notifications                                     |
| `showOptimizedSlots`                 | boolean |          | —       | Optimize time slot arrangement for availability                                                |
| `successRedirectUrl`                 | string  |          | —       | URL to redirect after successful booking                                                       |
| `destinationCalendar`                | object  |          | —       | Destination calendar for bookings.                                                             |
| `disableRescheduling`                | object  |          | —       | Settings for disabling rescheduling.                                                           |
| `assignAllTeamMembers`               | boolean |          | —       | Assign all current and future team members. Do not use with `hosts`                            |
| `minimumBookingNotice`               | integer |          | —       | Minimum minutes before event for booking                                                       |
| `bookingLimitsDuration`              | object  |          | —       | Duration-based booking limits.                                                                 |
| `lengthInMinutesOptions`             | array   |          | —       | Multiple duration options, must include `lengthInMinutes`                                      |
| `hideCalendarEventDetails`           | boolean |          | —       | Hide event details from calendar                                                               |
| `bookerActiveBookingsLimit`          | —       |          | —       | Limit concurrent active bookings per booker                                                    |
| `onlyShowFirstAvailableSlot`         | boolean |          | —       | Show only earliest available slot per day                                                      |
| `useDestinationCalendarEmail`        | boolean |          | —       | Use destination calendar email                                                                 |
| `allowReschedulingPastBookings`      | boolean |          | —       | Allow rescheduling of past events                                                              |
| `bookingRequiresAuthentication`      | boolean |          | —       | Require authentication for booking, only owner/org admin can book                              |
| `lockTimeZoneToggleOnBookingPage`    | boolean |          | —       | Prevent timezone changes on booking page                                                       |
| `requiresBookerEmailVerification`    | boolean |          | —       | Require email verification before booking                                                      |
| `rescheduleWithSameRoundRobinHost`   | boolean |          | —       | Keep same host when rescheduling round robin                                                   |
| `allowReschedulingCancelledBookings` | boolean |          | —       | Allow rebooking cancelled events                                                               |

***

### `Cal Update Team Event Type Webhook`

Integration name: **CAL\_UPDATE\_TEAM\_EVENT\_TYPE\_WEBHOOK**

Updates a webhook for a team event type. Use when you need to modify webhook configuration like active status, subscriber URL, triggers, or payload template.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                                                                                    | Description                                                           |
| ----------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `active`          | boolean |          | `true`                                                                                                                                                                     | Set to true to activate the webhook or false to deactivate it.        |
| `secret`          | string  |          | `"my-secret-key"`                                                                                                                                                          | Secret key used to sign the webhook payload for verification.         |
| `teamId`          | integer |     ✅    | `184346`                                                                                                                                                                   | The unique identifier of the team.                                    |
| `version`         | string  |          | `"2021-10-20"`                                                                                                                                                             | Webhook version.                                                      |
| `triggers`        | array   |          | `["BOOKING_CREATED","BOOKING_CANCELLED","BOOKING_RESCHEDULED"]`                                                                                                            | List of event types that will trigger this webhook.                   |
| `webhookId`       | string  |     ✅    | `"bd473e95-5964-449f-a625-ee182baf6aa3"`                                                                                                                                   | The unique identifier of the webhook to update.                       |
| `eventTypeId`     | integer |     ✅    | `4749816`                                                                                                                                                                  | The unique identifier of the event type within the team.              |
| `subscriberUrl`   | string  |          | `"https://webhook.site/updated-webhook"`                                                                                                                                   | The URL endpoint where webhook events will be sent via POST requests. |
| `payloadTemplate` | string  |          | `"{\"content\":\"A new event has been scheduled\",\"type\":\"{{type}}\",\"name\":\"{{title}}\",\"organizer\":\"{{organizer.name}}\",\"booker\":\"{{attendees.0.name}}\"}"` | Custom template for the webhook payload.                              |

***

### `Cal Update Team Information By Id`

Integration name: **CAL\_UPDATE\_TEAM\_INFORMATION\_BY\_ID**

Updates an existing team's information by its ID within a specified organization; the `slug`, if provided, must be unique within the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                        | Description                                                                       |
| ------------------------------ | ------- | :------: | ---------------------------------------------- | --------------------------------------------------------------------------------- |
| `bio`                          | string  |          | `"The best sales team in the world!"`          | New short description or biography for the team.                                  |
| `name`                         | string  |          | `"Sales Team"`                                 | New name for the team.                                                            |
| `slug`                         | string  |          | `"sales-team"`                                 | New URL-friendly identifier for the team; must be unique within the organization. |
| `orgId`                        | integer |     ✅    | —                                              | ID of the organization to which the team belongs.                                 |
| `theme`                        | string  |          | `"dark"`                                       | Visual theme for the team's booking pages.                                        |
| `teamId`                       | integer |     ✅    | —                                              | ID of the team to update.                                                         |
| `appLogo`                      | string  |          | `"https://example.com/new_app_logo.png"`       | URL for the new logo to be displayed within the Cal.com application.              |
| `logoUrl`                      | string  |          | `"https://example.com/new_logo.png"`           | URL for the team's new logo image.                                                |
| `metadata`                     | object  |          | —                                              | Custom key-value metadata for the team.                                           |
| `timeZone`                     | string  |          | `"America/New_York"`                           | Default IANA timezone identifier for the team.                                    |
| `bannerUrl`                    | string  |          | `"https://example.com/new_banner.jpg"`         | URL for the team's new banner image.                                              |
| `isPrivate`                    | boolean |          | `true`                                         | Set to true to make the team private.                                             |
| `weekStart`                    | string  |          | `"Sunday"`                                     | Designated start day of the week for the team's calendar views.                   |
| `brandColor`                   | string  |          | `"#FF5733"`                                    | New primary brand color for the team.                                             |
| `timeFormat`                   | integer |          | `12`                                           | Preferred time format.                                                            |
| `appIconLogo`                  | string  |          | `"https://example.com/new_app_icon.png"`       | URL for the new icon logo to be displayed within the Cal.com application.         |
| `calVideoLogo`                 | string  |          | `"https://example.com/new_cal_video_logo.png"` | URL for the new logo to be displayed in Cal Video calls.                          |
| `hideBranding`                 | boolean |          | `true`                                         | Set to true to hide Cal.com branding from the team's booking pages.               |
| `bookingLimits`                | object  |          | —                                              | Booking limits, conforming to Cal.com's schema.                                   |
| `darkBrandColor`               | string  |          | `"#C70039"`                                    | New brand color for dark mode.                                                    |
| `hideBookATeamMember`          | boolean |          | `true`                                         | Set to true to hide the `Book a Team Member` option on the team's booking page.   |
| `includeManagedEventsInLimits` | boolean |          | `true`                                         | Set to true to include team-managed events when calculating booking limits.       |

***

### `Cal Update Team Membership By Id`

Integration name: **CAL\_UPDATE\_TEAM\_MEMBERSHIP\_BY\_ID**

Updates properties of an existing team membership. Supports partial updates - only provided fields are modified while others remain unchanged. Requires appropriate team permissions (admin or owner role). Use `Get teams list` to find teamId and `Retrieve team memberships` to find membershipId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                                |
| ---------------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------ |
| `role`                 | string  |          | `"MEMBER"` | The role to assign to the team member.                                                     |
| `teamId`               | integer |     ✅    | —          | The unique identifier of the team.                                                         |
| `accepted`             | boolean |          | `true`     | Set to true to mark the membership invitation as accepted, or false to mark it as pending. |
| `membershipId`         | integer |     ✅    | —          | The unique identifier of the membership to update.                                         |
| `disableImpersonation` | boolean |          | `true`     | Set to true to prevent team administrators from impersonating this member.                 |

***

### `Cal Update Team Membership Properties`

Integration name: **CAL\_UPDATE\_TEAM\_MEMBERSHIP\_PROPERTIES**

Updates attributes like acceptance status, role, or impersonation settings for an existing team membership within an organization. Only provided fields are changed (partial update). Requires organization admin or owner privileges. Use list memberships endpoint to get valid `membershipId` values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example    | Description                                                                                |
| ---------------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------ |
| `role`                 | string  |          | `"MEMBER"` | The role to assign to the team member.                                                     |
| `orgId`                | integer |     ✅    | —          | The unique identifier of the organization to which the team belongs.                       |
| `teamId`               | integer |     ✅    | —          | The unique identifier of the team within the organization.                                 |
| `accepted`             | boolean |          | `true`     | Set to true to mark the membership invitation as accepted, or false to mark it as pending. |
| `membershipId`         | integer |     ✅    | —          | The unique identifier of the team membership to be updated.                                |
| `disableImpersonation` | boolean |          | `true`     | Set to true to prevent administrators from impersonating this team member.                 |

***

### `Cal Update User Profile Details`

Integration name: **CAL\_UPDATE\_USER\_PROFILE\_DETAILS**

Updates the profile information and preferences for the authenticated user, affecting only the fields provided in the request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                            | Description                                          |
| ------------------- | ------- | :------: | ---------------------------------- | ---------------------------------------------------- |
| `name`              | string  |          | `"Jane Doe"`                       | The user's new full name.                            |
| `email`             | string  |          | `"new.email@example.com"`          | The user's new email address.                        |
| `locale`            | string  |          | `"en"`                             | The user's preferred language and regional settings. |
| `timeZone`          | string  |          | `"America/New_York"`               | The user's preferred time zone.                      |
| `avatarUrl`         | string  |          | `"https://example.com/avatar.jpg"` | The URL of the user's new avatar image.              |
| `weekStart`         | string  |          | `"Monday"`                         | The preferred start day of the week for the user.    |
| `timeFormat`        | integer |          | `"12"`                             | The preferred time format for the user.              |
| `defaultScheduleId` | integer |          | `"1"`                              | The ID of the user's default schedule.               |

***

### `Cal Update User Schedule In Organization`

Integration name: **CAL\_UPDATE\_USER\_SCHEDULE\_IN\_ORGANIZATION**

Modifies an existing schedule for a specified user within an organization by updating only the provided fields; the organization, user, and schedule must already exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                 | Description                                                        |
| -------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------ |
| `name`         | string  |          | `"Weekday Work Hours"`  | New name for the schedule.                                         |
| `orgId`        | integer |     ✅    | —                       | Unique identifier for the organization.                            |
| `userId`       | integer |     ✅    | —                       | Unique identifier for the user.                                    |
| `timeZone`     | string  |          | `"America/Los_Angeles"` | New IANA time zone identifier for the schedule.                    |
| `isDefault`    | boolean |          | —                       | If true, sets this schedule as the user's default.                 |
| `overrides`    | array   |          | —                       | Date-specific overrides to regular availability.                   |
| `scheduleId`   | integer |     ✅    | —                       | Unique identifier for the schedule.                                |
| `availability` | array   |          | —                       | Regular availability rules defining the recurring weekly schedule. |

***

### `Cal Update Webhook By Id`

Integration name: **CAL\_UPDATE\_WEBHOOK\_BY\_ID**

Updates an existing Cal.com webhook by its `webhookId`, allowing partial modification of its attributes; only explicitly provided fields will be changed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                 | Description                                                           |
| ----------------- | ------- | :------: | ----------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `active`          | boolean |          | `true`                                                                  | Specifies if the webhook is active (`true`) or inactive (`false`).    |
| `secret`          | string  |          | `"mySuperSecretKey123"`                                                 | Secret key to sign the webhook payload for authenticity verification. |
| `triggers`        | array   |          | `["BOOKING_CREATED"]`                                                   | List of event types that trigger the webhook.                         |
| `webhookId`       | string  |     ✅    | `"wh_clxone65x0000mc0k5x9n3f7y"`                                        | The unique identifier of the webhook to be updated.                   |
| `subscriberUrl`   | string  |          | `"https://api.example.com/webhook-receiver"`                            | URL where the webhook payload will be sent.                           |
| `payloadTemplate` | string  |          | `"{\"event\": \"{{triggerEvent}}\", \"createdAt\": \"{{createdAt}}\"}"` | Template for the payload sent to `subscriberUrl`.                     |

***

### `Cal Update Webhook For Organization`

Integration name: **CAL\_UPDATE\_WEBHOOK\_FOR\_ORGANIZATION**

Updates an existing webhook for an organization. Use this to modify webhook settings such as the subscriber URL, activation status, event triggers, or verification secret. Requires admin access to the organization. Only fields provided in the request will be updated; omitted fields retain their current values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                     | Description                                                        |
| ----------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------ |
| `orgId`           | integer |     ✅    | `123`                                                       | Unique identifier of the organization the webhook belongs to.      |
| `active`          | boolean |          | `"true"`                                                    | Whether the webhook is active.                                     |
| `secret`          | string  |          | `"mysecretkey"`                                             | Secret key to sign the payload for verification using HMAC SHA256. |
| `triggers`        | array   |          | `["BOOKING_CREATED"]`                                       | List of event types that trigger the webhook.                      |
| `webhookId`       | string  |     ✅    | `"wh_clx08gf5g000008l3fdgy9jlo"`                            | Unique identifier of the webhook to update.                        |
| `subscriberUrl`   | string  |          | `"https://api.example.com/webhook-receiver"`                | URL where webhook notifications are sent.                          |
| `payloadTemplate` | string  |          | `"{\"event\": \"{{trigger}}\", \"data\": \"{{payload}}\"}"` | Custom template for the webhook payload.                           |

***


# Calendly

Your Toolhouse AI Worker can connect to Calendly using 55 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](https://toolhouse.app/auth-connections?authkit_slugs=calendly).

## Tools (55)

### `Calendly Cancel Scheduled Event`

Integration name: **CALENDLY\_CANCEL\_SCHEDULED\_EVENT**

Tool to cancel a scheduled Calendly event by creating a cancellation record. Use when you need to permanently cancel an existing, active event. The cancellation will trigger notifications to all invitees.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                           | Description                                                                                                                                    |
| ------------ | ------ | :------: | ----------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `reason`     | string |          | `"Testing the cancel event API endpoint for validation purposes"` | Optional text explanation for why the event is being canceled. This reason will be included in the cancellation notification sent to invitees. |
| `event_uuid` | string |     ✅    | `"292ad908-a87b-497b-a067-4bdc3f0c8baf"`                          | The unique identifier (UUID) of the scheduled event to cancel. This can be extracted from the scheduled\_events URI or event details.          |

***

### `Calendly Create Event Invitee`

Integration name: **CALENDLY\_CREATE\_EVENT\_INVITEE**

DEPRECATED: Use CALENDLY\_POST\_INVITEE instead. Tool to programmatically schedule Calendly meetings without UI redirects. Use when you need to book a meeting on behalf of an invitee via API. Requires a paid Calendly plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                                   | Description                                                                                                                                                                                                                               |
| ----------------------- | ------ | :------: | --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invitee`               | object |     ✅    | —                                                         | Details of the attendee being scheduled for the meeting                                                                                                                                                                                   |
| `location`              | object |     ✅    | —                                                         | Meeting location details. Required unless the event type omits location specification.                                                                                                                                                    |
| `tracking`              | object |          | —                                                         | UTM parameters and tracking information for marketing attribution.                                                                                                                                                                        |
| `event_type`            | string |     ✅    | `"https://api.calendly.com/event_types/AAAAAAAAAAAAAAAA"` | The event type to book. Accepts either the full URI (e.g., '<https://api.calendly.com/event\\_types/AAAAAAAAAAAAAAAA>') or just the UUID (e.g., 'AAAAAAAAAAAAAAAA'). Use list\_user\_s\_event\_types action to get available event types. |
| `start_time`            | string |     ✅    | `"2025-10-02T18:30:00Z"`                                  | Meeting start time in ISO 8601 UTC format (e.g., '2025-10-02T18:30:00Z'). Use list\_event\_type\_available\_times action to check available slots before booking.                                                                         |
| `event_guests`          | array  |          | `["alex@example.com","sam@example.com"]`                  | List of additional email addresses to include as guests in the meeting                                                                                                                                                                    |
| `questions_and_answers` | array  |          | —                                                         | List of custom question responses from the booking form. Include only if the event type has custom questions.                                                                                                                             |

***

### `Calendly Create Event Type`

Integration name: **CALENDLY\_CREATE\_EVENT\_TYPE**

Tool to create a new one-on-one event type (kind: solo) in Calendly. Use when you need to programmatically create a new event type for scheduling meetings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                             | Description                                                                                                                    |
| ------------------ | ------- | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `name`             | string  |     ✅    | `"15 Minute Meeting"`                               | The event type name that will be displayed to invitees                                                                         |
| `color`            | string  |          | `"#fff200"`                                         | Hexadecimal color value for the scheduling page. Must match pattern ^#\[a-f\d]{6}$ (e.g., '#fff200')                           |
| `owner`            | string  |     ✅    | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"` | The owner URI for this event type (e.g., '<https://api.calendly.com/users/AAAAAAAAAAAAAAAA>'). Must be a valid user URI.       |
| `active`           | boolean |          | `true`                                              | Indicates if the event type is active and available for booking. Defaults to false if not provided.                            |
| `locale`           | string  |          | `"en"`                                              | Locale for the event type's scheduling page language                                                                           |
| `duration`         | integer |          | `15`                                                | Length of sessions in minutes. Must be between 1 and 720 minutes. Should be one of the duration\_options if both are provided. |
| `locations`        | array   |          | `[{"kind":"zoom_conference"}]`                      | Configuration information for each possible location where the event can take place                                            |
| `description`      | string  |          | `"A quick 15 minute meeting to discuss your needs"` | The event type description that will be shown on the scheduling page                                                           |
| `duration_options` | array   |          | `[15,30,45,60]`                                     | Alternative duration choices for flexible meetings. Maximum 4 unique values allowed. Each must be between 1 and 720 minutes.   |

***

### `Calendly Create One Off Event Type`

Integration name: **CALENDLY\_CREATE\_ONE\_OFF\_EVENT\_TYPE**

Creates a temporary Calendly one-off event type for unique meetings outside regular availability, requiring valid host/co-host URIs, a future date/range for `date_setting`, and a positive `duration`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| -------------- | ------- | :------: | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `host`         | string  |     ✅    | —                                                           | The URI of the user who will be the host of the one-off event (e.g., '<https://api.calendly.com/users/xxx>')                                                                                                                                                                                                                                                                                                                                                                                          |
| `name`         | string  |     ✅    | —                                                           | Name of the one-off event type                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `duration`     | integer |     ✅    | —                                                           | Duration of the event in minutes. Note: Pass this as 'duration', not 'duration\_minutes'.                                                                                                                                                                                                                                                                                                                                                                                                             |
| `location`     | object  |          | `{"kind":"zoom_conference"}`                                | Location configuration for the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `timezone`     | string  |          | `"America/New_York"`                                        | IANA timezone identifier for the event scheduling. Determines how times are interpreted and displayed to invitees.                                                                                                                                                                                                                                                                                                                                                                                    |
| `date_setting` | —       |     ✅    | `{"days":30,"type":"days_in_future","only_weekdays":false}` | Date & time availability for this one-off event. Must be an object with a `type` key equal to ONE of: `'date_range'`, `'days_in_future'`, or `'spots'`. • `date_range` → include `start_date` & `end_date` (YYYY-MM-DD). • `days_in_future` → include `days` (int) and `only_weekdays` (bool). • `spots` → include `spots` – list of objects with `start_time` and `end_time` (ISO 8601 datetime strings). Do NOT use values like `'available_moving'` – that pertains to Shares, not one-off events. |

***

### `Calendly Create Scheduling Link`

Integration name: **CALENDLY\_CREATE\_SCHEDULING\_LINK**

Create a single-use scheduling link. Creates a scheduling link that can be used to book an event. The link allows invitees to schedule up to the specified maximum number of events. Once the limit is reached, the link becomes inactive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                   |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `owner`           | string  |     ✅    | —       | Event type URI (e.g., '<https://api.calendly.com/event\\_types/>...')                                                         |
| `owner_type`      | string  |          | —       | Type of owner, typically 'EventType'                                                                                          |
| `max_event_count` | integer |          | —       | The max number of events that can be scheduled using this scheduling link. Must be exactly 1 for single-use scheduling links. |

***

### `Calendly Create Share`

Integration name: **CALENDLY\_CREATE\_SHARE**

Creates a customizable, one-time share link for a Calendly event type, allowing specific overrides to its settings (e.g., duration, availability, location) without altering the original event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                                                                                                                                                                                        | Description                                                                                                                                                                                                                                                                                                                                 |
| ------------------------------ | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                         | string  |          | `"Quick Chat with John"`                                                                                                                                                                                       | Custom name for the shared link; defaults to event type name if unspecified.                                                                                                                                                                                                                                                                |
| `duration`                     | integer |          | `"30"`                                                                                                                                                                                                         | Custom event duration in minutes, overriding event type default.                                                                                                                                                                                                                                                                            |
| `end_date`                     | string  |          | `"2024-12-31"`                                                                                                                                                                                                 | End date (YYYY-MM-DD) for shared link availability; required if `period_type` is 'fixed'.                                                                                                                                                                                                                                                   |
| `event_type`                   | string  |     ✅    | `"https://api.calendly.com/event_types/GBGBDCAADAEDCRZ2"`                                                                                                                                                      | URI of the event type to base this share on.                                                                                                                                                                                                                                                                                                |
| `start_date`                   | string  |          | `"2024-01-01"`                                                                                                                                                                                                 | Start date (YYYY-MM-DD) for shared link availability; required if `period_type` is 'fixed'.                                                                                                                                                                                                                                                 |
| `period_type`                  | string  |          | —                                                                                                                                                                                                              | Availability period type: 'available\_moving' (shows actual available slots for `max_booking_time` days), 'moving' (available for `max_booking_time` days), 'fixed' (within `start_date`/`end_date`), 'unlimited'.                                                                                                                          |
| `hide_location`                | boolean |          | —                                                                                                                                                                                                              | If true, hides event location until booking (only if event type has a single custom location).                                                                                                                                                                                                                                              |
| `duration_options`             | array   |          | `"[15, 30, 45]"`                                                                                                                                                                                               | Alternative selectable durations in minutes, overriding event type options.                                                                                                                                                                                                                                                                 |
| `max_booking_time`             | integer |          | `"60"`                                                                                                                                                                                                         | Max days in advance an invitee can book; required if `period_type` is 'moving' or 'available\_moving'.                                                                                                                                                                                                                                      |
| `location_configurations`      | array   |          | `[{"kind":"physical","location":"123 Business Ave, Suite 200","additional_info":"Main conference room"},{"kind":"zoom_conference","additional_info":"Zoom link provided upon booking"}]`                       | Custom location settings that override the event type's default locations. Each configuration specifies a location type and associated details.                                                                                                                                                                                             |
| `availability__rule__rules`    | array   |          | `[{"type":"wday","wday":"monday","intervals":[{"to":"17:00","from":"09:00"}]},{"type":"wday","wday":"tuesday","intervals":[{"to":"16:00","from":"10:00"}]},{"type":"wday","wday":"wednesday","intervals":[]}]` | List of custom availability rules that override the event type's default schedule. Provide an array of objects EACH containing: `type`=`'wday'`, `wday` (weekday), and `intervals` (list of `{from, to}` times). Field names are case-sensitive – use **`wday`, `from`, `to`** exactly. Must be combined with `availability_rule_timezone`. |
| `availability__rule__timezone` | string  |          | `"America/New_York"`                                                                                                                                                                                           | IANA timezone (e.g., 'America/New\_York') for custom availability rules. Required with `availability_rule_rules`.                                                                                                                                                                                                                           |

***

### `Calendly Create Single Use Scheduling Link`

Integration name: **CALENDLY\_CREATE\_SINGLE\_USE\_SCHEDULING\_LINK**

Creates a one-time, single-use scheduling link for an active Calendly event type, expiring after one booking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                   | Description                                                                                                                                                                      |
| ----------------- | ------- | :------: | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `owner`           | string  |     ✅    | `"https://api.calendly.com/event_types/GBGBDCAADAEDCRZ2"` | The URI of the Calendly Event Type that will own this single-use scheduling link. This Event Type's settings (e.g., duration, availability) will apply to the scheduled meeting. |
| `owner_type`      | string  |     ✅    | `"EventType"`                                             | Identifies the owner resource type, which is 'EventType'.                                                                                                                        |
| `max_event_count` | integer |     ✅    | `"1"`                                                     | The maximum number of events that can be scheduled using this link. For a single-use link, this value must be 1.                                                                 |

***

### `Calendly Create Webhooks`

Integration name: **CALENDLY\_CREATE\_WEBHOOKS**

Tool to create a webhook subscription for receiving Calendly event notifications. Use when you need to set up automated notifications for events like meeting bookings or cancellations. Organization scope triggers webhooks for all events organization-wide, while user/group scopes limit triggering to specific users or groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                         | Description                                                                                                                                                                                                                                                                                           |
| -------------- | ------ | :------: | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`          | string |     ✅    | `"https://webhook.site/test-calendly-webhook"`                                  | The publicly accessible HTTPS callback URL where webhook events will be sent via POST requests. Must be active and able to receive POST requests.                                                                                                                                                     |
| `user`         | string |          | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"`                             | URI reference to the user for user-scoped webhooks (e.g., '<https://api.calendly.com/users/AAAAAAAAAAAAAAAA>'). Required when scope is 'user', otherwise omit.                                                                                                                                        |
| `group`        | string |          | `"https://api.calendly.com/groups/AAAAAAAAAAAAAAAA"`                            | URI reference to the group for group-scoped webhooks (e.g., '<https://api.calendly.com/groups/AAAAAAAAAAAAAAAA>'). Required when scope is 'group', otherwise omit.                                                                                                                                    |
| `scope`        | string |     ✅    | `"organization"`                                                                | Subscription scope determining which events trigger the webhook. 'organization' triggers for all events in the organization, 'user' triggers only for a specific user's events, 'group' triggers only for a specific group's events.                                                                  |
| `events`       | array  |     ✅    | `["invitee.created","invitee.canceled"]`                                        | List of event types to subscribe to. Valid values: 'invitee.created', 'invitee.canceled', 'invitee\_no\_show\.created', 'invitee\_no\_show\.deleted', 'routing\_form\_submission.created', 'event\_type.created', 'event\_type.deleted', 'event\_type.updated'. At least one event must be specified. |
| `signing_key`  | string |          | `"mysecretkey123"`                                                              | Optional secret key (6-24 characters) used to generate signatures for webhook security validation. Helps verify that webhook POST requests are genuinely from Calendly.                                                                                                                               |
| `organization` | string |     ✅    | `"https://api.calendly.com/organizations/dbed26fe-cb7f-4224-8f10-3331cecdeb13"` | URI reference to the organization that owns this webhook subscription (e.g., '<https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA>'). Required for all webhook subscriptions.                                                                                                                    |

***

### `Calendly Delete Invitee Data`

Integration name: **CALENDLY\_DELETE\_INVITEE\_DATA**

Permanently removes all invitee data associated with the provided emails from past organization events, for data privacy compliance (requires Enterprise subscription; deletion may take up to one week).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                               | Description                                                                       |
| --------- | ----- | :------: | ----------------------------------------------------- | --------------------------------------------------------------------------------- |
| `emails`  | array |     ✅    | `["test_user1@example.com","test_user2@example.com"]` | Invitee email addresses for whom all associated data will be permanently removed. |

***

### `Calendly Delete Invitee No Show`

Integration name: **CALENDLY\_DELETE\_INVITEE\_NO\_SHOW**

Deletes an Invitee No-Show record by its `uuid` to reverse an invitee's 'no-show' status; the `uuid` must refer to an existing record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                        | Description                                                               |
| --------- | ------ | :------: | ------------------------------ | ------------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"FHKLMNPQRSTUVWXY1234567890"` | The unique identifier (UUID) of the Invitee No-Show record to be removed. |

***

### `Calendly Delete Organization Membership`

Integration name: **CALENDLY\_DELETE\_ORGANIZATION\_MEMBERSHIP**

Tool to remove a user from a Calendly organization by membership UUID. Use when you need to revoke a user's access to an organization. Requires admin rights; organization owners cannot be removed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                         |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"34190604-bb77-4f51-8486-7e096b18b12d"` | The unique identifier of the organization membership to be removed. This is the membership UUID, not the user UUID. |

***

### `Calendly Delete Scheduled Event Data`

Integration name: **CALENDLY\_DELETE\_SCHEDULED\_EVENT\_DATA**

For Enterprise users, initiates deletion of an organization's scheduled event data between a `start_time` and `end_time` (inclusive, where `start_time` must be <= `end_time`); actual data deletion may take up to 7 days to complete.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                  | Description                                                                                                                                     |
| ------------ | ------ | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `end_time`   | string |     ✅    | `"2023-12-31T23:59:59Z"` | Defines the end of the data deletion period (UTC). Events ending at or before this time will be included. Must be within the past 24 months.    |
| `start_time` | string |     ✅    | `"2023-01-01T00:00:00Z"` | Defines the start of the data deletion period (UTC). Events starting at or after this time will be included. Must be within the past 24 months. |

***

### `Calendly Delete Webhook Subscription`

Integration name: **CALENDLY\_DELETE\_WEBHOOK\_SUBSCRIPTION**

Deletes an existing webhook subscription to stop Calendly sending event notifications to its registered callback URL; this operation is idempotent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                             |
| -------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------- |
| `webhook_uuid` | string |     ✅    | `"f4c1f357-3de3-4c28-905b-8a07b605717d"` | The unique identifier (UUID) of the webhook subscription to be deleted. |

***

### `Calendly Get Current User`

Integration name: **CALENDLY\_GET\_CURRENT\_USER**

DEPRECATED: Use CALENDLY\_GET\_USER instead. Retrieves detailed information about the currently authenticated Calendly user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Calendly Get Event`

Integration name: **CALENDLY\_GET\_EVENT**

Use to retrieve a specific Calendly scheduled event by its UUID, provided the event exists in the user's Calendly account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                     |
| --------- | ------ | :------: | -------------------- | ----------------------------------------------- |
| `uuid`    | string |     ✅    | `"AAAAAAAAAAAAAAAA"` | Unique identifier (UUID) of the Calendly event. |

***

### `Calendly Get Event Invitee`

Integration name: **CALENDLY\_GET\_EVENT\_INVITEE**

Retrieves detailed information about a specific invitee of a scheduled event, using their unique UUIDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                          |
| -------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `event_uuid`   | string |     ✅    | `"f1b2c3d4-e5f6-7890-1234-56789abcdef0"` | The unique identifier (UUID) of the scheduled event.                 |
| `invitee_uuid` | string |     ✅    | `"gfedcba0-1234-5678-90fe-dcba98765432"` | The unique identifier (UUID) of the invitee for the specified event. |

***

### `Calendly Get Event Type`

Integration name: **CALENDLY\_GET\_EVENT\_TYPE**

Retrieves details for a specific Calendly event type, identified by its UUID, which must be valid and correspond to an existing event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                                                                                                            |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `uuid`    | string |          | `"AAAAAAAAAAAAAAAA"` | Unique identifier (UUID) for the event type. This is a required path parameter - extract the UUID from the event type URI (e.g., for '<https://api.calendly.com/event\\_types/abc123>', use 'abc123'). |

***

### `Calendly Get Event Type Availability`

Integration name: **CALENDLY\_GET\_EVENT\_TYPE\_AVAILABILITY**

Tool to retrieve availability schedules configured for a specific Calendly event type. Use when you need to get the availability rules including day-of-week schedules and date-specific overrides.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                       | Description                                                                                                                                                                                                                             |
| ------------ | ------ | :------: | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`       | string |          | `"https://api.calendly.com/users/BBBBBBBBBBBBBBBB"`                           | URI of the user associated with the event type. Optional parameter to filter by user.                                                                                                                                                   |
| `event_type` | string |     ✅    | `"https://api.calendly.com/event_types/73ec12fc-6c7b-4869-b927-6141c9e716e9"` | URI of the event type whose availability schedules are to be listed. Must be a valid Calendly event type URI. Retrieve this URI from CALENDLY\_LIST\_EVENT\_TYPES; using a URI not owned by the authenticated user returns a 403 error. |

***

### `Calendly Get Group`

Integration name: **CALENDLY\_GET\_GROUP**

Retrieves all attributes of a specific Calendly group by its UUID; the group must exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                     |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------- |
| `uuid`    | string |     ✅    | `"f73d2bab-7586-4679-8c11-8ebb2gh9fca7"` | Unique identifier (UUID) of the Calendly group. |

***

### `Calendly Get Group Relationship`

Integration name: **CALENDLY\_GET\_GROUP\_RELATIONSHIP**

Retrieves a specific Calendly group relationship by its valid and existing UUID, providing details on user-group associations and membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example               | Description                                                             |
| --------- | ------ | :------: | --------------------- | ----------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"GRPUUIDEXAMPLE123"` | The unique identifier (UUID) of the group relationship to be retrieved. |

***

### `Calendly Get Invitee No Show`

Integration name: **CALENDLY\_GET\_INVITEE\_NO\_SHOW**

Retrieves details for a specific Invitee No Show record by its UUID; an Invitee No Show is marked when an invitee does not attend a scheduled event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                             |
| --------- | ------ | :------: | -------------------- | ----------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"NO_SHOW_UUID_123"` | The unique identifier (UUID) of the Invitee No Show record to retrieve. |

***

### `Calendly Get Organization`

Integration name: **CALENDLY\_GET\_ORGANIZATION**

Tool to retrieve information about a specific Calendly organization. Use when you need to get organization details such as name, slug, or timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"dbed26fe-cb7f-4224-8f10-3331cecdeb13"` | The unique identifier (UUID) of the organization to retrieve. This is the alphanumeric string at the end of the organization URI. |

***

### `Calendly Get Organization Invitation`

Integration name: **CALENDLY\_GET\_ORGANIZATION\_INVITATION**

Retrieves a specific Calendly organization invitation using its UUID and the parent organization's UUID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                |
| ---------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------ |
| `uuid`     | string |     ✅    | `"11111111-2222-3333-4444-555555555555"` | The unique identifier (UUID) of the specific organization invitation to retrieve.          |
| `org_uuid` | string |     ✅    | `"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"` | The unique identifier (UUID) of the Calendly organization to which the invitation belongs. |

***

### `Calendly Get Organization Membership`

Integration name: **CALENDLY\_GET\_ORGANIZATION\_MEMBERSHIP**

Retrieves a specific Calendly organization membership by its UUID, returning all its attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                              |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------ |
| `uuid`    | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | The unique identifier (UUID) of the organization membership to retrieve. |

***

### `Calendly Get Routing Form`

Integration name: **CALENDLY\_GET\_ROUTING\_FORM**

Retrieves a specific routing form by its UUID, providing its configuration details including questions and routing logic.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                   |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"cCHLAd369cc32c96707e"` | The unique identifier (UUID) of the routing form to retrieve. |

***

### `Calendly Get Routing Form Submission`

Integration name: **CALENDLY\_GET\_ROUTING\_FORM\_SUBMISSION**

Tool to retrieve details about a specific routing form submission by its UUID. Use when you need submission details including questions, answers, and routing results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                              |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `uuid`    | string |     ✅    | `"AAAAAAAAAAAAAAAA"` | The unique identifier (UUID) of the routing form submission to retrieve. Extract from submission URI or webhook payload. |

***

### `Calendly Get Sample Webhook Data`

Integration name: **CALENDLY\_GET\_SAMPLE\_WEBHOOK\_DATA**

Tool to retrieve sample webhook payload data for testing webhook subscriptions. Use when you need to verify webhook setup and understand the data structure before creating actual webhook subscriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                     | Description                                                                                                                                                                           |
| -------------- | ------ | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`         | string |          | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"`         | The URI of the user to retrieve sample webhook data for. Required when scope is 'user', optional when scope is 'organization'. Format: <https://api.calendly.com/users/{user\\_uuid}> |
| `event`        | string |     ✅    | `"invitee.created"`                                         | The webhook event type to retrieve sample data for. Valid values: 'invitee.created', 'invitee.canceled', 'routing\_form\_submission.created'                                          |
| `scope`        | string |     ✅    | `"organization"`                                            | The scope level for the webhook data. Valid values: 'user' or 'organization'. Note: routing\_form\_submission.created events require 'organization' scope.                            |
| `organization` | string |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | The URI of the organization to retrieve sample webhook data for. This parameter is always required. Format: <https://api.calendly.com/organizations/{organization\\_uuid}>            |

***

### `Calendly Get User`

Integration name: **CALENDLY\_GET\_USER**

Retrieves comprehensive details for an existing Calendly user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uuid`    | string |          | `"3fa85f64-5717-4562-b3fc-2c963f66afa6"` | The unique identifier (UUID) of the user. Alternatively, use the literal string "me" to refer to the currently authenticated user (the caller). Defaults to "me" (current user) if not specified. |

***

### `Calendly Get User Availability Schedule`

Integration name: **CALENDLY\_GET\_USER\_AVAILABILITY\_SCHEDULE**

Retrieves an existing user availability schedule by its UUID; this schedule defines the user's default hours of availability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                            |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------ |
| `uuid`    | string |     ✅    | `"AAAAAAAAAAAAAAAA"` | Unique identifier (UUID) of the availability schedule. |

***

### `Calendly Get Webhook Subscription`

Integration name: **CALENDLY\_GET\_WEBHOOK\_SUBSCRIPTION**

Retrieves the details of an existing webhook subscription, identified by its UUID, including its callback URL, subscribed events, scope, and state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                       |
| -------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------- |
| `webhook_uuid` | string |     ✅    | `"whk_2125920c7f5b4c979351d2f00c09a583"` | Unique identifier (UUID) of the webhook subscription to retrieve. |

***

### `Calendly Invitee No Show`

Integration name: **CALENDLY\_INVITEE\_NO\_SHOW**

Tool to mark an invitee as a no-show for a scheduled event. Use when an invitee fails to attend their scheduled meeting and you need to record their absence in Calendly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                      | Description                                                                                                                                                                                                                       |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invitee` | string |     ✅    | `"https://api.calendly.com/scheduled_events/GBGBDCAADAEDCRZ2/invitees/7c1dbe46-bd84-42e2-9b97-05e2fb379bfe"` | URI of the Invitee to be marked as a no-show. This must be a valid URI referencing an existing invitee from a scheduled event (e.g., '<https://api.calendly.com/scheduled\\_events/GBGBDCAADAEDCRZ2/invitees/AAAAAAAAAAAAAAAA>'). |

***

### `Calendly List Activity Log Entries`

Integration name: **CALENDLY\_LIST\_ACTIVITY\_LOG\_ENTRIES**

Retrieves a list of activity log entries for a specified Calendly organization (requires an active Enterprise subscription), supporting filtering, sorting, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`            | array   |          | `"[\"occurred_at:desc\"]"`                                  | Specifies the sort order for the results. Provide a list of sort criteria strings, each in the format 'field:direction' (e.g., 'occurred\_at:asc'). Valid fields and directions are defined by SortEnm.                                                                                                                                                                                           |
| `actor`           | array   |          | `"[\"https://api.calendly.com/users/BBBBBBBBBBBBBBBB\"]"`   | Filters activity log entries by the users who performed the actions. Provide a list of user URIs.                                                                                                                                                                                                                                                                                                 |
| `count`           | integer |          | `"10"`                                                      | The maximum number of activity log entries to return per page.                                                                                                                                                                                                                                                                                                                                    |
| `action`          | array   |          | `"[\"user.created\", \"event_type.updated\"]"`              | Filters entries by the specific action performed (e.g., 'user.created', 'event\_type.updated'). Provide a list of action strings.                                                                                                                                                                                                                                                                 |
| `namespace`       | array   |          | `"[\"user_management\", \"event_type_management\"]"`        | Filters entries by their category or domain (namespace). Provide a list of namespace strings. Common examples include 'user\_management' or 'event\_type\_management'.                                                                                                                                                                                                                            |
| `page_token`      | string  |          | `"LXhZW M1NmZNGM2YtoyNjc"`                                  | Token for pagination, used to fetch the next page of results if the collection spans multiple pages.                                                                                                                                                                                                                                                                                              |
| `search_term`     | string  |          | `"user.created"`                                            | Filters entries based on the search term. Supported operators: `\|` (OR, e.g., `user.created \| group.created`), `+` (AND, e.g., `user.created + user.invited`), `" "` (exact phrase, e.g., `"John Doe"`), `-` (exclude term, e.g., `user.created -admin`), `()` (precedence, e.g., `(user.created \| user.invited) + team1`), and `*` (prefix search, e.g., `user.email_address:*@example.com`). |
| `organization`    | string  |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | URI of the Calendly organization for which to retrieve activity log entries.                                                                                                                                                                                                                                                                                                                      |
| `max_occurred_at` | string  |          | `"2023-12-31T23:59:59.999Z"`                                | Timestamp in ISO 8601 UTC format (e.g., '2020-01-02T03:04:05.678Z'). Filters entries to include only those that occurred at or before this time.                                                                                                                                                                                                                                                  |
| `min_occurred_at` | string  |          | `"2023-01-01T00:00:00.000Z"`                                | Timestamp in ISO 8601 UTC format (e.g., '2020-01-02T03:04:05.678Z'). Filters entries to include only those that occurred at or after this time.                                                                                                                                                                                                                                                   |

***

### `Calendly List Event Invitees`

Integration name: **CALENDLY\_LIST\_EVENT\_INVITEES**

Retrieves a list of invitees for a specified Calendly event UUID, with options to filter by status or email, and sort by creation time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                 | Description                                                                                                        |
| ------------ | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `sort`       | string  |          | `"created_at:asc"`      | Order results by the `created_at` field; use 'created\_at:asc' for ascending or 'created\_at:desc' for descending. |
| `uuid`       | string  |     ✅    | —                       | The unique identifier (UUID) of the event for which to list invitees.                                              |
| `count`      | integer |          | —                       | The number of invitees to return per page. Default is 20.                                                          |
| `email`      | string  |          | `"invitee@example.com"` | Filter results by a specific invitee's email address.                                                              |
| `status`     | string  |          | `"active"`              | Filter invitees by their status. Can be 'active' or 'canceled'.                                                    |
| `page_token` | string  |          | —                       | A token to retrieve the next or previous page of results in a paginated collection.                                |

***

### `Calendly List Events`

Integration name: **CALENDLY\_LIST\_EVENTS**

DEPRECATED: Use CALENDLY\_LIST\_SCHEDULED\_EVENTS instead. Retrieves a list of scheduled Calendly events. Exactly one of `user`, `organization`, or `group` must be provided to scope the query. The `invitee_email` parameter is a filter and cannot be used as a scope. Admin rights may be needed when filtering by `organization` or `group`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                     | Description                                                                                                                                                                                                                                                                                                                                 |
| ---------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`           | string  |          | `"start_time:asc"`                                          | Sort order for the results. Accepts comma-separated `field:direction` values. Supported field: `start_time`. Supported directions: `asc` (ascending), `desc` (descending).                                                                                                                                                                  |
| `user`           | string  |          | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"`         | Full Calendly API URI of the user whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/users/{uuid}>'. Shortcuts like 'me' are NOT supported - use CALENDLY\_GET\_CURRENT\_USER to get the user URI first. Exactly ONE of `user`, `organization`, or `group` must be supplied to scope the query. |
| `count`          | integer |          | `"10"`                                                      | The number of events to return per page.                                                                                                                                                                                                                                                                                                    |
| `group`          | string  |          | `"https://api.calendly.com/groups/AAAAAAAAAAAAAAAA"`        | Full Calendly API URI of the group (team) whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/groups/{uuid}>'. Exactly ONE of `user`, `organization`, or `group` must be provided to scope the query.                                                                                            |
| `status`         | string  |          | `"active"`                                                  | Filter events by their status.                                                                                                                                                                                                                                                                                                              |
| `page_token`     | string  |          | `"dGhpcyBpcyB0aGUgbmV4dCBwYWdlIHRva2Vu"`                    | Token for pagination to retrieve the next or previous set of results from the collection.                                                                                                                                                                                                                                                   |
| `organization`   | string  |          | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | Full Calendly API URI of the organization whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/organizations/{uuid}>'. Exactly ONE of `user`, `organization`, or `group` is required. Admin privileges may be required.                                                                           |
| `invitee_email`  | string  |          | `"invitee@example.com"`                                     | Invitee's email address to filter events by. This is a filter parameter and cannot be used as a scope. Exactly one of `user`, `organization`, or `group` must be provided to scope the query.                                                                                                                                               |
| `max_start_time` | string  |          | `"2024-01-31T23:59:59.999999Z"`                             | Include events with start times at or before this UTC timestamp (e.g., '2020-01-02T03:04:05.678123Z').                                                                                                                                                                                                                                      |
| `min_start_time` | string  |          | `"2024-01-01T00:00:00.000000Z"`                             | Include events with start times at or after this UTC timestamp (e.g., '2020-01-02T03:04:05.678123Z').                                                                                                                                                                                                                                       |

***

### `Calendly List Event Type Available Times`

Integration name: **CALENDLY\_LIST\_EVENT\_TYPE\_AVAILABLE\_TIMES**

Fetches available time slots for a Calendly event type within a specified time range; results are not paginated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                   | Description                                                                                                                                                                               |
| ------------ | ------ | :------: | --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `end_time`   | string |     ✅    | `"2023-10-27T17:00:00Z"`                                  | End datetime (exclusive) of the requested availability range, in UTC ISO 8601 format (e.g., 'YYYY-MM-DDTHH:MM:SSZ'). The duration between start\_time and end\_time cannot exceed 7 days. |
| `event_type` | string |     ✅    | `"https://api.calendly.com/event_types/GBGBDCAADAEDCRZ2"` | The URI of the event type for which to find available times. This can be obtained by listing event types or from an event type object.                                                    |
| `start_time` | string |     ✅    | `"2023-10-26T09:00:00Z"`                                  | Start datetime (inclusive) of the requested availability range, in UTC ISO 8601 format (e.g., 'YYYY-MM-DDTHH:MM:SSZ'). Must be in the future.                                             |

***

### `Calendly List Event Type Memberships`

Integration name: **CALENDLY\_LIST\_EVENT\_TYPE\_MEMBERSHIPS**

Tool to retrieve a list of event type hosts (memberships) for a specific event type. Use when you need to see which users are configured as hosts for an event type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                       | Description                                                                                                                                             |
| ------------ | ------- | :------: | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `count`      | integer |          | `10`                                                                          | Number of results to return per page. Must be a positive integer.                                                                                       |
| `event_type` | string  |     ✅    | `"https://api.calendly.com/event_types/73ec12fc-6c7b-4869-b927-6141c9e716e9"` | URI of the event type to retrieve memberships for. Format: '<https://api.calendly.com/event\\_types/{uuid}>'. Pass the complete URI, not just the UUID. |
| `page_token` | string  |          | —                                                                             | Pagination token to retrieve a specific page of results. Use the 'next\_page\_token' from a previous response to get the next page.                     |

***

### `Calendly List Event Types`

Integration name: **CALENDLY\_LIST\_EVENT\_TYPES**

Tool to list all Event Types associated with a specified User or Organization. Use when you need to retrieve event types for a user or organization. Use scheduling\_url from results directly; do not manually construct event type URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                                                   | Description                                                                                                                                                                                         |
| ---------------------------- | ------- | :------: | ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`                       | string  |          | `"name:asc"`                                                              | Order results by field(s) and direction. Accepts comma-separated list of field:direction values (e.g., 'name:asc,created\_at:desc'). Default: name:asc                                              |
| `user`                       | string  |          | `"https://api.calendly.com/users/BBBBBBBBBBBBBBBB"`                       | URI of the user whose event types to list. Exactly one of 'user' or 'organization' must be provided (mutually exclusive).                                                                           |
| `count`                      | integer |          | `20`                                                                      | Number of results per page.                                                                                                                                                                         |
| `active`                     | boolean |          | —                                                                         | Filter by active status. Return only active event types if true, only inactive if false, or all event types if omitted.                                                                             |
| `page_token`                 | string  |          | —                                                                         | Pagination token for retrieving subsequent pages. Check pagination.next\_page\_token in the response; if non-null, pass it as page\_token in the next call. Repeat until next\_page\_token is null. |
| `organization`               | string  |          | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"`               | URI of the organization whose event types to list. Exactly one of 'organization' or 'user' must be provided (mutually exclusive).                                                                   |
| `admin_managed`              | boolean |          | —                                                                         | Filter by admin management status. True for admin-managed only, false to exclude admin-managed, or omitted to include all.                                                                          |
| `user_availability_schedule` | string  |          | `"https://api.calendly.com/user_availability_schedules/CCCCCCCCCCCCCCCC"` | URI of the user's availability schedule. Used with 'user' parameter to filter event types by primary availability schedule.                                                                         |

***

### `Calendly List Group Relationships`

Integration name: **CALENDLY\_LIST\_GROUP\_RELATIONSHIPS**

Retrieves a list of group relationships defining an owner's role (e.g., member, admin) within a group; an owner can have one membership per group but multiple admin roles across different groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                               | Description                                                                                                                       |
| -------------- | ------- | :------: | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `count`        | integer |          | `20`                                                                  | Number of records per page (max 100).                                                                                             |
| `group`        | string  |          | `"https://api.calendly.com/groups/GROUP_UUID"`                        | Filter results by group URI.                                                                                                      |
| `owner`        | string  |          | `"https://api.calendly.com/organization_memberships/MEMBERSHIP_UUID"` | Filter results by owner URI (Organization Membership or Invitation URI).                                                          |
| `page_token`   | string  |          | `"NEXT_PAGE_TOKEN_EXAMPLE"`                                           | Token for retrieving a specific page of results, obtained from `next_page_token` or `previous_page_token` in a previous response. |
| `organization` | string  |          | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"`           | Filter results by organization URI.                                                                                               |

***

### `Calendly List Groups`

Integration name: **CALENDLY\_LIST\_GROUPS**

Returns a list of groups for a specified Calendly organization URI, supporting pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                     | Description                                                                                                                                                                                      |
| -------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `count`        | integer |          | `10`                                                        | The maximum number of groups to return per page. The value can range from 1 to 100.                                                                                                              |
| `page_token`   | string  |          | `"NEXT_PAGE_TOKEN_EXAMPLE"`                                 | A token to retrieve a specific page of results. Pass this value from a previous response's 'next\_page\_token' to fetch the next set of groups, or 'previous\_page\_token' for the previous set. |
| `organization` | string  |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | The URI of the organization to filter groups by. For example, '<https://api.calendly.com/organizations/ORGANIZATION\\_UUID>'.                                                                    |

***

### `Calendly List Organization Invitations`

Integration name: **CALENDLY\_LIST\_ORGANIZATION\_INVITATIONS**

Retrieves a list of invitations for a specific organization, identified by its UUID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                   | Description                                                                                                |
| ------------ | ------- | :------: | ------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `sort`       | string  |          | `"created_at:desc"`       | Order of results by field(s) and direction (asc/desc); e.g., 'created\_at:asc' or 'email:desc,status:asc'. |
| `uuid`       | string  |     ✅    | `"org_00123456789abcdef"` | Unique identifier (UUID) of the organization.                                                              |
| `count`      | integer |          | `10`                      | Number of results to return per page.                                                                      |
| `email`      | string  |          | `"test@example.com"`      | Filter by the recipient's email address.                                                                   |
| `status`     | string  |          | `"pending"`               | Filter by invitation status.                                                                               |
| `page_token` | string  |          | `" nextPageTokenXYZ=="`   | Pagination token to access a specific page of results.                                                     |

***

### `Calendly List Organization Memberships`

Integration name: **CALENDLY\_LIST\_ORGANIZATION\_MEMBERSHIPS**

Retrieves a list of organization memberships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                     | Description                                                                                              |
| -------------- | ------- | :------: | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `user`         | string  |          | `"https://api.calendly.com/users/AAABBBBCCCCDDDDEEEEE"`     | Filter memberships by the URI of the user. At least one of 'organization' or 'user' is required.         |
| `count`        | integer |          | `10`                                                        | The number of membership records to return per page. Must be an integer between 1 and 100, inclusive.    |
| `email`        | string  |          | `"test_user@example.com"`                                   | Filter memberships by the email address of the user. Must be used with 'organization' or 'user'.         |
| `page_token`   | string  |          | `"NEXT_PAGE_TOKEN"`                                         | The token to retrieve the next or previous page of results in a paginated collection.                    |
| `organization` | string  |          | `"https://api.calendly.com/organizations/EBHAAFHDCAEQTSEZ"` | Filter memberships by the URI of the organization. At least one of 'organization' or 'user' is required. |

***

### `Calendly List Outgoing Communications`

Integration name: **CALENDLY\_LIST\_OUTGOING\_COMMUNICATIONS**

Retrieves a list of outgoing SMS communications for a specified organization; requires an Enterprise subscription and if filtering by creation date, both `min_created_at` and `max_created_at` must be provided to form a valid range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                     | Description                                                                                                              |
| ---------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `count`          | integer |          | —                                                           | The number of records to return per page. Must be between 1 and 100, inclusive.                                          |
| `page_token`     | string  |          | `"NEXT_PAGE_TOKEN"`                                         | The token to retrieve the next page of results. Provided in the `next_page_token` field of a previous response.          |
| `organization`   | string  |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | The URI of the organization whose outgoing communications are to be retrieved.                                           |
| `max_created_at` | string  |          | `"2020-01-02T03:04:05.678Z"`                                | Include outgoing communications that were created before this timestamp. Formatted as "YYYY-MM-DDTHH:MM:SS.sssZ" in UTC. |
| `min_created_at` | string  |          | `"2020-01-02T03:04:05.678Z"`                                | Include outgoing communications that were created after this timestamp. Formatted as "YYYY-MM-DDTHH:MM:SS.sssZ" in UTC.  |

***

### `Calendly List Routing Forms`

Integration name: **CALENDLY\_LIST\_ROUTING\_FORMS**

Retrieves routing forms for a specified organization; routing forms are questionnaires used to direct invitees to appropriate booking pages or external URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                     | Description                                                                                                                                                                         |
| -------------- | ------- | :------: | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`         | string  |          | `"created_at:desc"`                                         | Specifies the order of results. Use a comma-separated list of `field:direction` pairs. Supported field: `created_at`. Supported directions: `asc` (ascending), `desc` (descending). |
| `count`        | integer |          | `"10"`                                                      | The number of routing forms to return per page.                                                                                                                                     |
| `page_token`   | string  |          | `"nextPageTokenABC"`                                        | Token to retrieve a specific page of results, usually from a previous response's pagination details.                                                                                |
| `organization` | string  |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | The URI of the organization for which to retrieve routing forms.                                                                                                                    |

***

### `Calendly List Scheduled Events`

Integration name: **CALENDLY\_LIST\_SCHEDULED\_EVENTS**

Tool to retrieve a list of scheduled Calendly events. Use when you need to view events for a specific user, organization, or group. Requires exactly one of user, organization, or group parameter to scope the query.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                         | Description                                                                                                                                                                                                                                                                                                                                 |
| ---------------- | ------- | :------: | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`           | string  |          | `"start_time:asc"`                                                              | Order results by the specified field and direction. Format: 'field:direction'. Supported field: 'start\_time'. Supported directions: 'asc' (ascending), 'desc' (descending).                                                                                                                                                                |
| `user`           | string  |          | `"https://api.calendly.com/users/5dc7b7a8-1d8c-4fcc-8b63-5f5a17eea4a3"`         | Full Calendly API URI of the user whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/users/{uuid}>'. Shortcuts like 'me' are NOT supported - use CALENDLY\_GET\_CURRENT\_USER to get the user URI first. Exactly ONE of `user`, `organization`, or `group` must be provided to scope the query. |
| `count`          | integer |          | `20`                                                                            | Number of events to return per page. Must be a positive integer.                                                                                                                                                                                                                                                                            |
| `group`          | string  |          | `"https://api.calendly.com/groups/abcdef12-3456-7890-abcd-ef1234567890"`        | Full Calendly API URI of the group (team) whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/groups/{uuid}>'. Exactly ONE of `user`, `organization`, or `group` must be provided to scope the query.                                                                                            |
| `status`         | string  |          | `"active"`                                                                      | Filter events by their status. Can be 'active' for active events or 'canceled' for canceled events.                                                                                                                                                                                                                                         |
| `page_token`     | string  |          | —                                                                               | Pagination token to retrieve a specific page of results. Use the 'next\_page\_token' from a previous response to get the next page.                                                                                                                                                                                                         |
| `organization`   | string  |          | `"https://api.calendly.com/organizations/dbed26fe-cb7f-4224-8f10-3331cecdeb13"` | Full Calendly API URI of the organization whose events you want to list. MUST be a complete URI in the format '<https://api.calendly.com/organizations/{uuid}>'. Exactly ONE of `user`, `organization`, or `group` is required. Admin privileges may be required.                                                                           |
| `invitee_email`  | string  |          | `"invitee@example.com"`                                                         | Return events that are scheduled with the invitee associated with this email address. This is a filter parameter and must be used together with one of the scope parameters (user, organization, or group).                                                                                                                                 |
| `max_start_time` | string  |          | `"2024-12-31T23:59:59.999999Z"`                                                 | Include events with start times prior to this time. Must be in UTC format (ISO 8601).                                                                                                                                                                                                                                                       |
| `min_start_time` | string  |          | `"2024-01-01T00:00:00.000000Z"`                                                 | Include events with start times after this time. Must be in UTC format (ISO 8601).                                                                                                                                                                                                                                                          |

***

### `Calendly List User Availability Schedules`

Integration name: **CALENDLY\_LIST\_USER\_AVAILABILITY\_SCHEDULES**

Retrieves all availability schedules for the specified Calendly user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                             | Description                                                                                       |
| --------- | ------ | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| `user`    | string |     ✅    | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"` | URI of the user whose availability schedules are to be listed; must be a valid Calendly user URI. |

***

### `Calendly List User Busy Times`

Integration name: **CALENDLY\_LIST\_USER\_BUSY\_TIMES**

Fetches a user's busy time intervals (internal and external calendar events) in ascending order for a period up to 7 days; keyset pagination is not supported.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                             | Description                                                                                                                           |
| ------------ | ------ | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `user`       | string |     ✅    | `"https://api.calendly.com/users/AAAAAAAAAAAAAAAA"` | The URI of the user whose busy times are being queried. This is typically the user's Calendly API URI.                                |
| `end_time`   | string |     ✅    | `"2024-03-25T17:00:00Z"`                            | The end of the time range for which to fetch busy times, in RFC3339 format (e.g., '2023-10-26T11:00:00Z'). Must be after start\_time. |
| `start_time` | string |     ✅    | `"2024-03-25T08:00:00Z"`                            | The start of the time range for which to fetch busy times, in RFC3339 format (e.g., '2023-10-26T10:00:00Z').                          |

***

### `Calendly List User Locations`

Integration name: **CALENDLY\_LIST\_USER\_LOCATIONS**

Tool to retrieve configured meeting location information for a given Calendly user. Use when you need to see all available location options configured by a user for their meetings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                 | Description                                                                                                                                     |
| --------- | ------ | :------: | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`    | string |     ✅    | `"https://api.calendly.com/users/5dc7b7a8-1d8c-4fcc-8b63-5f5a17eea4a3"` | URI of the user whose locations to list. This should be the full Calendly user URI (e.g., '<https://api.calendly.com/users/AAAAAAAAAAAAAAAA>'). |

***

### `Calendly List User S Event Types`

Integration name: **CALENDLY\_LIST\_USER\_S\_EVENT\_TYPES**

DEPRECATED: Use CALENDLY\_LIST\_EVENT\_TYPES instead. Retrieves event types for a user or organization; requires either the `user` or `organization` URI.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------------- | ------- | :------: | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`                       | string  |          | `"name:asc"`                                                              | Order results by field(s) and direction ('asc' or 'desc'), e.g., 'name:asc,created\_at:desc'. Supported fields: name, position, created\_at, updated\_at. Defaults to 'name:asc' if omitted.                                                                                                                                                                                                                              |
| `user`                       | string  |          | `"https://api.calendly.com/users/BBBBBBBBBBBBBBBB"`                       | URI of the **user** whose event types to list. Provide **either** `user` **or** `organization` (exactly one is required). **IMPORTANT:** Must be the actual resolved user URI (e.g., <https://api.calendly.com/users/5dc7b7a8-1d8c-4fcc-8b63-5f5a17eea4a3>). The shorthand '<https://api.calendly.com/users/me>' is NOT accepted by this endpoint. Use the 'Get Current User' action first to obtain the actual user URI. |
| `count`                      | integer |          | `20`                                                                      | Number of event types per page (max 100).                                                                                                                                                                                                                                                                                                                                                                                 |
| `active`                     | boolean |          | —                                                                         | Filter by active status (true for active, false for inactive). If omitted, all event types are returned.                                                                                                                                                                                                                                                                                                                  |
| `page_token`                 | string  |          | `"NEXT_PAGE_TOKEN"`                                                       | Token for retrieving the next or previous page of event types.                                                                                                                                                                                                                                                                                                                                                            |
| `organization`               | string  |          | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"`               | URI of the **organization** whose event types to list. Provide **either** `organization` **or** `user` (exactly one is required).                                                                                                                                                                                                                                                                                         |
| `admin_managed`              | boolean |          | —                                                                         | Filter by admin management: true for admin-managed only, false to exclude admin-managed. If omitted, all types are returned (respecting other filters).                                                                                                                                                                                                                                                                   |
| `user_availability_schedule` | string  |          | `"https://api.calendly.com/user_availability_schedules/CCCCCCCCCCCCCCCC"` | URI of the user's availability schedule; use with `user` to filter event types by this primary schedule. Example: '<https://api.calendly.com/user\\_availability\\_schedules/SCHEDULE\\_UUID>'.                                                                                                                                                                                                                           |

***

### `Calendly List Webhook Subscriptions`

Integration name: **CALENDLY\_LIST\_WEBHOOK\_SUBSCRIPTIONS**

Retrieves webhook subscriptions for a Calendly organization; `scope` determines if `user` or `group` URI is also required for filtering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                     | Description                                                                                                                          |
| -------------- | ------- | :------: | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `sort`         | string  |          | `"created_at:asc"`                                          | Sort order for results (e.g., 'created\_at:asc'). Supported fields: `created_at`, `updated_at`. Supported directions: `asc`, `desc`. |
| `user`         | string  |          | `"https://api.calendly.com/users/BBBBBBBBBBBBBBBB"`         | URI of the Calendly user; required if `scope` is 'user'.                                                                             |
| `count`        | integer |          | `"10"`                                                      | Number of results per page (maximum 100).                                                                                            |
| `group`        | string  |          | `"https://api.calendly.com/groups/CCCCCCCCCCCCCCCC"`        | URI of the Calendly group; required if `scope` is 'group'.                                                                           |
| `scope`        | string  |     ✅    | `"organization"`                                            | Scope of the webhook subscriptions: 'organization', 'user', or 'group'.                                                              |
| `page_token`   | string  |          | `" nextPageTokenExample123"`                                | Token for paginating to the next or previous page of results.                                                                        |
| `organization` | string  |     ✅    | `"https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA"` | URI of the Calendly organization for which to list webhook subscriptions.                                                            |

***

### `Calendly Organization Invitation`

Integration name: **CALENDLY\_ORGANIZATION\_INVITATION**

Tool to invite a user to a Calendly organization via email. Use when you need to send an organization invitation to a new user. Requires organization owner or admin privileges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                  |
| ---------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `email`    | string |     ✅    | `"test.invite@example.com"`              | The email address of the user to invite to the organization. An invitation email will be automatically sent to this address. |
| `org_uuid` | string |     ✅    | `"dbed26fe-cb7f-4224-8f10-3331cecdeb13"` | The unique identifier (UUID) of the organization to invite the user to. This is extracted from the organization URI.         |

***

### `Calendly Post Invitee`

Integration name: **CALENDLY\_POST\_INVITEE**

Tool to create a new Event Invitee with standard notifications, calendar invites, reschedules, and workflows. Use when programmatically scheduling meetings via API. Requires paid Calendly plan (Standard+).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                                                       | Description                                                                                                         |
| ----------------------- | ------ | :------: | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `invitee`               | object |     ✅    | —                                                                             | Details of the invitee being scheduled                                                                              |
| `location`              | object |          | —                                                                             | Meeting location configuration.                                                                                     |
| `tracking`              | object |          | —                                                                             | UTM and tracking parameters for marketing attribution.                                                              |
| `event_type`            | string |     ✅    | `"https://api.calendly.com/event_types/73ec12fc-6c7b-4869-b927-6141c9e716e9"` | URI reference to the event type being scheduled (e.g., '<https://api.calendly.com/event\\_types/AAAAAAAAAAAAAAAA>') |
| `start_time`            | string |     ✅    | `"2025-12-16T10:00:00Z"`                                                      | Start time of the scheduled event in ISO 8601 UTC format (e.g., '2025-12-16T10:00:00Z')                             |
| `event_guests`          | array  |          | `["janedoe@calendly.com"]`                                                    | List of email addresses for additional invitee guests (max 10)                                                      |
| `questions_and_answers` | array  |          | —                                                                             | Custom question responses from the booking form                                                                     |

***

### `Calendly Remove User From Organization`

Integration name: **CALENDLY\_REMOVE\_USER\_FROM\_ORGANIZATION**

Removes a user (who is not an owner) from an organization by their membership UUID, requiring administrative privileges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                           |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uuid`    | string |     ✅    | `"34190604-bb77-4f51-8486-7e096b18b12d"` | The UUID of the organization membership to remove. This is the unique identifier from the membership URI (e.g., from '<https://api.calendly.com/organization\\_memberships/UUID>'). Get membership UUIDs by calling list\_organization\_memberships. Note: Cannot remove organization owners - use this for admin or user roles only. |

***

### `Calendly Revoke User S Organization Invitation`

Integration name: **CALENDLY\_REVOKE\_USER\_S\_ORGANIZATION\_INVITATION**

Revokes a pending and revokable (not yet accepted or expired) organization invitation using its UUID and the organization's UUID, rendering the invitation link invalid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                         |
| ---------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------- |
| `uuid`     | string |     ✅    | `"abc12345-6789-def0-ghij-klmnopqrstuv"` | The unique identifier of the organization invitation to be revoked. |
| `org_uuid` | string |     ✅    | `"dbed26fe-cb7f-4224-8f10-3331cecdeb13"` | The unique identifier of the organization.                          |

***

### `Calendly Update Event Type`

Integration name: **CALENDLY\_UPDATE\_EVENT\_TYPE**

Tool to update an existing one-on-one event type (kind: solo) in Calendly. Use when you need to modify event type settings such as name, duration, location, or description. NOTE: Currently only supports one-on-one event types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------ | ------- | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`             | string  |          | `"15 Minute Meeting"`                               | The event type name that will be displayed to invitees                                                                                                                                                                                                                                                                                                                                                                                           |
| `uuid`             | string  |     ✅    | `"AAAAAAAAAAAAAAAA"`                                | Unique identifier (UUID) of the event type to update. Can be provided as either the full event type URI (e.g., '<https://api.calendly.com/event\\_types/AAAAAAAAAAAAAAAA>') or just the UUID portion (e.g., 'AAAAAAAAAAAAAAAA'). Supports both alphanumeric format (e.g., 'GBGBDCAADAEDCRZ2') and standard UUID format (e.g., 'cdeba4c3-5adb-477d-8972-7317836eb40d'). Use LIST\_USER\_S\_EVENT\_TYPES action to retrieve valid event type URIs. |
| `color`            | string  |          | `"#fff200"`                                         | Hexadecimal color value for the scheduling page. Must match pattern ^#\[a-f\d]{6}$ (e.g., '#fff200')                                                                                                                                                                                                                                                                                                                                             |
| `active`           | boolean |          | `true`                                              | Indicates if the event type is active and available for booking                                                                                                                                                                                                                                                                                                                                                                                  |
| `locale`           | string  |          | `"en"`                                              | Locale for the event type's scheduling page language                                                                                                                                                                                                                                                                                                                                                                                             |
| `duration`         | integer |          | `15`                                                | Length of sessions in minutes. Must be between 1 and 720 minutes. Should be one of the duration\_options if both are provided.                                                                                                                                                                                                                                                                                                                   |
| `locations`        | array   |          | `[{"kind":"zoom_conference"}]`                      | Configuration information for each possible location where the event can take place                                                                                                                                                                                                                                                                                                                                                              |
| `description`      | string  |          | `"A quick 15 minute meeting to discuss your needs"` | The event type description that will be shown on the scheduling page (plain text format)                                                                                                                                                                                                                                                                                                                                                         |
| `duration_options` | array   |          | `[15,30,45,60]`                                     | Alternative duration choices for flexible meetings. Maximum 4 unique values allowed. Each must be between 1 and 720 minutes.                                                                                                                                                                                                                                                                                                                     |

***

### `Calendly Update Event Type Availability`

Integration name: **CALENDLY\_UPDATE\_EVENT\_TYPE\_AVAILABILITY**

Tool to update an event type availability schedule in Calendly. Use when you need to change the timezone or availability rules for an event type. WARNING: Updating rules will overwrite all existing rules - retrieve existing rules first using GET /event\_type\_availability\_schedules.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                                                       | Description                                                                                                                                                                                                                                                                                             |
| ---------------------- | ------ | :------: | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`                 | string |          | `"https://api.calendly.com/users/5dc7b7a8-1d8c-4fcc-8b63-5f5a17eea4a3"`       | URI of the user associated with the event type. Required when an admin or org owner is updating a specific user's schedule.                                                                                                                                                                             |
| `event_type`           | string |     ✅    | `"https://api.calendly.com/event_types/73ec12fc-6c7b-4869-b927-6141c9e716e9"` | URI of the event type whose availability schedule is to be updated. Must follow the pattern <https://api.calendly.com/event\\_types/{uuid}> and contain '/event\_types/' in the path. Other Calendly URIs (e.g., user\_availability\_schedules, scheduling\_links, users) are NOT valid for this field. |
| `availability_rule`    | object |     ✅    | —                                                                             | Availability rule configuration containing timezone and rules for when the event type is available. WARNING: Rules will overwrite all existing rules.                                                                                                                                                   |
| `availability_setting` | string |          | `"host"`                                                                      | Indicates how availability is determined. Default: 'host'. Every host on the Event Type shares identical schedule.                                                                                                                                                                                      |


# Canva

Your Toolhouse AI Worker can connect to Canva using 48 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](https://toolhouse.app/auth-connections?authkit_slugs=canva).

## Tools (48)

### `Canva Access User Specific Brand Templates List`

Integration name: **CANVA\_ACCESS\_USER\_SPECIFIC\_BRAND\_TEMPLATES\_LIST**

Lists brand templates available to the user (Canva Enterprise only). This endpoint retrieves all brand templates the user has access to. Brand templates are pre-designed layouts with variable data fields that can be populated programmatically using the autofill API. Returns template metadata including IDs, names, and dataset schemas.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| -------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`        | string |          | —       | Lets you search the brand templates available to the user using a search term or terms.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `dataset`      | string |          | —       | Filter the list of brand templates based on the brand templates' dataset definitions. Brand templates with dataset definitions are mainly used with the Autofill APIs. This can be one of the following: - `any`: (Default) Brand templates with and without dataset definitions. - `non_empty`: Brand templates with one or more data fields defined.                                                                                                                                                                                                               |
| `sort_by`      | string |          | —       | Sort the list of brand templates. This can be one of the following: - `relevance`: (Default) Sort results using a relevance algorithm. - `modified_descending`: Sort results by the date last modified in descending order. - `modified_ascending`: Sort results by the date last modified in ascending order. - `title_descending`: Sort results by title in descending order. - `title_ascending`: Sort results by title in ascending order.                                                                                                                       |
| `ownership`    | string |          | —       | Filter the list of brand templates based on the user's ownership of the brand templates. This can be one of the following: - `any`: (Default) Brand templates owned by and shared with the user. - `owned`: Brand templates owned by the user. - `shared`: Brand templates shared with the user.                                                                                                                                                                                                                                                                     |
| `continuation` | string |          | —       | If the success response contains a continuation token, the user has access to more brand templates you can list. You can use this token as a query parameter and retrieve more templates from the list, for example `/v1/brand-templates?continuation={continuation}`. To retrieve all the brand templates available to the user, you might need to make multiple requests. IMPORTANT: This token is an opaque value returned by the API. You must use it exactly as returned from a previous API response. Do not manually construct or modify continuation tokens. |

***

### `Canva Create Asset Upload Job`

Integration name: **CANVA\_CREATE\_ASSET\_UPLOAD\_JOB**

Uploads an asset file to the user's Canva content library. This endpoint initiates an asynchronous upload job for images, videos, audio files, PDFs, or fonts. Returns a job ID to track the upload progress. Once complete, the asset can be used in designs, referenced by its asset ID, and managed through other asset endpoints. IMPORTANT: This is an async operation. Use CANVA\_FETCH\_ASSET\_UPLOAD\_JOB\_STATUS to poll the job status until it reaches 'success' or 'failed' status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                     |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`    | object |     ✅    | —       | File to upload. Size limits: Images 50MB, Videos 100MB, Audio 10MB. Supported: JPEG/PNG/GIF/WebP/SVG, MP4/MOV/AVI, MP3/WAV, PDF, TTF/OTF fonts. No duplicate detection - uploading same file creates new asset. |
| `name`    | string |     ✅    | —       | Display name for the asset (max 50 chars). Used for searching in Canva. Longer names are truncated. Special chars allowed. Cannot be changed via API after upload.                                              |

***

### `Canva Create Canva Design Export Job`

Integration name: **CANVA\_CREATE\_CANVA\_DESIGN\_EXPORT\_JOB**

DEPRECATED: Use CANVA\_POST\_EXPORTS instead. Exports a Canva design to various file formats. This endpoint initiates an asynchronous export job for designs. Supports image formats (PNG, JPG, GIF), documents (PDF, PPTX), and video (MP4). Each format has specific configuration options like dimensions, quality, and page selection. IMPORTANT: This is an async operation. Use GET\_DESIGN\_EXPORT\_JOB\_RESULT to poll the job status until completion and retrieve the download URLs for the exported files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                   |
| ----------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------- |
| `format`    | —      |     ✅    | `{"type":"png"}` | Export format configuration. Set 'type' to one of: 'png', 'jpg', 'pdf', 'gif', 'mp4', 'pptx'. |
| `design_id` | string |     ✅    | `"DAGkg05ZH5w"`  | The design ID to export                                                                       |

***

### `Canva Create Canva Design With Optional Asset`

Integration name: **CANVA\_CREATE\_CANVA\_DESIGN\_WITH\_OPTIONAL\_ASSET**

DEPRECATED: Use CANVA\_POST\_DESIGNS instead. Creates a new Canva design with specified dimensions or from an asset. This endpoint creates a design using either a preset type (doc, presentation, whiteboard), custom dimensions, or by importing an image asset. Returns the design ID, URLs for editing and viewing, owner info, and metadata. The design can be immediately accessed and edited.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------- | ------ | :------: | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string |          | `"My Holiday Presentation"`               | Design title (1-255 chars). Appears in Canva UI and design lists.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `asset_id`    | string |          | `"Msd59349ff"`                            | Image asset ID to create design from. Optional if design\_type provided. IMPORTANT: Only image assets are supported - video and PDF assets will be rejected by the API with error 'asset\_id must belong to an image asset'. Asset IDs are opaque strings with no guaranteed format. To verify an asset is an image before using it here, call CANVA\_RETRIEVE\_ASSET\_METADATA\_BY\_ID and check that the 'type' field equals 'image'. To upload a new image asset, use CANVA\_CREATE\_URL\_ASSET\_UPLOAD\_JOB or CANVA\_CREATE\_ASSET\_UPLOAD\_JOB. |
| `design_type` | object |          | `{"name":"presentation","type":"preset"}` | Design dimensions configuration. Optional if asset\_id provided. Must be a dictionary with 'type' field. Two options: 1. Preset: {'type': 'preset', 'name': 'doc'\\                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Canva Create Comment Reply In Design`

Integration name: **CANVA\_CREATE\_COMMENT\_REPLY\_IN\_DESIGN**

This preview API allows replying to comments within a design on Canva, with a limit of 100 replies per comment. Users should note potential unannounced changes, and that preview APIs are not eligible for public integrations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                                                                                               |
| ------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`     | string |     ✅    | —       | The reply comment message. This is the reply comment body shown in the Canva UI. You can also mention users in your message by specifying their User ID and Team ID using the format `[user_id:team_id]`. |
| `commentId`   | string |     ✅    | —       | The `id` of the comment thread to reply to. This parameter is used in the URL path, not in the request body.                                                                                              |
| `attached_to` | object |     ✅    | —       | The object the comment is attached to.                                                                                                                                                                    |

***

### `Canva Create Design Comment In Preview Api`

Integration name: **CANVA\_CREATE\_DESIGN\_COMMENT\_IN\_PREVIEW\_API**

Creates a new comment thread on a Canva design. This preview API allows adding text comments to designs for collaboration and feedback. Returns the created comment with ID, author info, and timestamp. Comments can be replied to using the comment reply endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                                                                                      |
| ------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`     | string |     ✅    | `"Great design! Love the color scheme."` | Comment text (max 4096 chars). Mention users with \[user\_id:team\_id]. No markdown support. Comments appear unpinned - users must view 'All pages' to see them. |
| `design_id`   | string |     ✅    | `"DAGz4y3LDFI"`                          | Design ID to attach comment to                                                                                                                                   |
| `assignee_id` | string |          | `"oUXYegJ3p0L71iGeQqomaw"`               | User ID to assign this comment to. If provided, you must also mention this user in the message text using format \[user\_id:team\_id].                           |
| `attached_to` | object |     ✅    | —                                        | Required target reference specifying where comment should be attached                                                                                            |

***

### `Canva Create Design Import Job`

Integration name: **CANVA\_CREATE\_DESIGN\_IMPORT\_JOB**

Imports an external file as a new Canva design. This endpoint converts documents (PDF, Word, PowerPoint, Excel) and design files (PSD, AI) into editable Canva designs. The import runs asynchronously and returns a job ID to track progress and retrieve the created design. IMPORTANT: This is an async operation. Use CANVA\_RETRIEVE\_DESIGN\_IMPORT\_JOB\_STATUS to poll the job status until it reaches 'success' or 'failed' to get the final design ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                                                                                                                    |
| ----------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`      | object |     ✅    | —       | Document or design file to import (max 100MB). Formats: PDF, Word, PowerPoint, Excel, Photoshop, Illustrator, Keynote, Pages, Numbers, OpenDocument. PowerPoint loses animations, Excel loses formulas, AI/PSD may lose layers. Password-protected files fail. |
| `title`     | string |     ✅    | —       | Title for the imported design (max 50 chars). Shows in Canva UI and design lists. Longer titles are truncated. Special characters allowed.                                                                                                                     |
| `mime_type` | string |          | —       | Optional MIME type override. If omitted, the file's mimetype is used.                                                                                                                                                                                          |

***

### `Canva Create Design Resize Job`

Integration name: **CANVA\_CREATE\_DESIGN\_RESIZE\_JOB**

Creates a resized copy of an existing design (Canva Pro/Enterprise only). This endpoint creates a new design with different dimensions from an existing one. The resize operation runs asynchronously and preserves content where possible. Returns a job ID to track progress and retrieve the new design once complete. IMPORTANT: This is an async operation. Use CANVA\_RETRIEVE\_DESIGN\_RESIZE\_JOB\_STATUS to poll the job status until completion to get the resized design ID and access URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                      |
| ------------- | ------ | :------: | ------- | -------------------------------- |
| `design_id`   | string |     ✅    | —       | The source design ID             |
| `design_type` | —      |     ✅    | —       | Target design type configuration |

***

### `Canva Create Url Asset Upload Job`

Integration name: **CANVA\_CREATE\_URL\_ASSET\_UPLOAD\_JOB**

Tool to create an asynchronous Canva asset import job from a public URL. Use when you need to import an asset into Canva directly from a publicly accessible URL without S3 choreography.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                           |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `url`     | string |     ✅    | —       | Publicly accessible HTTPS URL of the file to import. Must use HTTPS protocol (e.g., <https://example.com/image.png>). |
| `name`    | string |     ✅    | —       | Asset name (1-255 characters).                                                                                        |

***

### `Canva Delete Asset By Id`

Integration name: **CANVA\_DELETE\_ASSET\_BY\_ID**

You can delete an asset by specifying its `assetId`. This operation mirrors the behavior in the Canva UI. Deleting an item moves it to the trash. Deleting an asset doesn't remove it from designs that already use it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `assetId` | string |     ✅    | —       | The ID of the asset. |

***

### `Canva Exchange Oauth20 Access Or Refresh Token`

Integration name: **CANVA\_EXCHANGE\_OAUTH20\_ACCESS\_OR\_REFRESH\_TOKEN**

The OAuth 2.0 endpoint issues time-limited (4-hour) access tokens of up to 4KB for user authorization via codes or refresh tokens. It requires client ID/secret for authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Canva Fetch Asset Upload Job Status`

Integration name: **CANVA\_FETCH\_ASSET\_UPLOAD\_JOB\_STATUS**

Polls for asset upload job completion status. Use this after CANVA\_CREATE\_ASSET\_UPLOAD\_JOB to check the upload progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final asset ID and metadata. IMPORTANT: This tool is ONLY for direct file upload jobs (CANVA\_CREATE\_ASSET\_UPLOAD\_JOB). Do NOT use this for URL import jobs created by CANVA\_CREATE\_URL\_ASSET\_UPLOAD\_JOB - those use a different API endpoint. Use CANVA\_GET\_URL\_ASSET\_UPLOADS\_JOBID to poll URL import job status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `jobId`   | string |     ✅    | —       | The asset upload job ID returned by CANVA\_CREATE\_ASSET\_UPLOAD\_JOB or CANVA\_POST\_ASSET\_UPLOADS. This is the 'id' field from the job object in the response. IMPORTANT: This tool does NOT work for job IDs from CANVA\_CREATE\_URL\_ASSET\_UPLOAD\_JOB (URL import jobs use a different endpoint - use CANVA\_GET\_URL\_ASSET\_UPLOADS\_JOBID instead). |

***

### `Canva Fetch Canva Connect Signing Public Keys`

Integration name: **CANVA\_FETCH\_CANVA\_CONNECT\_SIGNING\_PUBLIC\_KEYS**

The API for verifying Canva webhooks, 'connect/keys,' is in preview, meaning unstable, not for public integrations, and provides a rotating JWK for signature verification to prevent replay attacks. Cache keys for efficiency.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Canva Fetch Current User Details`

Integration name: **CANVA\_FETCH\_CURRENT\_USER\_DETAILS**

Returns the User ID, Team ID, and display name of the user account associated with the provided access token.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Canva Fetch Design Metadata And Access Information`

Integration name: **CANVA\_FETCH\_DESIGN\_METADATA\_AND\_ACCESS\_INFORMATION**

Gets the metadata for a design. This includes owner information, URLs for editing and viewing, and thumbnail information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description    |
| ---------- | ------ | :------: | ------- | -------------- |
| `designId` | string |     ✅    | —       | The design ID. |

***

### `Canva Get Design Comment Replies`

Integration name: **CANVA\_GET\_DESIGN\_COMMENT\_REPLIES**

Retrieves a list of replies for a comment or suggestion thread on a design. Use when you need to view all replies in a specific thread.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                                |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`        | integer |          | —       | The number of replies to return. Default is 50. Minimum value: 1, Maximum value: 100.                                                      |
| `designId`     | string  |     ✅    | —       | The design ID.                                                                                                                             |
| `threadId`     | string  |     ✅    | —       | The ID of the thread.                                                                                                                      |
| `continuation` | string  |          | —       | Token for pagination to retrieve more items from the list. If the response contains a continuation token, use it to retrieve more replies. |

***

### `Canva Get Design Comment Reply`

Integration name: **CANVA\_GET\_DESIGN\_COMMENT\_REPLY**

Retrieves a specific reply to a comment or suggestion thread on a design. Use when you need to view details of a particular reply.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                            |
| ---------- | ------ | :------: | ------- | -------------------------------------- |
| `replyId`  | string |     ✅    | —       | The identifier for the specific reply. |
| `designId` | string |     ✅    | —       | The design identifier.                 |
| `threadId` | string |     ✅    | —       | The identifier for the comment thread. |

***

### `Canva Get Design Export Job Result`

Integration name: **CANVA\_GET\_DESIGN\_EXPORT\_JOB\_RESULT**

Polls for design export job completion status. Use this after CANVA\_CREATE\_CANVA\_DESIGN\_EXPORT\_JOB to check the export progress. Call this endpoint repeatedly until the job is complete to receive download links for the exported design pages. Download URLs expire after 30 days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description        |
| ---------- | ------ | :------: | ------- | ------------------ |
| `exportId` | string |     ✅    | —       | The export job ID. |

***

### `Canva Get Designs Designid Comments Threadid`

Integration name: **CANVA\_GET\_DESIGNS\_DESIGNID\_COMMENTS\_THREADID**

Retrieves metadata for a comment or suggestion thread on a design. Use when you need to get details about a specific thread including content, author, timestamps, and status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example         | Description            |
| ---------- | ------ | :------: | --------------- | ---------------------- |
| `designId` | string |     ✅    | `"DAGkg05ZH5w"` | The design identifier. |
| `threadId` | string |     ✅    | `"KAG7Ioj7DAU"` | The thread identifier. |

***

### `Canva Get Designs Designid Export Formats`

Integration name: **CANVA\_GET\_DESIGNS\_DESIGNID\_EXPORT\_FORMATS**

Lists available file formats for exporting a design. Use this to check which export formats (PDF, JPG, PNG, SVG, PPTX, GIF, MP4) are supported for a specific design.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description    |
| ---------- | ------ | :------: | ------- | -------------- |
| `designId` | string |     ✅    | —       | The design ID. |

***

### `Canva Get Url Asset Uploads Jobid`

Integration name: **CANVA\_GET\_URL\_ASSET\_UPLOADS\_JOBID**

Tool to retrieve the status and result of a URL-based asset upload job. Use this after creating a URL asset upload job to check progress and retrieve the uploaded asset ID when successful.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                      |
| --------- | ------ | :------: | ------- | -------------------------------- |
| `jobId`   | string |     ✅    | —       | The asset upload job identifier. |

***

### `Canva Get Url Imports Jobid`

Integration name: **CANVA\_GET\_URL\_IMPORTS\_JOBID**

Polls for URL import job completion status. Use this after creating a URL import job to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description            |
| --------- | ------ | :------: | ------- | ---------------------- |
| `jobId`   | string |     ✅    | —       | The URL import job ID. |

***

### `Canva Get Users Me Capabilities`

Integration name: **CANVA\_GET\_USERS\_ME\_CAPABILITIES**

Lists the API capabilities for the user account associated with the provided access token. Use when you need to check what features are available based on the user's Canva plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Canva Initiate Canva Design Autofill Job`

Integration name: **CANVA\_INITIATE\_CANVA\_DESIGN\_AUTOFILL\_JOB**

Upcoming brand template ID updates require migration within 6 months. Canva Enterprise users can auto-fill designs using various data types, including experimental chart data. Monitor jobs with specific API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                       |
| ------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`              | object |     ✅    | —       | Data object containing the data fields and values to autofill. Keys are field names from the brand template. Values must be one of: TextDataField (type='text'), ImageDataField (type='image'), or ChartDataField (type='chart'). |
| `title`             | string |          | —       | Title to use for the autofilled design. Must be less than 256 characters. If no design title is provided, the autofilled design will have the same title as the brand template.                                                   |
| `brand_template_id` | string |     ✅    | —       | ID of the input brand template.                                                                                                                                                                                                   |

***

### `Canva List Design Pages With Pagination`

Integration name: **CANVA\_LIST\_DESIGN\_PAGES\_WITH\_PAGINATION**

Preview API for Canva: subject to unannounced changes and not for public integrations. Lists metadata for design pages with optional `offset` and `limit`; not applicable to all design types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                                                                                                         |
| ---------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | —       | The number of pages to return, starting at the page index specified using the `offset` parameter. Default is `50` pages. Minimum: 1, Maximum: 200.                                                  |
| `offset`   | integer |          | —       | The page index to start the range of pages to return. Default is `1`. Pages are indexed using one-based numbering, so the first page in a design has the index value `1`. Minimum: 1, Maximum: 500. |
| `designId` | string  |     ✅    | —       | The design ID.                                                                                                                                                                                      |

***

### `Canva List Folder Items By Type With Sorting`

Integration name: **CANVA\_LIST\_FOLDER\_ITEMS\_BY\_TYPE\_WITH\_SORTING**

Lists the items in a folder, including each item's `type`. Folders can contain: - Other folders. - Designs, such as Instagram posts, Presentations, and Documents ([Canva Docs](https://www.canva.com/create/documents/)). - Image assets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| -------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sort_by`      | string |          | —       | Sort the list of folder items. This can be one of the following: - `created_ascending`: Sort results by creation date, in ascending order. - `created_descending`: Sort results by creation date, in descending order. - `modified_ascending`: Sort results by the last modified date, in ascending order. - `modified_descending`: (Default) Sort results by the last modified date, in descending order. - `title_ascending`: Sort results by title, in ascending order. The title is either the `name` field for a folder or asset, or the `title` field for a design. - `title_descending`: Sort results by title, in descending order. The title is either the `name` field for a folder or asset, or the `title` field for a design. |
| `folderId`     | string |     ✅    | —       | The folder ID. Must be a non-empty string. Use 'root' to list items in the root folder.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `item_types`   | array  |          | —       | Filter the folder items to only return specified types. The available types are: `design`, `folder`, and `image`. To filter for more than one item type, provide a comma-delimited list.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `continuation` | string |          | —       | If the success response contains a continuation token, the folder contains more items you can list. You can use this token as a query parameter and retrieve more items from the list, for example `/v1/folders/{folderId}/items?continuation={continuation}`. To retrieve all the items in a folder, you might need to make multiple requests.                                                                                                                                                                                                                                                                                                                                                                                            |

***

### `Canva List User Designs`

Integration name: **CANVA\_LIST\_USER\_DESIGNS**

Provides a summary of Canva user designs, includes search filtering, and allows showing both self-created and shared designs with sorting options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                            |
| -------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`        | string |          | —       | Lets you search the user's designs, and designs shared with the user, using a search term or terms.                                                                                                                                                                                                                                                                                                                                    |
| `sort_by`      | string |          | —       | Sort the list of designs. This can be one of the following: - `relevance`: (Default) Sort results using a relevance algorithm. - `modified_descending`: Sort results by the date last modified in descending order. - `modified_ascending`: Sort results by the date last modified in ascending order. - `title_descending`: Sort results by title in descending order. - `title_ascending`: Sort results by title in ascending order. |
| `ownership`    | string |          | —       | Filter the list of designs based on the user's ownership of the designs. This can be one of the following: - `owned`: Designs owned by the user. - `shared`: Designs shared with the user. - `any`: Designs owned by and shared with the user.                                                                                                                                                                                         |
| `continuation` | string |          | —       | If the success response contains a continuation token, the list contains more designs you can list. You can use this token as a query parameter and retrieve more designs from the list, for example `/v1/designs?continuation={continuation}`. To retrieve all of a user's designs, you might need to make multiple requests. Pass a valid token or omit this parameter entirely. Empty strings are not accepted by the API.          |

***

### `Canva Move Item To Specified Folder`

Integration name: **CANVA\_MOVE\_ITEM\_TO\_SPECIFIED\_FOLDER**

Transfers an item to a different folder by specifying both the destination folder's ID and the item's ID. If the item is in various folders, an error occurs; manual relocation via Canva UI is required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                       |
| -------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`      | string |     ✅    | —       | The ID of the item you want to move. Item IDs are alphanumeric strings, 1-50 characters. Design IDs have format like 'DAFVztcvd9z', folder IDs like 'FAF2lZtloor', and asset IDs like 'Msd59349ff'. Obtain item IDs from the List designs, List folder items, or other Canva API endpoints. Note: Video assets are not supported for moving.                      |
| `to_folder_id` | string |     ✅    | —       | The ID of the folder you want to move the item to (the destination folder). Folder IDs are alphanumeric strings (e.g., 'FAF2lZtloor'), 1-50 characters. Use the special ID 'root' to move the item to the top level of a Canva user's projects, or 'uploads' for the Uploads folder. Obtain folder IDs from the List folder items or Create folder API endpoints. |

***

### `Canva Post Designs`

Integration name: **CANVA\_POST\_DESIGNS**

Creates a new Canva design with preset type or custom dimensions. Use when creating new designs for docs, presentations, whiteboards, or with specific pixel dimensions. Optionally insert an image asset into the design. Returns design ID, edit/view URLs, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                        | Description                                                                                                                                                                                                                                                                                                       |
| ------------- | ------ | :------: | ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string |          | `"Test Design Created by API"` | Design name (1-255 characters). Appears in Canva UI and design lists.                                                                                                                                                                                                                                             |
| `asset_id`    | string |          | `"Msd59349ff"`                 | Image asset ID to insert into the design. Currently supports image assets only. Must be a valid asset ID from a previously uploaded asset.                                                                                                                                                                        |
| `design_type` | —      |     ✅    | `"presentation"`               | Design type configuration. Can be a preset name string ('doc', 'whiteboard', 'presentation') which will be auto-converted to the required format, or a nested object for preset (e.g., {'type': 'preset', 'name': 'presentation'}) or custom dimensions (e.g., {'type': 'custom', 'width': 1080, 'height': 1920}) |

***

### `Canva Post Designs Designid Comments`

Integration name: **CANVA\_POST\_DESIGNS\_DESIGNID\_COMMENTS**

Creates a comment thread on a Canva design. Use when you need to add feedback or collaboration comments to a specific design. Rate limited to 100 requests per minute per user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                | Description                                                                                                                               |
| ------------------- | ------ | :------: | ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `designId`          | string |     ✅    | `"DAG7Ipg6t6g"`                                                        | The design ID where the comment will be created. Must match pattern ^\[a-zA-Z0-9\_-]{1,50}$                                               |
| `assignee_id`       | string |          | `"oUXYegJ3p0L71iGeQqomaw"`                                             | Optional user ID for assignment. If specified, the assignee must be mentioned in the message using \[user\_id:team\_id] format.           |
| `message_plaintext` | string |     ✅    | `"This is a test comment to verify the API endpoint works correctly."` | The comment message in plaintext shown in Canva UI. Must be between 1 and 2048 characters. User mentions use format \[user\_id:team\_id]. |

***

### `Canva Post Designs Designid Comments Threadid Replies`

Integration name: **CANVA\_POST\_DESIGNS\_DESIGNID\_COMMENTS\_THREADID\_REPLIES**

Tool to create a reply to a comment or suggestion thread on a Canva design. Use when you need to respond to existing comments or suggestions. Maximum 100 replies per thread allowed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                             | Description                                                                                                                  |
| ------------------- | ------ | :------: | --------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `design_id`         | string |     ✅    | `"DAG7Ig8C7o4"`                                     | The design identifier. Must match pattern ^\[a-zA-Z0-9\_-]{1,50}$                                                            |
| `thread_id`         | string |     ✅    | `"KAG7IkyIIUQ"`                                     | The identifier of the thread to reply to. Must match pattern ^\[a-zA-Z0-9\_-]{1,50}$                                         |
| `message_plaintext` | string |     ✅    | `"Thanks for your feedback! This is a test reply."` | The reply text content. Must be between 1 and 2048 characters. Users can be mentioned using the format \[user\_id:team\_id]. |

***

### `Canva Post Exports`

Integration name: **CANVA\_POST\_EXPORTS**

Starts a new asynchronous job to export a Canva design file. Use when exporting designs to various formats (PDF, JPG, PNG, GIF, PPTX, MP4). Returns a job ID that can be used to poll for completion status and download URLs. IMPORTANT: Format compatibility varies by design type. Before exporting, use the CANVA\_GET\_DESIGNS\_DESIGNID\_EXPORT\_FORMATS action to check which formats are supported for the specific design. Attempting to export in an unsupported format will result in a 400 error (e.g., 'png export not supported for this design type').

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `format`    | —      |     ✅    | `{"size":"a4","type":"pdf"}` | Export format configuration. Specify the format type and format-specific options. Exported files remain available for download for 24 hours. IMPORTANT: Not all formats are supported for all design types. Use GET /v1/designs/{designId}/export-formats to check which formats are supported for a specific design before exporting. If you request an unsupported format, the API will return a 400 error. |
| `design_id` | string |     ✅    | `"DAGkg05ZH5w"`              | The identifier of the design to export (e.g., 'DAGz4y3LDFI')                                                                                                                                                                                                                                                                                                                                                  |

***

### `Canva Post Folders`

Integration name: **CANVA\_POST\_FOLDERS**

Tool to create a folder in Canva. Use when you need to organize designs, assets, or create nested folder structures in a user's projects or uploads folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example              | Description                                                                                                                                                                      |
| ------------------ | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string |     ✅    | `"Marketing Assets"` | The display name for the new folder. Must be 1-255 characters. Duplicate names are allowed.                                                                                      |
| `parent_folder_id` | string |     ✅    | `"root"`             | The ID of the destination location. Use 'root' for top-level projects, 'uploads' for the uploads folder, or a specific folder ID to nest within another folder. Cannot be empty. |

***

### `Canva Post Url Imports`

Integration name: **CANVA\_POST\_URL\_IMPORTS**

Tool to start an asynchronous job to import an external file from a URL as a new design in Canva. Use when you need to import a design from a publicly accessible URL. This is an async operation; poll the job status using the job ID until it reaches 'success' or 'failed'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                                                     | Description                                                                                                                      |
| ----------- | ------ | :------: | --------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `url`       | string |     ✅    | `"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf"` | The URL of the file to import. This URL must be accessible from the internet and be publicly available (1-2048 characters).      |
| `title`     | string |     ✅    | `"My Imported Design"`                                                      | Name assigned to the imported design (1-255 characters).                                                                         |
| `mime_type` | string |          | `"application/pdf"`                                                         | File type identifier (e.g., 'application/pdf', 'image/png'). Auto-detected if omitted or empty (1-100 characters when provided). |

***

### `Canva Remove Folder And Move Contents To Trash`

Integration name: **CANVA\_REMOVE\_FOLDER\_AND\_MOVE\_CONTENTS\_TO\_TRASH**

Deletes a folder by moving the user's content to Trash and reassigning other users' content to their top-level projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description    |
| ---------- | ------ | :------: | ------- | -------------- |
| `folderId` | string |     ✅    | —       | The folder ID. |

***

### `Canva Retrieve App Public Key Set`

Integration name: **CANVA\_RETRIEVE\_APP\_PUBLIC\_KEY\_SET**

Returns the Json Web Key Set (public keys) of an app. These keys are used to verify JWTs sent to app backends.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description |
| --------- | ------ | :------: | ------- | ----------- |
| `appId`   | string |     ✅    | —       | The app id  |

***

### `Canva Retrieve Asset Metadata By Id`

Integration name: **CANVA\_RETRIEVE\_ASSET\_METADATA\_BY\_ID**

You can retrieve the metadata of an asset by specifying its `assetId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `assetId` | string |     ✅    | —       | The ID of the asset. |

***

### `Canva Retrieve Brand Template Dataset Definition`

Integration name: **CANVA\_RETRIEVE\_BRAND\_TEMPLATE\_DATASET\_DEFINITION**

Canva's brand template IDs will change later this year, including a 6-month integration migration. API access requires Enterprise membership, providing autofill for images, text, and charts, although chart data could change during preview.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description            |
| ----------------- | ------ | :------: | ------- | ---------------------- |
| `brandTemplateId` | string |     ✅    | —       | The brand template ID. |

***

### `Canva Retrieve Canva Enterprise Brand Template Metadata`

Integration name: **CANVA\_RETRIEVE\_CANVA\_ENTERPRISE\_BRAND\_TEMPLATE\_METADATA**

Upcoming update will change brand template IDs; integrations must migrate within 6 months. API use requires Canva Enterprise membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description            |
| ----------------- | ------ | :------: | ------- | ---------------------- |
| `brandTemplateId` | string |     ✅    | —       | The brand template ID. |

***

### `Canva Retrieve Design Autofill Job Status`

Integration name: **CANVA\_RETRIEVE\_DESIGN\_AUTOFILL\_JOB\_STATUS**

API users with Canva Enterprise membership can retrieve design autofill job results, potentially requiring multiple requests until a `success` or `failed` status is received.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                 |
| --------- | ------ | :------: | ------- | --------------------------- |
| `jobId`   | string |     ✅    | —       | The design autofill job ID. |

***

### `Canva Retrieve Design Import Job Status`

Integration name: **CANVA\_RETRIEVE\_DESIGN\_IMPORT\_JOB\_STATUS**

Polls for design import job completion status. Use this after CANVA\_CREATE\_DESIGN\_IMPORT\_JOB to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description               |
| --------- | ------ | :------: | ------- | ------------------------- |
| `jobId`   | string |     ✅    | —       | The design import job ID. |

***

### `Canva Retrieve Design Resize Job Status`

Integration name: **CANVA\_RETRIEVE\_DESIGN\_RESIZE\_JOB\_STATUS**

Retrieves the status and results of a design resize job. Polls for design resize job completion status. Use this after CANVA\_CREATE\_DESIGN\_RESIZE\_JOB to check the resize progress. Keep polling until status is 'success' or 'failed'. Successful jobs include the new design ID and temporary access URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------- |
| `job_id`  | string |     ✅    | `"ab12c345-6789-0def-1234-567890abcdef"` | The resize job ID returned from create resize job endpoint |

***

### `Canva Retrieve Folder Details By Id`

Integration name: **CANVA\_RETRIEVE\_FOLDER\_DETAILS\_BY\_ID**

Gets the name and other details of a folder using a folder's `folderID`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description    |
| ---------- | ------ | :------: | ------- | -------------- |
| `folderId` | string |     ✅    | —       | The folder ID. |

***

### `Canva Retrieve User Profile Data`

Integration name: **CANVA\_RETRIEVE\_USER\_PROFILE\_DATA**

Currently, this returns the display name of the user account associated with the provided access token. More user information is expected to be included in the future.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Canva Revoke Oauth Tokens`

Integration name: **CANVA\_REVOKE\_OAUTH\_TOKENS**

Revoke a refresh token to end its lineage and user consent, requiring re-authentication. Authenticate using either basic access with Base64-encoded credentials or body parameters with client ID and secret.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                                                                                                  |
| --------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `token`         | string |     ✅    | —       | The token to revoke.                                                                                                                                                                                                         |
| `client_id`     | string |          | —       | Your integration's unique ID, for authenticating the request. NOTE: We recommend that you use basic access authentication instead of specifying `client_id` and `client_secret` as body parameters.                          |
| `client_secret` | string |          | —       | Your integration's client secret, for authenticating the request. Begins with `cnvca`. NOTE: We recommend that you use basic access authentication instead of specifying `client_id` and `client_secret` as body parameters. |

***

### `Canva Update Asset S Name And Tags By Id`

Integration name: **CANVA\_UPDATE\_ASSET\_S\_NAME\_AND\_TAGS\_BY\_ID**

You can update the name and tags of an asset by specifying its `assetId`. Updating the tags replaces all existing tags of the asset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |          | —       | The name of the asset. This is shown in the Canva UI. When this field is undefined, nothing is updated. Maximum length 50 characters.                         |
| `tags`    | array  |          | —       | The replacement tags for the asset. When this field is undefined, nothing is updated. Maximum length 50 tags. Each tag has a maximum length of 50 characters. |
| `assetId` | string |     ✅    | —       | The ID of the asset.                                                                                                                                          |

***

### `Canva Update Folder Details By Id`

Integration name: **CANVA\_UPDATE\_FOLDER\_DETAILS\_BY\_ID**

Updates a folder's details using its `folderID`. Currently, you can only update a folder's name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                |
| ---------- | ------ | :------: | ------- | ------------------------------------------ |
| `name`     | string |     ✅    | —       | The folder name, as shown in the Canva UI. |
| `folderId` | string |     ✅    | —       | The folder ID.                             |

***

### `Canva Validate Oauth Token Properties`

Integration name: **CANVA\_VALIDATE\_OAUTH\_TOKEN\_PROPERTIES**

Check an access token's validity and properties via introspection, requiring authentication. Use Basic access (Base64 encoded `client_id:client_secret`) or body parameters for credentialing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                                                                                                  |
| --------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `token`         | string |     ✅    | —       | The token to introspect.                                                                                                                                                                                                     |
| `client_id`     | string |          | —       | Your integration's unique ID, for authenticating the request. NOTE: We recommend that you use basic access authentication instead of specifying `client_id` and `client_secret` as body parameters.                          |
| `client_secret` | string |          | —       | Your integration's client secret, for authenticating the request. Begins with `cnvca`. NOTE: We recommend that you use basic access authentication instead of specifying `client_id` and `client_secret` as body parameters. |


# Capsule CRM

Your Toolhouse AI Worker can connect to Capsule CRM using 109 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](https://toolhouse.app/auth-connections?authkit_slugs=capsule_crm).

## Tools (109)

### `Capsule Crm Add Project Party`

Integration name: **CAPSULE\_CRM\_ADD\_PROJECT\_PARTY**

Tool to add a party (person or organisation) to a project in Capsule CRM. Use when you need to associate an additional contact with a specific project beyond the primary assigned party.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example     | Description                                                                             |
| ------------ | ------- | :------: | ----------- | --------------------------------------------------------------------------------------- |
| `party_id`   | integer |     ✅    | `281193051` | The unique identifier (integer ID) of the person or organisation to add to the project. |
| `project_id` | integer |     ✅    | `5733457`   | The unique identifier (integer ID) of the project to add the party to.                  |

***

### `Capsule Crm Create Category`

Integration name: **CAPSULE\_CRM\_CREATE\_CATEGORY**

Tool to create a new task category in Capsule CRM. Use when you need to add a new category for organizing tasks with a specific name and color.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                                                                           |
| --------- | ------ | :------: | -------------- | ----------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"Phone Call"` | The name of the category                                                                              |
| `colour`  | string |     ✅    | `"#EF4444"`    | The color of the category in hex format (e.g., #EF4444, #d1c21a, #444444). Must include the # prefix. |

***

### `Capsule Crm Create Custom Field Definition`

Integration name: **CAPSULE\_CRM\_CREATE\_CUSTOM\_FIELD\_DEFINITION**

Tool to create a new custom field definition for parties, opportunities, or projects in Capsule CRM. Use when you need to extend standard entity fields with custom attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                      | Description                                                                                                                                     |
| ------------- | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`         | object  |          | —                                            | Reference to a data tag for grouping custom fields.                                                                                             |
| `name`        | string  |     ✅    | `"Customer Type"`                            | The label/name for this custom field that will be displayed in the UI.                                                                          |
| `type`        | string  |     ✅    | —                                            | Data type of the custom field. Determines how values are stored and displayed.                                                                  |
| `entity`      | string  |     ✅    | `"parties"`                                  | Entity type to create the custom field for. Use 'parties' for contacts, 'opportunities' for sales opportunities, or 'kases' for projects/cases. |
| `options`     | array   |          | —                                            | List of valid values for 'list' or 'multiselectlist' field types. Required for those types, ignored for others.                                 |
| `important`   | boolean |          | —                                            | Marks whether the field should be highlighted as critical or important in the UI.                                                               |
| `captureRule` | string  |          | —                                            | Restricts applicability of party custom fields to person or organisation.                                                                       |
| `description` | string  |          | `"Select the type of customer relationship"` | Extended explanation of the field's purpose or usage instructions.                                                                              |

***

### `Capsule Crm Create Entry`

Integration name: **CAPSULE\_CRM\_CREATE\_ENTRY**

Tool to create a new note entry in Capsule CRM. Note: Only note type entries can be created via API. Emails and tasks can be viewed but not created through this endpoint. Use when you need to add a new note record linked to a party, opportunity, or project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                           | Description                                                                                                                         |
| -------------- | ------- | :------: | ----------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `kase`         | object  |          | —                                                                 | Project (kase) to link the entry to. Exactly one of party, opportunity, or kase must be provided.                                   |
| `type`         | string  |     ✅    | `"note"`                                                          | Type of entry. Only 'note' is supported for creation via API. Emails and tasks can be viewed but not created through this endpoint. |
| `party`        | object  |          | —                                                                 | Party (person or organisation) to link the entry to. Exactly one of party, opportunity, or kase must be provided.                   |
| `content`      | string  |     ✅    | `"Test entry created via API - verifying endpoint functionality"` | Text content of the entry.                                                                                                          |
| `entryAt`      | string  |          | `"2024-01-15T10:30:00Z"`                                          | Timestamp for the entry in ISO8601 format. Defaults to current time if not provided.                                                |
| `attachments`  | array   |          | —                                                                 | Array of attachment references with tokens from the Upload Attachment endpoint.                                                     |
| `opportunity`  | object  |          | —                                                                 | Opportunity to link the entry to. Exactly one of party, opportunity, or kase must be provided.                                      |
| `activityType` | integer |          | —                                                                 | Activity type ID. Common values: -1 for Note, -4 for Task completed.                                                                |

***

### `Capsule Crm Create Lost Reason`

Integration name: **CAPSULE\_CRM\_CREATE\_LOST\_REASON**

Tool to create a new lost reason in Capsule CRM. Use when you need to add a new reason option for tracking why opportunities were lost. Lost reasons help categorize unsuccessful deals and can be included or excluded from conversion rate calculations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example            | Description                                                                                                                                                |
| ----------------------- | ------- | :------: | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                  | string  |     ✅    | `"Price too high"` | The name of the lost reason. This will appear in dropdown lists when marking opportunities as lost.                                                        |
| `includedForConversion` | boolean |          | —                  | Whether to include this lost reason in conversion rate calculations. Set to true to include, false to exclude. If omitted, defaults to the system setting. |

***

### `Capsule Crm Create Milestone`

Integration name: **CAPSULE\_CRM\_CREATE\_MILESTONE**

Tool to create a new milestone in Capsule CRM. Use when you need to add a new stage to a sales pipeline with defined probability and staleness criteria.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                         | Description                                                                                                                                                                                      |
| ------------- | ------- | :------: | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`        | string  |     ✅    | `"Prospect"`                                                    | Milestone identifier name. This is the stage name that will be displayed in the sales pipeline.                                                                                                  |
| `description` | string  |          | `"The potential buyer has shared a goal or a problem with you"` | Detailed explanation of the milestone. Provides additional context about what this stage represents.                                                                                             |
| `probability` | integer |     ✅    | `10`                                                            | Win probability percentage (0-100). Indicates the likelihood of closing deals at this stage. Required field. Note: Must be exactly 0 or 100 if the milestone represents a complete/closed stage. |

***

### `Capsule Crm Create Opportunity`

Integration name: **CAPSULE\_CRM\_CREATE\_OPPORTUNITY**

Tool to create a new opportunity in Capsule CRM. Use when you need to track a potential sale with a party in the sales pipeline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                    | Description                                                                          |
| ----------------- | ------- | :------: | ---------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| `name`            | string  |     ✅    | `"Q1 Enterprise Deal"`                                     | The name/title of the opportunity. Required.                                         |
| `tags`            | array   |          | —                                                          | Tags to associate with the opportunity. Optional.                                    |
| `party`           | object  |     ✅    | —                                                          | Party (person or organisation) associated with this opportunity. Required.           |
| `value`           | object  |          | —                                                          | Value of the opportunity.                                                            |
| `fields`          | array   |          | —                                                          | Custom field values for the opportunity. Optional.                                   |
| `tracks`          | array   |          | —                                                          | List of tracks to associate with the opportunity. Optional.                          |
| `duration`        | integer |          | —                                                          | Duration value (used with durationBasis). Optional.                                  |
| `milestone`       | object  |     ✅    | —                                                          | Milestone in the sales pipeline. Required by API validation.                         |
| `description`     | string  |          | `"Potential enterprise contract for annual subscription."` | Description of the opportunity. Optional.                                            |
| `probability`     | integer |          | `75`                                                       | Probability percentage (0-100) of closing the deal. Optional.                        |
| `durationBasis`   | string  |          | —                                                          | Duration basis for the opportunity (e.g., 'DAY', 'WEEK', 'MONTH', 'YEAR'). Optional. |
| `expectedCloseOn` | string  |          | `"2024-12-31"`                                             | Expected close date in ISO date format (YYYY-MM-DD). Optional.                       |

***

### `Capsule Crm Create Opportunity Party`

Integration name: **CAPSULE\_CRM\_CREATE\_OPPORTUNITY\_PARTY**

Tool to add a party (person or organisation) to an opportunity in Capsule CRM. Use when you need to associate an additional party with an existing opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example     | Description                                                                                         |
| ---------------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------------------------- |
| `party_id`       | integer |     ✅    | `281193066` | The unique identifier (integer ID) of the party (person or organisation) to add to the opportunity. |
| `opportunity_id` | integer |     ✅    | `19348624`  | The unique identifier (integer ID) of the opportunity to add the party to.                          |

***

### `Capsule Crm Create Party`

Integration name: **CAPSULE\_CRM\_CREATE\_PARTY**

Tool to create a Party in Capsule CRM. Use when you have collected a person's or organisation's details and need to add a new record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                       |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------- |
| `name`           | string |          | —       | Name for organisation when `type='organisation'`. |
| `tags`           | array  |          | —       | List of tags to apply to the party.               |
| `team`           | object |          | —       | Assign team ID or clear by setting `null`.        |
| `type`           | string |     ✅    | —       | Set to 'person' or 'organisation'.                |
| `about`          | string |          | —       | Free-text description.                            |
| `owner`          | object |          | —       | Assign owner user ID or clear by setting `null`.  |
| `title`          | string |          | —       | Person title, e.g. 'Mr' or 'Ms'.                  |
| `fields`         | array  |          | —       | List of custom fields for the party.              |
| `jobTitle`       | string |          | —       | Job title for the person.                         |
| `lastName`       | string |          | —       | Required when `type='person'`.                    |
| `websites`       | array  |          | —       | List of website URLs for the party.               |
| `addresses`      | array  |          | —       | List of postal addresses for the party.           |
| `firstName`      | string |          | —       | Required when `type='person'`.                    |
| `organisation`   | object |          | —       | Link a person to an organisation by ID or name.   |
| `phoneNumbers`   | array  |          | —       | List of phone numbers for the party.              |
| `emailAddresses` | array  |          | —       | List of email addresses for the party.            |

***

### `Capsule Crm Create Project`

Integration name: **CAPSULE\_CRM\_CREATE\_PROJECT**

Tool to create a new project (case) in Capsule CRM. Use when you need to create a project associated with a party (person or organisation) to track work or engagements.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                           | Description                                                             |
| ----------------- | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------- |
| `name`            | string  |     ✅    | `"API Integration"`                               | Name of the project. Required.                                          |
| `party`           | object  |     ✅    | —                                                 | Party (person or organisation) to associate with the project. Required. |
| `stage`           | integer |          | `123456`                                          | ID of the project stage. Optional.                                      |
| `fields`          | array   |          | —                                                 | Custom field values for the project. Optional.                          |
| `status`          | string  |     ✅    | `"OPEN"`                                          | Project status. Common values: 'OPEN', 'CLOSED'. Required.              |
| `tracks`          | array   |          | —                                                 | List of tracks to associate with the project. Optional.                 |
| `description`     | string  |          | `"This project tracks our API integration work."` | Description of the project. Optional.                                   |
| `opportunity`     | object  |          | `{"id":19348617}`                                 | Reference to an existing opportunity.                                   |
| `expectedCloseOn` | string  |          | `"2024-12-31"`                                    | Expected close date in ISO date format (YYYY-MM-DD). Optional.          |

***

### `Capsule Crm Create Stage`

Integration name: **CAPSULE\_CRM\_CREATE\_STAGE**

Tool to create a new stage in a board in Capsule CRM. Use when you need to add a new workflow stage to an existing board with a specific display order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                          | Description                                                                           |
| -------------- | ------- | :------: | -------------------------------- | ------------------------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"Project Brief"`                | The name of the stage. This identifies the stage within the board.                    |
| `board`        | integer |     ✅    | `34`                             | The board ID to which this stage belongs. Must be a valid existing board ID.          |
| `description`  | string  |          | `"Define what needs to be done"` | A description of what the stage represents. Provides context for the stage's purpose. |
| `displayOrder` | integer |     ✅    | `1`                              | The position of the stage in the board workflow. Lower numbers appear first.          |

***

### `Capsule Crm Create Task`

Integration name: **CAPSULE\_CRM\_CREATE\_TASK**

Tool to create a new task in Capsule CRM. Use when you need to add a task with a description and due date, optionally linking it to parties, opportunities, or projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                         | Description                                                                                                  |
| ------------- | ------ | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `kase`        | object |          | —                                               | Project (case) to associate with the task. Only one of party, opportunity, or kase can be set.               |
| `dueOn`       | string |     ✅    | `"2026-02-20"`                                  | Due date in YYYY-MM-DD format (required)                                                                     |
| `owner`       | object |          | —                                               | User to assign as task owner (specify by ID)                                                                 |
| `party`       | object |          | —                                               | Party (contact/organization) to associate with the task. Only one of party, opportunity, or kase can be set. |
| `detail`      | string |          | `"Discuss pricing and timeline for Q1 project"` | Additional details about the task                                                                            |
| `repeat`      | object |          | —                                               | Set up recurring task with interval and frequency                                                            |
| `dueTime`     | string |          | `"14:30:00"`                                    | Due time in HH:MM:SS format (e.g., '14:30:00')                                                               |
| `category`    | object |          | —                                               | Task category to assign (specify by ID)                                                                      |
| `description` | string |     ✅    | `"Follow up with client"`                       | Short description of the task (required)                                                                     |
| `opportunity` | object |          | —                                               | Opportunity to associate with the task. Only one of party, opportunity, or kase can be set.                  |

***

### `Capsule Crm Create Title`

Integration name: **CAPSULE\_CRM\_CREATE\_TITLE**

Tool to create a new custom person title in Capsule CRM. Use when you need to add a new title option (e.g., 'Madam', 'Sir', 'Dr') for person records.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                         |
| ------------- | ------ | :------: | ------- | ----------------------------------- |
| `personTitle` | object |     ✅    | —       | Container object for the title data |

***

### `Capsule Crm Create Track`

Integration name: **CAPSULE\_CRM\_CREATE\_TRACK**

Tool to create a new track in Capsule CRM by applying a track definition to a project or opportunity. Use when you need to apply a predefined sequence of tasks to a specific entity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example            | Description                                                                                           |
| ------------- | ------- | :------: | ------------------ | ----------------------------------------------------------------------------------------------------- |
| `kase`        | integer |          | `123456`           | The project (kase) ID to apply the track to. Either kase or opportunity must be provided, not both.   |
| `definition`  | integer |     ✅    | `163117`           | The track definition ID to apply. Required.                                                           |
| `description` | string  |          | `"API Test Track"` | Custom description for this track instance. Optional.                                                 |
| `opportunity` | integer |          | `19348616`         | The opportunity ID to apply the track to. Either kase or opportunity must be provided, not both.      |
| `trackDateOn` | string  |     ✅    | `"2026-02-16"`     | The date to associate with the track, used to calculate task due dates. Format: YYYY-MM-DD. Required. |

***

### `Capsule Crm Create Track Definition`

Integration name: **CAPSULE\_CRM\_CREATE\_TRACK\_DEFINITION**

Tool to create a new track definition in Capsule CRM. Use when you need to define a reusable sequence of tasks for business processes that can be applied to opportunities or projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                     | Description                                                                                                                                  |
| ----------------- | ------ | :------: | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`             | string |          | `"sales,high-priority"`     | Comma-separated tags that will be automatically applied when the track is activated.                                                         |
| `direction`       | string |     ✅    | —                           | Determines the reference point for task timing. Currently only START\_DATE is supported.                                                     |
| `captureRule`     | string |     ✅    | —                           | Specifies where the track can be applied. OPPORTUNITY: track is available for opportunities. KASE: track is available for projects.          |
| `description`     | string |     ✅    | `"Sales Follow-up Process"` | Name/title of the track definition. This identifies the track template.                                                                      |
| `taskDefinitions` | array  |     ✅    | —                           | Collection of task definition templates. These define the tasks that will be created when the track is applied to an opportunity or project. |

***

### `Capsule Crm Delete Board`

Integration name: **CAPSULE\_CRM\_DELETE\_BOARD**

Tool to delete (archive) a specific board in Capsule CRM. Use when you need to remove a board that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                |
| ---------- | ------- | :------: | ------- | ---------------------------------------------------------- |
| `board_id` | integer |     ✅    | `62139` | The unique identifier (integer ID) of the board to delete. |

***

### `Capsule Crm Delete Category`

Integration name: **CAPSULE\_CRM\_DELETE\_CATEGORY**

Tool to delete a category from Capsule CRM. Use when you need to remove a category that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example     | Description                                      |
| ------------- | ------ | :------: | ----------- | ------------------------------------------------ |
| `category_id` | string |     ✅    | `"2574350"` | The unique identifier of the category to delete. |

***

### `Capsule Crm Delete Custom Field Definition`

Integration name: **CAPSULE\_CRM\_DELETE\_CUSTOM\_FIELD\_DEFINITION**

Tool to delete a custom field definition from an entity type in Capsule CRM. This removes the field value from any parties, opportunities, or projects it was assigned to. Use when you need to permanently remove a custom field definition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                                                                   |
| ---------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------- |
| `entity`   | string  |     ✅    | `"parties"` | The entity type to delete the custom field definition from. Must be one of: parties, opportunities, or kases. |
| `field_id` | integer |     ✅    | `949102`    | The unique identifier (integer ID) of the custom field definition to delete.                                  |

***

### `Capsule Crm Delete Entity Tag`

Integration name: **CAPSULE\_CRM\_DELETE\_ENTITY\_TAG**

Tool to delete a tag from an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need to remove a specific tag from all entities of a given type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                                                                     |
| --------- | ------- | :------: | ----------- | ----------------------------------------------------------------------------------------------- |
| `entity`  | string  |     ✅    | `"parties"` | The entity type to delete the tag from. Must be one of: 'parties', 'opportunities', or 'kases'. |
| `tag_id`  | integer |     ✅    | `5763721`   | The unique numeric identifier of the tag to delete from the entity type.                        |

***

### `Capsule Crm Delete Entry`

Integration name: **CAPSULE\_CRM\_DELETE\_ENTRY**

Tool to delete an entry (note, email, or task) from Capsule CRM. Use when you need to remove an entry by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                          |
| --------- | ------- | :------: | ----------- | ------------------------------------ |
| `id`      | integer |     ✅    | `470272845` | The unique ID of the entry to delete |

***

### `Capsule Crm Delete Lost Reason`

Integration name: **CAPSULE\_CRM\_DELETE\_LOST\_REASON**

Tool to delete a lost reason from Capsule CRM. The deleted reason remains available for historical reporting but cannot be assigned to new opportunities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                      |
| ---------------- | ------- | :------: | --------- | ---------------------------------------------------------------- |
| `lost_reason_id` | integer |     ✅    | `3045104` | The unique identifier (integer ID) of the lost reason to delete. |

***

### `Capsule Crm Delete Milestone`

Integration name: **CAPSULE\_CRM\_DELETE\_MILESTONE**

Tool to delete a specific milestone from Capsule CRM. Use when you need to remove a milestone that is no longer needed. Note: Cannot delete a milestone while it is being used on an opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                    |
| -------------- | ------- | :------: | --------- | -------------------------------------------------------------- |
| `milestone_id` | integer |     ✅    | `2841257` | The unique identifier (integer ID) of the milestone to delete. |

***

### `Capsule Crm Delete Opportunity`

Integration name: **CAPSULE\_CRM\_DELETE\_OPPORTUNITY**

Tool to delete an opportunity from Capsule CRM. The opportunity can be restored within 30 days via the web interface. Use when you need to remove an opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example    | Description                                                      |
| ---------------- | ------- | :------: | ---------- | ---------------------------------------------------------------- |
| `opportunity_id` | integer |     ✅    | `19348619` | The unique identifier (integer ID) of the opportunity to delete. |

***

### `Capsule Crm Delete Opportunity Party`

Integration name: **CAPSULE\_CRM\_DELETE\_OPPORTUNITY\_PARTY**

Tool to remove a party (person or organisation) from an opportunity in Capsule CRM. Use when you need to disassociate a contact from a specific opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example     | Description                                                                                      |
| ---------------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------ |
| `party_id`       | integer |     ✅    | `280707916` | The unique identifier (integer ID) of the person or organisation to remove from the opportunity. |
| `opportunity_id` | integer |     ✅    | `19348616`  | The unique identifier (integer ID) of the opportunity from which to remove the party.            |

***

### `Capsule Crm Delete Party`

Integration name: **CAPSULE\_CRM\_DELETE\_PARTY**

Tool to fully delete a specific party (person or organisation) from Capsule CRM. Use when you need to completely remove a party after confirming no active references remain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example  | Description                                                                         |
| ---------- | ------- | :------: | -------- | ----------------------------------------------------------------------------------- |
| `party_id` | integer |     ✅    | `123456` | The unique identifier (integer ID) of the party (person or organisation) to delete. |

***

### `Capsule Crm Delete Project`

Integration name: **CAPSULE\_CRM\_DELETE\_PROJECT**

Tool to delete a project (case) from Capsule CRM. The project can be restored within 30 days via the web interface. Use when you need to remove a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                  |
| ------------ | ------- | :------: | --------- | ------------------------------------------------------------ |
| `project_id` | integer |     ✅    | `5733456` | The unique identifier (integer ID) of the project to delete. |

***

### `Capsule Crm Delete Project Party`

Integration name: **CAPSULE\_CRM\_DELETE\_PROJECT\_PARTY**

Tool to remove a party (person or organisation) from a project in Capsule CRM. Use when you need to disassociate a contact from a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example     | Description                                                                                  |
| ------------ | ------- | :------: | ----------- | -------------------------------------------------------------------------------------------- |
| `party_id`   | integer |     ✅    | `280707890` | The unique identifier (integer ID) of the person or organisation to remove from the project. |
| `project_id` | integer |     ✅    | `5733455`   | The unique identifier (integer ID) of the project from which to remove the party.            |

***

### `Capsule Crm Delete Stage`

Integration name: **CAPSULE\_CRM\_DELETE\_STAGE**

Tool to delete a specific stage from a board in Capsule CRM. Use when you need to remove a stage that is no longer needed. Note: Cannot delete a stage while it is being used by open projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example  | Description                                                |
| ---------- | ------- | :------: | -------- | ---------------------------------------------------------- |
| `stage_id` | integer |     ✅    | `310396` | The unique identifier (integer ID) of the stage to delete. |

***

### `Capsule Crm Delete Task`

Integration name: **CAPSULE\_CRM\_DELETE\_TASK**

Tool to delete a specific task from Capsule CRM. Use when you need to remove a task by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                               |
| --------- | ------- | :------: | ----------- | --------------------------------------------------------- |
| `task_id` | integer |     ✅    | `157972808` | The unique identifier (integer ID) of the task to delete. |

***

### `Capsule Crm Delete Title`

Integration name: **CAPSULE\_CRM\_DELETE\_TITLE**

Tool to delete a specific title from Capsule CRM. Use when you need to remove a title that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example   | Description                                                |
| ---------- | ------- | :------: | --------- | ---------------------------------------------------------- |
| `title_id` | integer |     ✅    | `2267309` | The unique identifier (integer ID) of the title to delete. |

***

### `Capsule Crm Delete Track`

Integration name: **CAPSULE\_CRM\_DELETE\_TRACK**

Tool to delete a specific track from Capsule CRM. Use when you need to remove a track that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example    | Description                                                |
| ---------- | ------- | :------: | ---------- | ---------------------------------------------------------- |
| `track_id` | integer |     ✅    | `11331507` | The unique identifier (integer ID) of the track to delete. |

***

### `Capsule Crm Delete Track Definition`

Integration name: **CAPSULE\_CRM\_DELETE\_TRACK\_DEFINITION**

Tool to delete a specific track definition from Capsule CRM. Use when you need to remove a track definition that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example  | Description                                                           |
| --------------------- | ------- | :------: | -------- | --------------------------------------------------------------------- |
| `track_definition_id` | integer |     ✅    | `163116` | The unique identifier (integer ID) of the track definition to delete. |

***

### `Capsule Crm Get Activity Type`

Integration name: **CAPSULE\_CRM\_GET\_ACTIVITY\_TYPE**

Tool to get a specific activity type by ID. Use when you need to retrieve details about a particular activity type including its name, icon, and whether it updates the last contacted date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                    |
| ---------------- | ------- | :------: | ------- | ---------------------------------------------- |
| `activityTypeId` | integer |     ✅    | `1`     | The unique ID of the activity type to retrieve |

***

### `Capsule Crm Get Attachment`

Integration name: **CAPSULE\_CRM\_GET\_ATTACHMENT**

Tool to retrieve a specific attachment by ID from Capsule CRM. Returns the file content along with metadata (filename, content type). Use when you need to download an attachment that is associated with an entry (note, email, or completed task).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example     | Description                                         |
| --------------- | ------- | :------: | ----------- | --------------------------------------------------- |
| `attachment_id` | integer |     ✅    | `336023340` | The unique identifier of the attachment to retrieve |

***

### `Capsule Crm Get Board`

Integration name: **CAPSULE\_CRM\_GET\_BOARD**

Tool to get a specific board by ID from Capsule CRM. Use when you need to retrieve details of a particular board including its name, description, and timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                    |
| --------- | ------- | :------: | ------- | ---------------------------------------------- |
| `boardId` | integer |     ✅    | `62139` | The unique identifier of the board to retrieve |

***

### `Capsule Crm Get Category`

Integration name: **CAPSULE\_CRM\_GET\_CATEGORY**

Tool to get a specific category by ID. Use when you need to retrieve details of a particular category including its name and colour.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                        |
| ------------ | ------- | :------: | --------- | -------------------------------------------------- |
| `categoryId` | integer |     ✅    | `2565899` | The unique identifier of the category to retrieve. |

***

### `Capsule Crm Get Current User`

Integration name: **CAPSULE\_CRM\_GET\_CURRENT\_USER**

Tool to retrieve the current authenticated user's details including id, username, name, locale, currency, status, timezone, lastLoginAt, and taskReminder settings. Use when you need to identify the current user or access their preferences and settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example     | Description                                                                                                                                                                                  |
| --------- | ----- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `embed`   | array |          | `["party"]` | List of additional data to embed. Use \['party'] to include full party details (addresses, phone numbers, email addresses, etc.). Without this parameter, only basic party info is returned. |

***

### `Capsule Crm Get Custom Field Definition`

Integration name: **CAPSULE\_CRM\_GET\_CUSTOM\_FIELD\_DEFINITION**

Tool to get a specific custom field definition by ID from Capsule CRM. Use when you need to retrieve details about a custom field including its type, options, and configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                   |
| ---------- | ------- | :------: | ----------- | ------------------------------------------------------------- |
| `entity`   | string  |     ✅    | `"parties"` | Entity type - must be 'parties', 'opportunities', or 'kases'. |
| `field_id` | integer |     ✅    | `943695`    | The unique identifier of the custom field definition.         |

***

### `Capsule Crm Get Entity Tag`

Integration name: **CAPSULE\_CRM\_GET\_ENTITY\_TAG**

Tool to retrieve a specific tag by ID for an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need details about a specific tag associated with an entity type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                                                                       |
| --------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------- |
| `entity`  | string  |     ✅    | `"parties"` | The entity type to retrieve the tag from. Must be one of: 'parties', 'opportunities', or 'kases'. |
| `tag_id`  | integer |     ✅    | `5755664`   | The unique numeric identifier of the tag to retrieve.                                             |

***

### `Capsule Crm Get Entry`

Integration name: **CAPSULE\_CRM\_GET\_ENTRY**

Tool to retrieve a specific entry by ID. Use when you need to fetch details of a note, email, or task entry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                            |
| --------- | ------- | :------: | ----------- | -------------------------------------- |
| `id`      | integer |     ✅    | `468533427` | The unique ID of the entry to retrieve |

***

### `Capsule Crm Get Lost Reason`

Integration name: **CAPSULE\_CRM\_GET\_LOST\_REASON**

Tool to retrieve a specific lost reason by ID from Capsule CRM. Use when you need details about a particular lost reason, such as its name or conversion tracking status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                  |
| -------------- | ------- | :------: | --------- | ------------------------------------------------------------ |
| `lostReasonId` | integer |     ✅    | `3036354` | Numeric identifier for the specific lost reason to retrieve. |

***

### `Capsule Crm Get Milestone`

Integration name: **CAPSULE\_CRM\_GET\_MILESTONE**

Tool to get a specific milestone by ID from Capsule CRM. Use when you need to retrieve details of a particular milestone including its name, description, completion status, and probability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                         |
| -------------- | ------- | :------: | --------- | --------------------------------------------------- |
| `milestone_id` | integer |     ✅    | `2829267` | The unique identifier of the milestone to retrieve. |

***

### `Capsule Crm Get Opportunity`

Integration name: **CAPSULE\_CRM\_GET\_OPPORTUNITY**

Tool to retrieve a specific opportunity by its ID from Capsule CRM. Use when you need detailed information about a single opportunity including value, milestone, and associated parties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example    | Description                                   |
| ---------------- | ------- | :------: | ---------- | --------------------------------------------- |
| `opportunity_id` | integer |     ✅    | `19348622` | The unique ID of the opportunity to retrieve. |

***

### `Capsule Crm Get Pipeline`

Integration name: **CAPSULE\_CRM\_GET\_PIPELINE**

Tool to get a specific pipeline by ID from Capsule CRM. Use when you need to retrieve details of a particular pipeline including its name, description, and timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                       |
| ------------ | ------- | :------: | -------- | ------------------------------------------------- |
| `pipelineId` | integer |     ✅    | `329107` | The unique identifier of the pipeline to retrieve |

***

### `Capsule Crm Get Project`

Integration name: **CAPSULE\_CRM\_GET\_PROJECT**

Tool to retrieve a specific project (case) by its ID from Capsule CRM. Use when you need detailed information about a single project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                               |
| ------------ | ------- | :------: | --------- | ----------------------------------------- |
| `project_id` | integer |     ✅    | `5733458` | The unique ID of the project to retrieve. |

***

### `Capsule Crm Get Stage`

Integration name: **CAPSULE\_CRM\_GET\_STAGE**

Tool to get a specific stage by ID from Capsule CRM. Use when you need to retrieve details of a particular stage including its name, description, board, and display order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                    |
| --------- | ------- | :------: | -------- | ---------------------------------------------- |
| `stageId` | integer |     ✅    | `310389` | The unique identifier of the stage to retrieve |

***

### `Capsule Crm Get Task`

Integration name: **CAPSULE\_CRM\_GET\_TASK**

Tool to get a specific task by ID. Use when you need to retrieve full details of a task including description, due date, status, and associations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                           |
| --------- | ------- | :------: | ----------- | ------------------------------------- |
| `taskId`  | integer |     ✅    | `157972806` | The unique ID of the task to retrieve |

***

### `Capsule Crm Get Track`

Integration name: **CAPSULE\_CRM\_GET\_TRACK**

Tool to get a specific track by ID. Use when you need to retrieve details of a track including its description, date, direction, and optionally its associated tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                                                                                 |
| --------- | ------- | :------: | ---------- | ----------------------------------------------------------------------------------------------------------- |
| `embed`   | array   |          | `["task"]` | Array of strings to include related data. Allowed value: 'task' to include tasks associated with the track. |
| `trackId` | integer |     ✅    | `11331506` | The unique identifier of the track to retrieve                                                              |

***

### `Capsule Crm Get Track Definition`

Integration name: **CAPSULE\_CRM\_GET\_TRACK\_DEFINITION**

Tool to get a specific track definition by ID from Capsule CRM. Use when you need to retrieve details of a track definition including its description, capture rule, direction, and associated task definitions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example  | Description                                                |
| ------------------- | ------- | :------: | -------- | ---------------------------------------------------------- |
| `trackDefinitionId` | integer |     ✅    | `163116` | The unique identifier of the track definition to retrieve. |

***

### `Capsule Crm Get User`

Integration name: **CAPSULE\_CRM\_GET\_USER**

Tool to get a specific user by ID. Use when you need to retrieve full details of a user including username, email preferences, timezone settings, and optionally their associated party information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                                                                                                                                                                                                                                    |
| --------- | ------- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `embed`   | array   |          | `["party"]` | List of additional data to embed. Use \['party'] to include full party details (createdAt, updatedAt, owner, team, addresses, phoneNumbers, emailAddresses, websites). Without this parameter, only basic party info (id, type, name, pictureURL) is returned. |
| `userId`  | integer |     ✅    | `703743`    | The unique ID of the user to retrieve                                                                                                                                                                                                                          |

***

### `Capsule Crm List Activity Type Icons`

Integration name: **CAPSULE\_CRM\_LIST\_ACTIVITY\_TYPE\_ICONS**

Tool to list available activity type icons in Capsule CRM. Use when you need to retrieve the set of icons available for categorizing activities or when creating/updating activity types. Returns system and custom icons with their identifiers, display names, and order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Activity Types`

Integration name: **CAPSULE\_CRM\_LIST\_ACTIVITY\_TYPES**

Tool to list all activity types on the Capsule account. Use when you need to retrieve available activity types for categorizing activities or understanding what activity classifications are available in the CRM.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Boards`

Integration name: **CAPSULE\_CRM\_LIST\_BOARDS**

Tool to list all boards on the Capsule CRM account. Use when you need to fetch all boards to view their names, descriptions, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Board Stages`

Integration name: **CAPSULE\_CRM\_LIST\_BOARD\_STAGES**

Tool to list stages associated with a board in Capsule CRM. Use when you need to retrieve all stages for a specific board with optional status filtering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                  |
| --------- | ------- | :------: | ---------- | -------------------------------------------- |
| `page`    | integer |          | `1`        | Pagination control. Starts at 1. Default: 1. |
| `status`  | string  |          | `"active"` | Status filter for stages.                    |
| `boardId` | integer |     ✅    | `62139`    | The unique identifier of the board.          |
| `perPage` | integer |          | `25`       | Results per page (1-100 range). Default: 50. |

***

### `Capsule Crm List Categories`

Integration name: **CAPSULE\_CRM\_LIST\_CATEGORIES**

Tool to list all task categories on the Capsule account. Use when you need to retrieve available categories for tasks or filter tasks by category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Countries`

Integration name: **CAPSULE\_CRM\_LIST\_COUNTRIES**

Tool to list all countries on the Capsule CRM account. Returns ISO country codes (alpha2, alpha3, numeric) and country names. Use when you need to reference valid country codes for addresses or other location-based data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Currencies`

Integration name: **CAPSULE\_CRM\_LIST\_CURRENCIES**

Tool to list all available currencies on the Capsule account. Returns ISO 4217 currency codes with their symbols and names. Use when you need to display currency options or validate currency codes for opportunities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Custom Field Definitions`

Integration name: **CAPSULE\_CRM\_LIST\_CUSTOM\_FIELD\_DEFINITIONS**

Tool to list all custom field definitions for parties, opportunities, or projects (kases). Use when you need to discover what custom fields are available for a specific entity type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                               |
| --------- | ------ | :------: | ----------- | --------------------------------------------------------------------------------------------------------- |
| `entity`  | string |     ✅    | `"parties"` | Entity type to retrieve field definitions for. Must be 'parties', 'opportunities', or 'kases' (projects). |

***

### `Capsule Crm List Deleted Opportunities`

Integration name: **CAPSULE\_CRM\_LIST\_DELETED\_OPPORTUNITIES**

Tool to list opportunities deleted or restricted since a given date. Use when you need to identify recently deleted or restricted opportunities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                                          |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `since`   | string |     ✅    | `"2021-01-01T00:00:00Z"` | ISO8601 date/time. Returns only opportunities that have been deleted or made restricted after this date. This parameter is required. |

***

### `Capsule Crm List Deleted Parties`

Integration name: **CAPSULE\_CRM\_LIST\_DELETED\_PARTIES**

Tool to retrieve parties deleted since a given date. Use when you need to sync deletions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                           |
| --------- | ------ | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------- |
| `since`   | string |     ✅    | `"2015-07-14T11:26:19Z"` | The since date is required to return only entities that have been deleted after this date. Must be in ISO8601 format. |

***

### `Capsule Crm List Deleted Projects`

Integration name: **CAPSULE\_CRM\_LIST\_DELETED\_PROJECTS**

Tool to list projects deleted or restricted since a given date. Use when you need to identify recently deleted or restricted projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                                     |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| `since`   | string |     ✅    | `"2024-01-01T00:00:00Z"` | ISO8601 date/time. Returns only projects that have been deleted or made restricted after this date. This parameter is required. |

***

### `Capsule Crm List Entity Entries`

Integration name: **CAPSULE\_CRM\_LIST\_ENTITY\_ENTRIES**

Tool to list entries (notes, emails, tasks) for a specific party, opportunity, or project. Use when you need to retrieve all activity entries associated with an entity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example               | Description                                                                                                                                                                                                                          |
| ---------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`     | integer |          | `1`                   | Page number for pagination. Default: 1                                                                                                                                                                                               |
| `embed`    | array   |          | `["party","creator"]` | List of additional data to embed in the response. Allowed values: 'party' (linked party), 'kase' (linked project), 'opportunity' (linked opportunity), 'creator' (user who created entry), 'activityType' (activity classification). |
| `entity`   | string  |     ✅    | `"parties"`           | Entity type to list entries for: 'parties' (contacts), 'opportunities' (deals), or 'kases' (projects)                                                                                                                                |
| `perPage`  | integer |          | `10`                  | Number of entries to return per page (1-50). Default: 50                                                                                                                                                                             |
| `entityId` | integer |     ✅    | `281193047`           | ID of the party, opportunity, or project to list entries for                                                                                                                                                                         |

***

### `Capsule Crm List Entity Tags`

Integration name: **CAPSULE\_CRM\_LIST\_ENTITY\_TAGS**

Tool to list all tag definitions for a specific entity type (parties, opportunities, or kases). Use when you need to retrieve available tags that can be applied to entities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                                                       |
| --------- | ------ | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `entity`  | string |     ✅    | `"parties"` | Entity type to list tags for. Must be one of: 'parties' (contacts), 'opportunities' (sales opportunities), or 'kases' (projects). |

***

### `Capsule Crm List Entity Tracks`

Integration name: **CAPSULE\_CRM\_LIST\_ENTITY\_TRACKS**

Tool to list tracks applied to a specific opportunity or project. Use when you need to retrieve all tracks associated with an entity, optionally including their tasks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example           | Description                                                                                                 |
| ---------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | `1`               | The page of results to return. Default: 1.                                                                  |
| `embed`    | array   |          | `["task"]`        | Array of strings to include related data. Allowed value: 'task' to include tasks associated with the track. |
| `entity`   | string  |     ✅    | `"opportunities"` | Entity type - must be 'opportunities' or 'kases' (projects)                                                 |
| `perPage`  | integer |          | `25`              | Number of results per page (1-100). Default: 50.                                                            |
| `entityId` | integer |     ✅    | `19348616`        | The unique identifier for the specific opportunity or project                                               |

***

### `Capsule Crm List Entries By Date`

Integration name: **CAPSULE\_CRM\_LIST\_ENTRIES\_BY\_DATE**

Tool to list notes, emails, and completed party tasks in descending order by entry date. Use when you need the most recent entries first after authenticating.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example               | Description                                                                                                                                                                                                                          |
| --------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`    | integer |          | `1`                   | The page of results to return. Default: 1                                                                                                                                                                                            |
| `embed`   | array   |          | `["party","creator"]` | List of additional data to embed in the response. Allowed values: 'party' (linked party), 'kase' (linked project), 'opportunity' (linked opportunity), 'creator' (user who created entry), 'activityType' (activity classification). |
| `perPage` | integer |          | `25`                  | The number of entries to return per page (1-100). Default: 50                                                                                                                                                                        |

***

### `Capsule Crm List Goals`

Integration name: **CAPSULE\_CRM\_LIST\_GOALS**

Tool to list all goals on the Capsule account. Use when you need to retrieve goals with pagination support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                    |
| --------- | ------- | :------: | ------- | ---------------------------------------------- |
| `page`    | integer |          | `1`     | The page of results to return. Default: 1.     |
| `perPage` | integer |          | `50`    | Number of goals per page (1-100). Default: 50. |

***

### `Capsule Crm List Lost Reasons`

Integration name: **CAPSULE\_CRM\_LIST\_LOST\_REASONS**

Tool to list all lost reasons on the Capsule account. Use when you need to retrieve available reasons for marking opportunities as lost.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Milestones`

Integration name: **CAPSULE\_CRM\_LIST\_MILESTONES**

Tool to list all milestones on the Capsule account. Use when you need to retrieve available milestones for pipelines or opportunities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                         |
| --------- | ------- | :------: | ------- | --------------------------------------------------- |
| `page`    | integer |          | `1`     | The page of results to return. Default: 1.          |
| `perPage` | integer |          | `25`    | Number of milestones per page (1-100). Default: 50. |

***

### `Capsule Crm List Opportunities`

Integration name: **CAPSULE\_CRM\_LIST\_OPPORTUNITIES**

Tool to list all opportunities from Capsule CRM with pagination and filtering. Use when you need to retrieve sales opportunities with optional filters for date changes or embed additional data like tags, custom fields, party details, or milestones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                                                                                         |
| --------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | `1`                      | The page of results to return (starts at 1). Default: 1.                                                            |
| `embed`   | array   |          | `["tags","party"]`       | List of additional data to embed. Allowed values: 'tags', 'fields', 'party', 'milestone', 'missingImportantFields'. |
| `since`   | string  |          | `"2024-01-01T00:00:00Z"` | Include only opportunities changed after this date (ISO8601 format, e.g., '2024-01-01T00:00:00Z').                  |
| `perPage` | integer |          | `50`                     | Number of opportunities per page (1-100). Default: 50.                                                              |

***

### `Capsule Crm List Opportunity Parties`

Integration name: **CAPSULE\_CRM\_LIST\_OPPORTUNITY\_PARTIES**

Tool to list additional parties associated with an opportunity in Capsule CRM. Use when you need to retrieve contacts related to a specific opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                   | Description                                                                                                   |
| --------------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                       | Page number of results to return (>=1). Default: 1.                                                           |
| `embed`         | array   |          | `["tags","organisation"]` | List of additional data to embed. Allowed values: 'tags', 'fields', 'organisation', 'missingImportantFields'. |
| `perPage`       | integer |          | `50`                      | Number of parties per page (1-100). Default: 50.                                                              |
| `opportunityId` | integer |     ✅    | `19348620`                | The unique identifier of the opportunity to list parties for.                                                 |

***

### `Capsule Crm List Opportunity Projects`

Integration name: **CAPSULE\_CRM\_LIST\_OPPORTUNITY\_PROJECTS**

Tool to list projects (cases) associated with a specific opportunity in Capsule CRM. Use when you need to retrieve all projects linked to an opportunity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example         | Description                                                                                                                    |
| --------------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `page`          | integer |          | `1`             | The page of results to return (starts at 1). Default: 1.                                                                       |
| `embed`         | string  |          | `"tags,fields"` | Comma-separated list of additional data to embed. Options: 'tags', 'fields', 'party', 'opportunity', 'missingImportantFields'. |
| `perPage`       | integer |          | `50`            | Number of projects per page (1-100). Default: 50.                                                                              |
| `opportunityId` | integer |     ✅    | `19348617`      | The unique identifier of the opportunity to retrieve projects for.                                                             |

***

### `Capsule Crm List Org Employees`

Integration name: **CAPSULE\_CRM\_LIST\_ORG\_EMPLOYEES**

Tool to list employees linked to a specific organisation (party). Use when you need to retrieve all employees under a given organisation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example             | Description                                                                                                    |
| ---------- | ------- | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | —                   | Page number of results to return, must be at least 1                                                           |
| `embed`    | array   |          | `["tags","fields"]` | List of additional data to include; allowed values: 'tags', 'fields', 'organisation', 'missingImportantFields' |
| `perPage`  | integer |          | —                   | Number of results per page, must be between 1 and 100                                                          |
| `party_id` | integer |     ✅    | `1234`              | ID of the organisation (party) to list employees for                                                           |

***

### `Capsule Crm List Parties`

Integration name: **CAPSULE\_CRM\_LIST\_PARTIES**

Tool to list all parties (contacts) on the account. Use when you need to fetch contacts with optional filters or embed additional related data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                   | Description                                                                                                                   |
| --------- | ------- | :------: | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | `1`                       | Page number of results to return (>=1). Default: 1.                                                                           |
| `embed`   | array   |          | `["tags","organisation"]` | Comma-separated list of additional data to embed. Allowed values: 'tags', 'fields', 'organisation', 'missingImportantFields'. |
| `since`   | string  |          | `"2023-01-01T00:00:00Z"`  | Include only parties changed after this date (ISO8601 format).                                                                |
| `perPage` | integer |          | `50`                      | Number of parties per page (1-100). Default: 50.                                                                              |

***

### `Capsule Crm List Party Opportunities`

Integration name: **CAPSULE\_CRM\_LIST\_PARTY\_OPPORTUNITIES**

Tool to list all opportunities associated with a specific party in Capsule CRM. Use when you need to view all sales opportunities for a particular contact or organisation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                              |
| --------- | ------- | :------: | ----------- | -------------------------------------------------------- |
| `page`    | integer |          | `1`         | The page of results to return (starts at 1). Default: 1. |
| `partyId` | integer |     ✅    | `281193047` | The ID of the party to list opportunities for. Required. |
| `perPage` | integer |          | `50`        | Number of opportunities per page (1-100). Default: 50.   |

***

### `Capsule Crm List Party Projects`

Integration name: **CAPSULE\_CRM\_LIST\_PARTY\_PROJECTS**

Tool to list projects associated with a specific party in Capsule CRM. Use when you need to retrieve all projects linked to a contact or organisation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                                                                                    |
| --------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `page`    | integer |          | `1`             | The page of results to return (starts at 1). Default: 1.                                                                       |
| `embed`   | string  |          | `"tags,fields"` | Comma-separated list of additional data to embed. Options: 'tags', 'fields', 'party', 'opportunity', 'missingImportantFields'. |
| `partyId` | integer |     ✅    | `281193047`     | The unique identifier of the party to retrieve projects for.                                                                   |
| `perPage` | integer |          | `50`            | Number of projects per page (1-100). Default: 50.                                                                              |

***

### `Capsule Crm List Pipeline Milestones`

Integration name: **CAPSULE\_CRM\_LIST\_PIPELINE\_MILESTONES**

Tool to list milestones associated with a specific pipeline in Capsule CRM. Use when you need to retrieve all milestones for a pipeline to view their names, completion status, and probability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                         |
| ------------ | ------- | :------: | -------- | --------------------------------------------------- |
| `page`       | integer |          | `1`      | The page of results to return. Default: 1.          |
| `perPage`    | integer |          | `25`     | Number of milestones per page (1-100). Default: 50. |
| `pipelineId` | integer |     ✅    | `329107` | The unique identifier of the pipeline.              |

***

### `Capsule Crm List Pipelines`

Integration name: **CAPSULE\_CRM\_LIST\_PIPELINES**

Tool to list all sales pipelines on the Capsule account. Pipelines contain milestones that track opportunity progress. Use when you need to retrieve available pipelines for opportunity management or to reference pipeline IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                    |
| ---------------- | ------- | :------: | ------- | -------------------------------------------------------------- |
| `page`           | integer |          | `1`     | The page of results to return. Default: 1.                     |
| `perPage`        | integer |          | `50`    | Number of pipelines per page (1-100). Default: 50.             |
| `includeDeleted` | boolean |          | `false` | Include archived/deleted pipelines in results. Default: false. |

***

### `Capsule Crm List Project Parties`

Integration name: **CAPSULE\_CRM\_LIST\_PROJECT\_PARTIES**

Tool to list parties associated with a specific project in Capsule CRM. Use when you need to retrieve all contacts linked to a project with optional filters and embedded data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                   | Description                                                                                                   |
| ----------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                       | The page of results to return (starts at 1). Default: 1.                                                      |
| `embed`     | array   |          | `["tags","organisation"]` | Request additional data to embed. Allowed values: 'tags', 'fields', 'organisation', 'missingImportantFields'. |
| `perPage`   | integer |          | `50`                      | Number of parties per page (1-100). Default: 50.                                                              |
| `projectId` | integer |     ✅    | `5733453`                 | The unique identifier of the project to retrieve parties for.                                                 |

***

### `Capsule Crm List Projects`

Integration name: **CAPSULE\_CRM\_LIST\_PROJECTS**

List projects (cases) from Capsule CRM with pagination and filtering options. Projects (called 'kases' in the API) are used to track work or engagements related to parties. Supports filtering by status, search terms, date modified, and embedding additional data like tags, custom fields, party details, and opportunities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                                                                                                    |
| --------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `page`    | integer |          | `1`                      | The page of results to return (starts at 1). Default: 1.                                                                       |
| `embed`   | string  |          | `"tags,fields"`          | Comma-separated list of additional data to embed. Options: 'tags', 'fields', 'party', 'opportunity', 'missingImportantFields'. |
| `since`   | string  |          | `"2024-01-01T00:00:00Z"` | ISO8601 date/datetime to filter projects modified after this date (e.g., '2024-01-01T00:00:00Z').                              |
| `search`  | string  |          | `"API integration"`      | Search term to filter project names or descriptions.                                                                           |
| `status`  | string  |          | `"OPEN"`                 | Filter by project status (e.g., 'OPEN', 'CLOSED').                                                                             |
| `perPage` | integer |          | `50`                     | Number of projects per page (1-100). Default: 50.                                                                              |

***

### `Capsule Crm List Rest Hooks`

Integration name: **CAPSULE\_CRM\_LIST\_REST\_HOOKS**

Tool to list all REST hook subscriptions on the Capsule CRM account. REST hooks are webhook subscriptions that notify your application of events like party/opportunity/project created/updated/deleted. Use when you need to view existing webhook configurations or audit active subscriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Site`

Integration name: **CAPSULE\_CRM\_LIST\_SITE**

Tool to retrieve site (account) information for the authenticated Capsule CRM account. Returns the site URL, subdomain, and organization name. Use this when you need to identify which Capsule account is being accessed or retrieve basic account details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Stages`

Integration name: **CAPSULE\_CRM\_LIST\_STAGES**

Tool to list all stages on the Capsule CRM account. Use when you need to retrieve stages across all boards with optional status filtering and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example    | Description                                                              |
| ----------------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------ |
| `page`                  | integer |          | `1`        | Specifies which results page to retrieve. Default: 1.                    |
| `status`                | string  |          | `"active"` | Status filter for stages.                                                |
| `perPage`               | integer |          | `25`       | Sets the number of results per page (1-100 range). Default: 50.          |
| `includeOnDeletedBoard` | boolean |          | `false`    | When true, returns stages residing on archived boards. Default is false. |

***

### `Capsule Crm List Tasks`

Integration name: **CAPSULE\_CRM\_LIST\_TASKS**

Tool to list tasks on the Capsule account. Use when you need to retrieve tasks with filters or embedded related data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`    | integer |          | `1`                  | The page of results to return. Default: 1.                                                                                                                                                                                                                                                                                                                         |
| `embed`   | array   |          | `["party","owner"]`  | Comma-separated list of additional data to embed. Allowed values: 'party', 'opportunity', 'kase', 'owner', 'nextTask'. WARNING: Embedding 'owner' or 'party' returns full nested objects with 15+ fields each, significantly increasing response size. For simple filtering by owner name, consider using the API without embed and filtering results client-side. |
| `status`  | array   |          | `["open","pending"]` | Comma-separated list of task statuses to filter by. Allowed values: 'open', 'completed', 'pending'.                                                                                                                                                                                                                                                                |
| `perPage` | integer |          | `25`                 | Number of tasks per page (1-100). Default: 50.                                                                                                                                                                                                                                                                                                                     |

***

### `Capsule Crm List Teams`

Integration name: **CAPSULE\_CRM\_LIST\_TEAMS**

Tool to list all teams on the Capsule CRM account. Returns team details including id, name, createdAt, and updatedAt timestamps. Optionally embed team membership information using the embed parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                                                        |
| --------- | ------ | :------: | --------------- | -------------------------------------------------------------------------------------------------- |
| `embed`   | string |          | `"memberships"` | Additional data to include in the response. Use 'memberships' to include team members information. |

***

### `Capsule Crm List Titles`

Integration name: **CAPSULE\_CRM\_LIST\_TITLES**

Tool to list all custom person titles on the Capsule account. Returns title IDs and text values. Use when you need to retrieve available title options for person records or reference title IDs for other operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Capsule Crm List Track Definitions`

Integration name: **CAPSULE\_CRM\_LIST\_TRACK\_DEFINITIONS**

Tool to list all track definitions on the Capsule account. Use when you need to retrieve track templates that define sequences of tasks for opportunities or projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------- |
| `page`    | integer |          | `1`     | The page of results to return. Default: 1.                 |
| `perPage` | integer |          | `25`    | Number of track definitions per page (1-100). Default: 50. |

***

### `Capsule Crm List Users`

Integration name: **CAPSULE\_CRM\_LIST\_USERS**

List all users on the Capsule CRM account. Returns user details including id, username, name, locale, currency, status, timezone, lastLoginAt, and taskReminder settings. Optionally embed full party details (addresses, phone numbers, emails) using the embed parameter. Use this for user management, auditing, or when you need to reference user IDs for other operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example     | Description                                                                                                                                                                                                                                                    |
| --------- | ----- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `embed`   | array |          | `["party"]` | List of additional data to embed. Use \['party'] to include full party details (createdAt, updatedAt, owner, team, addresses, phoneNumbers, emailAddresses, websites). Without this parameter, only basic party info (id, type, name, pictureURL) is returned. |

***

### `Capsule Crm Restore Board`

Integration name: **CAPSULE\_CRM\_RESTORE\_BOARD**

Tool to restore a deleted board in Capsule CRM. Use when you need to recover a previously deleted board. Requires Administrator role.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                 |
| ---------- | ------- | :------: | ------- | ----------------------------------------------------------- |
| `board_id` | integer |     ✅    | `62139` | The unique identifier (integer ID) of the board to restore. |

***

### `Capsule Crm Run Filter Query`

Integration name: **CAPSULE\_CRM\_RUN\_FILTER\_QUERY**

Tool to run structured filter queries on parties, opportunities or kases. Use when you need to retrieve entities matching specific filter conditions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                        |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `page`    | integer |          | —       | Page of results to return. Default is 1.                                           |
| `embed`   | array   |          | —       | Additional data to include, comma-separated list. Supported values vary by entity. |
| `entity`  | string  |     ✅    | —       | Entity type to filter: parties, opportunities, or kases (projects).                |
| `filter`  | object  |     ✅    | —       | Filter object containing conditions and optional sort order.                       |
| `perPage` | integer |          | —       | Number of entities per page (1-100). Default is 50.                                |

***

### `Capsule Crm Search Opportunities`

Integration name: **CAPSULE\_CRM\_SEARCH\_OPPORTUNITIES**

Tool to search for opportunities in Capsule CRM by query string. Use when you need to find specific opportunities by searching their names or descriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example             | Description                                                                  |
| --------- | ------- | :------: | ------------------- | ---------------------------------------------------------------------------- |
| `q`       | string  |     ✅    | `"API integration"` | The search query string to match against opportunity names and descriptions. |
| `page`    | integer |          | `1`                 | The page of results to return (starts at 1). Default: 1.                     |
| `perPage` | integer |          | `50`                | Number of opportunities per page (1-100). Default: 50.                       |

***

### `Capsule Crm Search Parties`

Integration name: **CAPSULE\_CRM\_SEARCH\_PARTIES**

Tool to search for parties (contacts/organisations) in Capsule CRM by query string. Use when you need to find specific parties by searching their names, contact info, or tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                                                                   |
| --------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------- |
| `q`       | string  |     ✅    | `"John Doe"` | The search query string to match against party names, contact info, and tags. |
| `page`    | integer |          | `1`          | The page of results to return (starts at 1). Default: 1.                      |
| `perPage` | integer |          | `50`         | Number of parties per page (1-100). Default: 50.                              |

***

### `Capsule Crm Search Projects`

Integration name: **CAPSULE\_CRM\_SEARCH\_PROJECTS**

Tool to search for projects (cases) in Capsule CRM by query string. Use when you need to find specific projects by searching their names or descriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example             | Description                                                              |
| --------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------ |
| `q`       | string  |     ✅    | `"API integration"` | The search query string to match against project names and descriptions. |
| `page`    | integer |          | `1`                 | The page of results to return (starts at 1). Default: 1.                 |
| `perPage` | integer |          | `50`                | Number of projects per page (1-100). Default: 50.                        |

***

### `Capsule Crm Update Board`

Integration name: **CAPSULE\_CRM\_UPDATE\_BOARD**

Tool to update an existing board in Capsule CRM. Use when you need to modify the name or description of a board. Requires Administrator role on the Capsule account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                              |
| --------- | ------- | :------: | ------- | ---------------------------------------- |
| `board`   | object  |     ✅    | —       | Board object containing fields to update |
| `boardId` | integer |     ✅    | `62139` | The ID of the board to update            |

***

### `Capsule Crm Update Category`

Integration name: **CAPSULE\_CRM\_UPDATE\_CATEGORY**

Tool to update an existing category in Capsule CRM. Use when you need to modify the name or color of a category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example   | Description                                                |
| ------------ | ------- | :------: | --------- | ---------------------------------------------------------- |
| `category`   | object  |     ✅    | —         | Category object with fields to update (name and/or colour) |
| `categoryId` | integer |     ✅    | `2565899` | The ID of the category to update                           |

***

### `Capsule Crm Update Custom Field Definition`

Integration name: **CAPSULE\_CRM\_UPDATE\_CUSTOM\_FIELD\_DEFINITION**

Tool to update an existing custom field definition in Capsule CRM. Use when you need to modify the name or data tag association of a custom field for parties, opportunities, or projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example     | Description                                                                                                  |
| ------------ | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------ |
| `entity`     | string  |     ✅    | `"parties"` | The entity type to update the custom field definition for. Must be one of: parties, opportunities, or kases. |
| `field_id`   | integer |     ✅    | `943695`    | The unique identifier (integer ID) of the custom field definition to update.                                 |
| `definition` | object  |     ✅    | —           | Field definition object containing the updated name and optionally a data tag                                |

***

### `Capsule Crm Update Entity Tag`

Integration name: **CAPSULE\_CRM\_UPDATE\_ENTITY\_TAG**

Tool to update an existing tag for an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need to modify the name of a tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                                                                                    |
| --------- | ------- | :------: | ----------- | ---------------------------------------------------------------------------------------------- |
| `tag`     | object  |     ✅    | —           | Tag object with fields to update (name)                                                        |
| `entity`  | string  |     ✅    | `"parties"` | The entity type to update the tag for. Must be one of: 'parties', 'opportunities', or 'kases'. |
| `tag_id`  | integer |     ✅    | `5755664`   | The unique numeric identifier of the tag to update.                                            |

***

### `Capsule Crm Update Entry`

Integration name: **CAPSULE\_CRM\_UPDATE\_ENTRY**

Tool to update an existing entry (note, email, or task) in Capsule CRM. Use when you need to modify the content of an entry or manage its attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                          |
| --------- | ------- | :------: | ----------- | ------------------------------------ |
| `id`      | integer |     ✅    | `470272849` | The unique ID of the entry to update |
| `entry`   | object  |     ✅    | —           | Fields to update on the entry object |

***

### `Capsule Crm Update Lost Reason`

Integration name: **CAPSULE\_CRM\_UPDATE\_LOST\_REASON**

Tool to update an existing lost reason in Capsule CRM. Use when you need to modify the name or conversion tracking setting of a lost reason after confirming its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                         |
| -------------- | ------- | :------: | --------- | ------------------------------------------------------------------- |
| `lostReason`   | object  |     ✅    | —         | Lost reason object containing name and includedForConversion fields |
| `lostReasonId` | integer |     ✅    | `3045102` | The ID of the lost reason to update                                 |

***

### `Capsule Crm Update Milestone`

Integration name: **CAPSULE\_CRM\_UPDATE\_MILESTONE**

Tool to update an existing milestone in Capsule CRM. Use when you need to modify the name, description, or probability of a milestone stage in the sales pipeline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                      |
| ------------- | ------- | :------: | --------- | ------------------------------------------------ |
| `milestone`   | object  |     ✅    | —         | Milestone object containing fields to update     |
| `milestoneId` | integer |     ✅    | `2841255` | The unique identifier of the milestone to update |

***

### `Capsule Crm Update Opportunity`

Integration name: **CAPSULE\_CRM\_UPDATE\_OPPORTUNITY**

Tool to update an existing opportunity in Capsule CRM. Use when you need to modify details such as name, value, milestone, probability, or custom fields after confirming the opportunity ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example    | Description                                |
| --------------- | ------- | :------: | ---------- | ------------------------------------------ |
| `opportunity`   | object  |     ✅    | —          | Fields to update on the opportunity object |
| `opportunityId` | integer |     ✅    | `19348616` | Unique ID of the opportunity to update     |

***

### `Capsule Crm Update Party`

Integration name: **CAPSULE\_CRM\_UPDATE\_PARTY**

Tool to update an existing person or organisation (Party) in Capsule CRM. Use when you need to modify specific fields of a party after confirming its ID. Example: "Update party 11587 to remove phone number 12136 and add a new work email."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                 |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `embed`   | array   |          | —       | Additional data to embed in response: tags, fields, organisation, or missingImportantFields |
| `party`   | object  |     ✅    | —       | Fields to update on the party object                                                        |
| `partyId` | integer |     ✅    | `11587` | Unique ID of the party to update                                                            |

***

### `Capsule Crm Update Pipeline`

Integration name: **CAPSULE\_CRM\_UPDATE\_PIPELINE**

Tool to update an existing pipeline in Capsule CRM. Use when you need to modify the name or description of a pipeline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                                                     |
| ------------ | ------- | :------: | -------- | ------------------------------------------------------------------------------- |
| `pipeline`   | object  |     ✅    | —        | Pipeline object containing fields to update. Only included fields are modified. |
| `pipelineId` | integer |     ✅    | `329107` | The unique identifier of the pipeline to update                                 |

***

### `Capsule Crm Update Project`

Integration name: **CAPSULE\_CRM\_UPDATE\_PROJECT**

Tool to update an existing project (case) in Capsule CRM. Use when you need to modify project details such as name, description, status, or custom fields after confirming the project ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                                                                                                                    |
| ----------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `kase`      | object  |     ✅    | —               | Fields to update on the project object                                                                                         |
| `embed`     | string  |          | `"tags,fields"` | Comma-separated list of additional data to embed. Options: 'tags', 'fields', 'party', 'opportunity', 'missingImportantFields'. |
| `projectId` | integer |     ✅    | `5733461`       | Unique ID of the project to update                                                                                             |

***

### `Capsule Crm Update Stage`

Integration name: **CAPSULE\_CRM\_UPDATE\_STAGE**

Tool to update an existing stage in Capsule CRM. Use when you need to modify the name, description, or display order of a stage within a board. Requires Administrator role on the Capsule account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                              |
| --------- | ------- | :------: | -------- | ---------------------------------------- |
| `stage`   | object  |     ✅    | —        | Stage object containing updatable fields |
| `stageId` | integer |     ✅    | `310389` | The identifier of the stage to update    |

***

### `Capsule Crm Update Task`

Integration name: **CAPSULE\_CRM\_UPDATE\_TASK**

Tool to update an existing task in Capsule CRM. Use when you need to modify task details, change status to completed, or update due dates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example     | Description                         |
| --------- | ------- | :------: | ----------- | ----------------------------------- |
| `task`    | object  |     ✅    | —           | Fields to update on the task object |
| `taskId`  | integer |     ✅    | `157972811` | The unique ID of the task to update |

***

### `Capsule Crm Update Track`

Integration name: **CAPSULE\_CRM\_UPDATE\_TRACK**

Tool to update an existing track in Capsule CRM. Use when you need to modify the description or trackDateOn of a track instance. Only description and trackDateOn can be modified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                                                     |
| --------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------- |
| `embed`   | array   |          | —          | Additional data to embed in response. Use 'task' to include tasks on the track. |
| `track`   | object  |     ✅    | —          | Track object containing fields to update                                        |
| `trackId` | integer |     ✅    | `11331508` | The unique identifier of the track to update                                    |

***

### `Capsule Crm Update Track Definition`

Integration name: **CAPSULE\_CRM\_UPDATE\_TRACK\_DEFINITION**

Tool to update an existing track definition in Capsule CRM. Use when you need to modify the description or manage task definitions within a track.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example  | Description                                                                        |
| ------------------- | ------- | :------: | -------- | ---------------------------------------------------------------------------------- |
| `trackDefinition`   | object  |     ✅    | —        | Track definition object with fields to update (description and/or taskDefinitions) |
| `trackDefinitionId` | integer |     ✅    | `163119` | The ID of the track definition to update                                           |

***

### `Capsule Crm Update User`

Integration name: **CAPSULE\_CRM\_UPDATE\_USER**

Tool to update an existing user in Capsule CRM. Use when you need to modify user preferences such as task reminders, locale, currency, timezone, or email settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                                                                               |
| --------- | ------- | :------: | -------- | --------------------------------------------------------------------------------------------------------- |
| `user`    | object  |     ✅    | —        | User fields to update                                                                                     |
| `embed`   | string  |          | —        | Comma-separated values to include additional data. Supported value: 'party' to include full party details |
| `userId`  | integer |     ✅    | `703743` | The unique ID of the user to update                                                                       |

***

### `Capsule Crm Upload Attachment`

Integration name: **CAPSULE\_CRM\_UPLOAD\_ATTACHMENT**

Tool to upload an attachment to Capsule CRM. Returns a token that can be used to associate the attachment with entries when creating or updating them. Maximum file size is 25MB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                |
| --------- | ------ | :------: | ------- | ------------------------------------------ |
| `file`    | object |     ✅    | —       | File to upload. Maximum file size is 25MB. |


# ClickUp

Your Toolhouse AI Worker can connect to ClickUp using 164 specialized tools.

{% hint style="info" %}
This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under [Auth Connections](https://toolhouse.app/auth-connections?authkit_slugs=clickup).
{% endhint %}

## Tools (164)

### `Clickup Add Dependency`

Integration name: **CLICKUP\_ADD\_DEPENDENCY**

Adds a 'waiting on' or 'blocking' dependency to a task, requiring either `depends_on` (task becomes waiting on) or `dependency_of` (task becomes blocking), but not both; `team_id` is required if `custom_task_ids` is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                      |
| ----------------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"123"`       | Unique identifier of the task to which a dependency relationship will be added.                                  |
| `team_id`         | string  |          | `"12345"`     | Team ID, required if `custom_task_ids` is true to look up tasks by custom IDs (unique per team).                 |
| `depends_on`      | string  |          | `"task_id_B"` | ID of the task that `task_id` will depend on ('waiting on' relationship). Use this or `dependency_of`, not both. |
| `dependency_of`   | string  |          | `"task_id_C"` | ID of the task that will depend on `task_id` ('blocking' relationship). Use this or `depends_on`, not both.      |
| `custom_task_ids` | boolean |          | `"true"`      | If true, `task_id` and related task IDs are custom (text-based), requiring `team_id`.                            |

***

### `Clickup Add Guest To Folder`

Integration name: **CLICKUP\_ADD\_GUEST\_TO\_FOLDER**

Adds a guest to a folder with specified permissions; requires a ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example  | Description                                                                                                   |
| ------------------ | ------- | :------: | -------- | ------------------------------------------------------------------------------------------------------------- |
| `guest_id`         | string  |     ✅    | `"183"`  | The unique identifier of the guest user to be added to the folder.                                            |
| `folder_id`        | string  |     ✅    | `"457"`  | The unique identifier of the folder to which the guest will be added.                                         |
| `include_shared`   | boolean |          | —        | If `true`, include shared item details (API default if parameter is omitted); if `false`, exclude them.       |
| `permission_level` | string  |     ✅    | `"read"` | Permission level for the guest. Options are 'read' (view only), 'comment', 'edit', or 'create' (full access). |

***

### `Clickup Add Guest To List`

Integration name: **CLICKUP\_ADD\_GUEST\_TO\_LIST**

Shares a ClickUp List with an existing guest user, granting them specified permissions; requires the Workspace to be on the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example       | Description                                                                                                                                                                                                                     |
| ------------------ | ------- | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id`          | string  |     ✅    | `"901600001"` | The unique identifier of the List to which the guest will be added.                                                                                                                                                             |
| `guest_id`         | string  |     ✅    | `"183"`       | The unique identifier of the guest user to be added to the List.                                                                                                                                                                |
| `include_shared`   | boolean |          | —             | A boolean indicating whether to include details of items shared with the guest in the response. Set to `false` to exclude these details. If not provided or set to `true` (the API default), shared item details are included.  |
| `permission_level` | string  |     ✅    | `"read"`      | The permission level to be granted to the guest on this List. Accepted values are: `read` (view-only), `comment` (can add comments), `edit` (can edit existing items), or `create` (full access, including creating new items). |

***

### `Clickup Add Guest To Task`

Integration name: **CLICKUP\_ADD\_GUEST\_TO\_TASK**

Assigns a guest to a task with specified permissions; requires ClickUp Enterprise Plan, and `team_id` if `custom_task_ids` is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example          | Description                                                                                                                                                                      |
| ------------------ | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`          | string  |     ✅    | `"900900120103"` | The unique identifier of the task to which the guest will be added.                                                                                                              |
| `team_id`          | string  |          | `"123"`          | Required if `custom_task_ids` is `true` to correctly identify the task when using a custom task ID.                                                                              |
| `guest_id`         | string  |     ✅    | `"12345"`        | The unique identifier of the guest user to be added to the task.                                                                                                                 |
| `include_shared`   | boolean |          | `"true"`         | Optional. If set to `false`, details of items already shared with the guest will be excluded. The API defaults to `true` if this parameter is not explicitly set to `false`.     |
| `custom_task_ids`  | boolean |          | `"true"`         | Optional. Set to `true` if you are referencing the task by its custom task ID. If `true`, `team_id` must also be provided.                                                       |
| `permission_level` | string  |     ✅    | `"read"`         | Permission level for the guest on this task. Must be one of: `read` (view only), `comment` (view and comment), `edit` (view, comment, and edit), or `create` (full permissions). |

***

### `Clickup Add Tags To Time Entries`

Integration name: **CLICKUP\_ADD\_TAGS\_TO\_TIME\_ENTRIES**

Associates a list of specified tags with one or more time entries within a given Team (Workspace).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                                                       | Description                                                                                                                                                                                                        |
| ---------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tags`           | array   |     ✅    | `"[{\"name\": \"Urgent\", \"tag_fg\": \"#FFFFFF\", \"tag_bg\": \"#FF0000\"}, {\"name\": \"Client Review\"}]"` | A list of tag objects to add to the time entries. Each object should define the tag, typically including a 'name', and optionally 'tag\_fg' (foreground color hex code) and 'tag\_bg' (background color hex code). |
| `team_id`        | integer |     ✅    | `"18273645"`                                                                                                  | The ID of the Team (Workspace) where the time entries are located.                                                                                                                                                 |
| `time_entry_ids` | array   |     ✅    | `["time_entry_uuid_abcdef123","time_entry_uuid_ghijkl456"]`                                                   | A list of unique string identifiers for the time entries to which the tags will be added.                                                                                                                          |

***

### `Clickup Add Tag To Task`

Integration name: **CLICKUP\_ADD\_TAG\_TO\_TASK**

Adds an existing tag to a specified task; team\_id is required if custom\_task\_ids is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                                                      |
| ----------------- | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"task_abc_123"` | The ID of the task to which the tag will be added. This can be the standard task ID or a custom task ID if `custom_task_ids` is set to `true`.                                   |
| `team_id`         | integer |          | `123456`         | The ID of the team (formerly Workspace) to which the task belongs. This is required only if `custom_task_ids` is set to `true`. For example: `custom_task_ids=true&team_id=123`. |
| `tag_name`        | string  |     ✅    | `"urgent"`       | The name of the tag to add to the task. The tag must already exist in the workspace.                                                                                             |
| `custom_task_ids` | boolean |          | `true`           | A boolean flag indicating whether the `task_id` provided is a custom task ID. If `true`, the `team_id` must also be provided.                                                    |

***

### `Clickup Add Task Link`

Integration name: **CLICKUP\_ADD\_TASK\_LINK**

Links two existing and accessible ClickUp tasks, identified by `task_id` (source) and `links_to` (target).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example      | Description                                                                                                                                                 |
| ----------------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"q1w2e3r4"` | The ID of the source task.                                                                                                                                  |
| `team_id`         | integer |          | `"123"`      | The ID of the team, used when `custom_task_ids` is true to identify tasks by custom IDs. For example: `custom_task_ids=true&team_id=123`.                   |
| `links_to`        | string  |     ✅    | `"a5s6d7f8"` | The ID of the target task.                                                                                                                                  |
| `custom_task_ids` | boolean |          | `"true"`     | Set to `true` to indicate that `task_id` and `links_to` are custom task IDs rather than standard numerical IDs. If `true`, `team_id` must also be provided. |

***

### `Clickup Add Task To List`

Integration name: **CLICKUP\_ADD\_TASK\_TO\_LIST**

Adds an existing task to an additional ClickUp List; the "Tasks in Multiple Lists" ClickApp must be enabled in the Workspace for this.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. | Parameter | Type | Required | Example | Description | |-----------|------|:--------:`|---------|-------------| |` list\_id`| integer | ✅ |`186000000`| Unique identifier of the List to which the task will be added. | |`task\_id`| string | ✅ |`"abc123xyz"\` | Unique identifier of the task to add to the List (actual task ID, not Custom Task ID). |

***

### `Clickup Attachments Upload File To Task As Attachment`

Integration name: **CLICKUP\_ATTACHMENTS\_UPLOAD\_FILE\_TO\_TASK\_AS\_ATTACHMENT**

DEPRECATED: Use `create_task_attachment` to upload a file to a task; requires `multipart/form-data`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example    | Description                                                                                                                                                                  |
| ----------------- | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"9hz456"` | The unique identifier of the task to which the attachment will be added.                                                                                                     |
| `team_id`         | string  |          | `"123"`    | The ID of the team. This is required and used only if `custom_task_ids` is `true` to help locate the task by its custom ID. For example: `custom_task_ids=true&team_id=123`. |
| `attachment`      | object  |     ✅    | —          | The file to be uploaded as an attachment. Note: Files stored in the cloud (URLs) cannot be used - actual file content must be provided.                                      |
| `custom_task_ids` | boolean |          | `"true"`   | If `true`, indicates that `task_id` should be interpreted as a custom task ID instead of the default ClickUp task ID. If this is `true`, `team_id` must also be provided.    |

***

### `Clickup Authorization Get Work Space List`

Integration name: **CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST**

DEPRECATED: Use `get_authorized_teams_workspaces` instead to retrieve Workspaces (Teams) accessible to the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Clickup Click Up Update Doc Page`

Integration name: **CLICKUP\_CLICK\_UP\_UPDATE\_DOC\_PAGE**

Tool to update/edit a ClickUp Doc page's title and/or content via the v3 Docs API. Use when you need to modify a Doc page's name or content programmatically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                | Description                                                                                                                                                               |
| -------------- | ------ | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string |          | `"Updated Page Title"`                                 | The new title/name for the page. If not provided, the page name will not be changed.                                                                                      |
| `doc_id`       | string |     ✅    | `"doc_789"`                                            | The unique identifier for the document containing the page.                                                                                                               |
| `content`      | string |          | `"# Updated Content\n\nThis is the new page content."` | The new content for the page in markdown format. If not provided, the page content will not be changed. Use this field to update, replace, or append to the page content. |
| `page_id`      | string |     ✅    | `"page_123"`                                           | The unique identifier for the page to update.                                                                                                                             |
| `workspace_id` | string |     ✅    | `"abc123"`                                             | The workspace ID containing the document.                                                                                                                                 |

***

### `Clickup Create A Time Entry`

Integration name: **CLICKUP\_CREATE\_A\_TIME\_ENTRY**

Creates a new time entry for a specified team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                                                                   | Description                                                                                                                                                                                                                                                                                   |
| ----------------- | ------- | :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `end`             | integer |          | `1672534800000`                                                                                                                                           | Alias for `stop`. The end time of the time entry, as a Unix timestamp in milliseconds. If both `start` and `end` are provided, the API will use these to determine the entry's actual duration, potentially overriding the `duration` field sent in the request.                              |
| `tid`             | string  |          | `"abc123xyz"`                                                                                                                                             | The ID of the task to associate this time entry with. If `custom_task_ids` is `true`, this should be the custom task ID.                                                                                                                                                                      |
| `stop`            | integer |          | `1672534800000`                                                                                                                                           | The stop time of the time entry, as a Unix timestamp in milliseconds. If both `start` and `stop` are provided, the API will use these to determine the entry's actual duration, potentially overriding the `duration` field sent in the request.                                              |
| `tags`            | array   |          | `"[{\"name\": \"Urgent\", \"tag_fg\": \"#FF0000\", \"tag_bg\": \"#FFFFFF\"}, {\"name\": \"ClientX\", \"tag_fg\": \"#0000FF\", \"tag_bg\": \"#EEEEEE\"}]"` | An array of Tag objects to apply to the time entry. Each Tag object should define 'name' (string), 'tag\_fg' (hex color string for foreground), and 'tag\_bg' (hex color string for background). This feature is available for users on the ClickUp Business Plan and above.                  |
| `start`           | integer |     ✅    | `1672531200000`                                                                                                                                           | The start time of the time entry, as a Unix timestamp in milliseconds.                                                                                                                                                                                                                        |
| `team_Id`         | string  |     ✅    | `"123456"`                                                                                                                                                | The Workspace ID (also called Team ID in ClickUp API) where the time entry will be added. This goes in the URL path.                                                                                                                                                                          |
| `team_id`         | string  |          | `"789012"`                                                                                                                                                | The ID of the Team, required only if `custom_task_ids` is set to `true`. This specifies the team context for the custom task ID. Example: `custom_task_ids=true&team_id=123`.                                                                                                                 |
| `assignee`        | integer |          | `555123`                                                                                                                                                  | The user ID of the person to assign this time entry to. Workspace owners and admins can assign to any user ID. Workspace members can only assign to their own user ID.                                                                                                                        |
| `billable`        | boolean |          | `true`                                                                                                                                                    | Indicates whether the time entry is billable. Set to `true` if billable, `false` or omit if not.                                                                                                                                                                                              |
| `duration`        | integer |     ✅    | `3600000`                                                                                                                                                 | The duration of the time entry in milliseconds. Note: If `start` and `end` (or `stop`) times are also provided in the request, the ClickUp API will calculate the duration based on `start` and `end`/`stop`, and this `duration` field's value might be ignored or overridden by the server. |
| `description`     | string  |          | `"Worked on API integration module"`                                                                                                                      | An optional description for the time entry.                                                                                                                                                                                                                                                   |
| `custom_task_ids` | boolean |          | `true`                                                                                                                                                    | If `true`, the `tid` parameter will be interpreted as a custom task ID. If this is `true`, the `team_id` query parameter must also be provided to specify the team context for the custom task ID.                                                                                            |

***

### `Clickup Create Chat Channel`

Integration name: **CLICKUP\_CREATE\_CHAT\_CHANNEL**

Tool to create a chat channel in a ClickUp workspace. Use when you need to set up a new communication channel for team collaboration with configurable visibility.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                        | Description                                                          |
| -------------- | ------- | :------: | ---------------------------------------------- | -------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"Team Updates"`                               | The name for the chat channel being created.                         |
| `topic`        | string  |          | `"Weekly Standups"`                            | The topic of the chat channel being created.                         |
| `user_ids`     | array   |          | `["12345","67890"]`                            | Optionally specify unique user IDs to add to the channel, up to 100. |
| `visibility`   | string  |          | —                                              | Visibility level for the chat channel.                               |
| `description`  | string  |          | `"Channel for team updates and announcements"` | The description for the chat channel being created.                  |
| `workspace_id` | integer |     ✅    | `90161390966`                                  | The ID of the Workspace where the chat channel will be created.      |

***

### `Clickup Create Chat Message`

Integration name: **CLICKUP\_CREATE\_CHAT\_MESSAGE**

Tool to send a message in a ClickUp chat channel. Use when you need to post messages to team chat channels. Supports both regular messages and structured posts with optional assignments, followers, and reactions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                                            |
| --------------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------------------- |
| `type`                | string  |     ✅    | `"message"`       | The type of message: 'message' for regular text messages, 'post' for structured posts. |
| `content`             | string  |     ✅    | `"Hello team!"`   | The full content of the message to be created. Supports markdown formatting.           |
| `assignee`            | string  |          | —                 | The user ID of the person to assign this message to.                                   |
| `followers`           | array   |          | —                 | List of user IDs to follow this message (max 10).                                      |
| `post_data`           | object  |          | —                 | Data for post-type messages.                                                           |
| `reactions`           | array   |          | —                 | Reactions to add to the message at creation time (max 10).                             |
| `channel_id`          | string  |     ✅    | `"2kz0k9bp-2036"` | The ID of the Channel where the message will be sent.                                  |
| `workspace_id`        | integer |     ✅    | `90161390966`     | The ID of the Workspace.                                                               |
| `content_format`      | string  |          | —                 | Format of the message content.                                                         |
| `group_assignee`      | string  |          | —                 | The group ID to assign this message to.                                                |
| `triaged_action`      | integer |          | —                 | The triaged action applied to the message: 1 or 2.                                     |
| `triaged_object_id`   | string  |          | —                 | The message triaged action object ID.                                                  |
| `triaged_object_type` | integer |          | —                 | The message triaged action object type.                                                |

***

### `Clickup Create Chat Reaction`

Integration name: **CLICKUP\_CREATE\_CHAT\_REACTION**

Tool to add a reaction to a ClickUp chat message. Use when you need to react to a message with an emoji.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example            | Description                                                                                                                                  |
| -------------- | ------- | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `reaction`     | string  |     ✅    | `"+1"`             | The emoji reaction to add, in shortcode format (e.g., '+1', '-1', 'thumbsup', 'heart', 'smile'). Use GitHub-style shortcodes without colons. |
| `message_id`   | string  |     ✅    | `"80160027256718"` | The ID of the chat message to react to.                                                                                                      |
| `workspace_id` | integer |     ✅    | `90161390966`      | The ID of the Workspace containing the chat message.                                                                                         |

***

### `Clickup Create Chat View Comment`

Integration name: **CLICKUP\_CREATE\_CHAT\_VIEW\_COMMENT**

Posts a new comment to a specified ClickUp Chat view; the 'view\_id' must correspond to an existing and accessible Chat view.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                          | Description                                                                                                                                                                             |
| -------------- | ------- | :------: | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `view_id`      | string  |     ✅    | `"105"`                          | The unique identifier of the Chat view where the comment will be posted.                                                                                                                |
| `notify_all`   | boolean |     ✅    | `true`                           | If `True`, notifications for this comment will be sent to all members of the Chat view, including the comment creator. If `False`, notifications will follow standard ClickUp behavior. |
| `comment_text` | string  |     ✅    | `"This is an important update."` | The text content of the comment to be added.                                                                                                                                            |

***

### `Clickup Create Checklist`

Integration name: **CLICKUP\_CREATE\_CHECKLIST**

Creates a new checklist with a specified name within an existing task, which can be identified by its standard ID or a custom task ID (if `custom_task_ids` is true, `team_id` is also required).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                  | Description                                                                                                              |
| ----------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `name`            | string  |     ✅    | `"Pre-launch Checklist"` | Name for the new checklist.                                                                                              |
| `task_id`         | string  |     ✅    | `"task_abc_123"`         | Unique identifier of the task for the new checklist; can be a standard or custom task ID (if `custom_task_ids` is true). |
| `team_id`         | string  |          | `"123456"`               | Team's unique identifier; required only if `custom_task_ids` is true.                                                    |
| `custom_task_ids` | boolean |          | `true`                   | If true, `task_id` is treated as a custom task ID, requiring `team_id`.                                                  |

***

### `Clickup Create Checklist Item`

Integration name: **CLICKUP\_CREATE\_CHECKLIST\_ITEM**

Creates a new checklist item within a specified, existing checklist, optionally setting the item's name and assigning it to a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                              |
| -------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"Finalize report"`                      | Name for the new checklist item.                                                                         |
| `assignee`     | integer |          | `"183"`                                  | User ID of the ClickUp user to whom this item will be assigned. If omitted, the item will be unassigned. |
| `checklist_id` | string  |     ✅    | `"7a1b3c5d-04e9-4f6a-882d-1c9b7e0a3d2f"` | UUID of the parent checklist where the new item will be created; this checklist must already exist.      |

***

### `Clickup Create Direct Message Channel`

Integration name: **CLICKUP\_CREATE\_DIRECT\_MESSAGE\_CHANNEL**

Tool to create a direct message channel in ClickUp. Use when you need to start a direct message conversation with up to 15 users. A Self DM is created when no user IDs are provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example             | Description                                                                                                                   |
| -------------- | ------- | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `user_ids`     | array   |          | `["12345","67890"]` | The unique user IDs of participants in the direct message chat, up to 15. A Self DM is created when no user IDs are provided. |
| `workspace_id` | integer |     ✅    | `90161390966`       | The ID of the Workspace where the direct message channel will be created.                                                     |

***

### `Clickup Create Doc`

Integration name: **CLICKUP\_CREATE\_DOC**

Tool to create a new ClickUp Doc in a Workspace (v3 Docs API) and return the new doc\_id for follow-up page/content operations. Use when you need to create a new document in ClickUp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                  | Description                                                                                                                                          |
| -------------- | ------ | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string |     ✅    | `"Project Requirements"` | The name/title for the new document.                                                                                                                 |
| `parent_id`    | string |          | `"space_123"`            | Optional parent location ID (space, folder, or list ID) where the doc should be created. If omitted, the doc will be created at the workspace level. |
| `parent_type`  | string |          | `"space"`                | Type of parent location. Required if parent\_id is provided. Must be 'space', 'folder', or 'list'.                                                   |
| `workspace_id` | string |     ✅    | `"abc123"`               | The workspace ID where the document will be created.                                                                                                 |

***

### `Clickup Create Doc Page`

Integration name: **CLICKUP\_CREATE\_DOC\_PAGE**

Tool to create a page in a ClickUp Doc (v3 Docs API). Use when you need to add a new page to an existing document, either as a root page or as a sub-page under a parent page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                              | Description                                                                                                                                                                            |
| ---------------- | ------- | :------: | ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`           | string  |          | `"Test Page from API"`                               | The name of the new page. If not provided, page will be created with an empty name.                                                                                                    |
| `doc_id`         | string  |     ✅    | `"2kz0k9bp-1096"`                                    | The ID of the doc in format '{alphanumeric\_prefix}-{number}' (e.g., '2kz0k9bp-1096'). To get a valid doc\_id, use CLICKUP\_CLICK\_UP\_SEARCH\_DOCS or extract from a ClickUp Doc URL. |
| `content`        | string  |          | `"This is a test page created via the ClickUp API."` | The content of the new page. Supports markdown or plain text based on content\_format.                                                                                                 |
| `sub_title`      | string  |          | `"A brief description of the page"`                  | The subtitle of the new page.                                                                                                                                                          |
| `workspace_id`   | integer |     ✅    | `90161390966`                                        | The ID of the Workspace. Obtain this from the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST or CLICKUP\_CLICK\_UP\_SEARCH\_DOCS action.                                               |
| `content_format` | string  |          | `"text/md"`                                          | The format the page content is in. Defaults to 'text/md' for markdown.                                                                                                                 |
| `parent_page_id` | string  |          | `"2kz0k9bp-416"`                                     | The ID of the parent page. If provided, the new page will be created as a sub-page. If omitted, this will be a root page in the Doc.                                                   |

***

### `Clickup Create Folder`

Integration name: **CLICKUP\_CREATE\_FOLDER**

Creates a new ClickUp Folder within the specified Space, which must exist and be accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                | Description                                              |
| ---------- | ------ | :------: | ---------------------- | -------------------------------------------------------- |
| `name`     | string |     ✅    | `"New Project Folder"` | The name of the Folder to be created.                    |
| `space_id` | string |     ✅    | `"12345678"`           | Numerical ID of the Space in which to create the Folder. |

***

### `Clickup Create Folderless List`

Integration name: **CLICKUP\_CREATE\_FOLDERLESS\_LIST**

Creates a new folderless list (a list not part of any Folder) directly within a specified ClickUp Space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                  | Description                                                                                                |
| --------------- | ------- | :------: | -------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `name`          | string  |     ✅    | `"Q1 Marketing Initiatives"`                             | Name for the new folderless list.                                                                          |
| `status`        | string  |          | `"red"`                                                  | List color (e.g., 'red', 'blue\_blended'), distinct from task statuses within the list. Null for no color. |
| `content`       | string  |          | `"List of all tasks related to Q1 marketing campaigns."` | Description for the list (plain text or markdown).                                                         |
| `assignee`      | integer |          | `"18300"`                                                | `user_id` of the list owner. Null for no specific owner.                                                   |
| `due_date`      | integer |          | `"1678886400000"`                                        | Due date for the list (POSIX timestamp in milliseconds).                                                   |
| `priority`      | integer |          | `"1"`                                                    | Priority level: `1` (Urgent), `2` (High), `3` (Normal), `4` (Low). Null to remove priority.                |
| `space_id`      | string  |     ✅    | `"123456"`                                               | Identifier of the Space for the new folderless list.                                                       |
| `due_date_time` | boolean |          | `true`                                                   | Indicates if `due_date` includes time (`true`) or is all-day (`false`). Required if `due_date` is set.     |

***

### `Clickup Create Folder View`

Integration name: **CLICKUP\_CREATE\_FOLDER\_VIEW**

Creates a new, highly customizable view within a specific ClickUp folder using its `folder_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                | Type    | Required | Example                                                       | Description                                                                                                                                                                                                                                                  |
| ---------------------------------------- | ------- | :------: | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                                   | string  |     ✅    | `"My Team's Board"`                                           | Name for the new view.                                                                                                                                                                                                                                       |
| `type`                                   | string  |     ✅    | `"list"`                                                      | The type of view to create. Options include: `list`, `board`, `calendar`, `table`, `timeline`, `workload`, `activity`, `map`, `conversation`, or `gantt`.                                                                                                    |
| `folder_id`                              | string  |     ✅    | `"90123456789"`                                               | Numeric ID of the folder where the new view will be created.                                                                                                                                                                                                 |
| `divide__dir`                            | null    |          | —                                                             | This field must be `null` (None). It is intended for specifying sort direction within divided sections, but its configuration is not fully detailed.                                                                                                         |
| `filters__op`                            | string  |          | `"AND"`                                                       | Operator for combining filters. The available operator (`op`) values are `AND` and `OR`. Required when any filter parameter is provided.                                                                                                                     |
| `divide__field`                          | null    |          | —                                                             | This field must be `null` (None). It is intended for view division features (e.g., swimlanes) whose specific configuration via this parameter is not fully detailed.                                                                                         |
| `grouping__dir`                          | integer |          | —                                                             | Set a group sort order. Use `1` for ascending (e.g., urgent priority at top of the view, and tasks with no priority at the bottom) or `-1` to reverse the order (e.g., tasks with no priority at the top). Required when any grouping parameter is provided. |
| `columns__fields`                        | array   |          | `[{"id":"title"},{"id":"assignee"},{"id":"_cf_a1b2c3d4"}]`    | Array of field objects to display as columns in the view. Each element must be an object. Custom Fields require the `_cf` prefix followed by the Custom Field ID (e.g., `_cf_xxxxxxxx`).                                                                     |
| `filters__fields`                        | array   |          | `["priority","assignee"]`                                     | Fields to filter by. Each element represents a filter condition. View the list of available fields in ClickUp's API documentation. Required when any filter parameter is provided.                                                                           |
| `filters__search`                        | string  |          | `"Urgent Task"`                                               | Text string to search for within tasks, comments, and subtasks in the view. Required when any filter parameter is provided.                                                                                                                                  |
| `grouping__field`                        | string  |          | `"status"`                                                    | Field to group tasks by. Options include: `none`, `status`, `priority`, `assignee`, `tag`, or `dueDate`. When any grouping parameter is provided, `grouping__field`, `grouping__dir`, `grouping__collapsed`, and `grouping__ignore` are all required.        |
| `sorting__fields`                        | array   |          | `[{"dir":1,"field":"priority"},{"dir":-1,"field":"dueDate"}]` | Fields to sort tasks by. Each element must be an object with 'field' and 'dir' properties. 'dir' should be 1 for ascending or -1 for descending. Refer to ClickUp API for the exact structure.                                                               |
| `grouping__ignore`                       | boolean |          | —                                                             | If `true`, tasks with no value for the `grouping__field` will not be grouped and will appear in a separate 'Ungrouped' section. Required when any grouping parameter is provided.                                                                            |
| `divide__collapsed`                      | array   |          | —                                                             | Array of identifiers for divided sections to collapse by default, or null if no sections should be collapsed.                                                                                                                                                |
| `grouping__collapsed`                    | array   |          | `["Open","In Progress"]`                                      | An array of group identifiers (e.g., status names like 'Open', assignee IDs as strings like '123') that should be initially collapsed in the view. These identifiers depend on the `grouping__field` used. Required when any grouping parameter is provided. |
| `filters__show__closed`                  | boolean |          | —                                                             | If `true`, tasks with a closed status are included in the view.                                                                                                                                                                                              |
| `settings__me__comments`                 | boolean |          | —                                                             | In 'Me Mode', if `true`, show only comments where the current user is mentioned or assigned.                                                                                                                                                                 |
| `settings__me__subtasks`                 | boolean |          | —                                                             | In 'Me Mode', if `true`, show only subtasks assigned to the current user.                                                                                                                                                                                    |
| `settings__show__images`                 | boolean |          | —                                                             | If `true`, display task cover images or image attachments.                                                                                                                                                                                                   |
| `settings__me__checklists`               | boolean |          | —                                                             | In 'Me Mode', if `true`, show only checklists assigned to the current user.                                                                                                                                                                                  |
| `settings__show__subtasks`               | integer |          | —                                                             | Controls subtask visibility. Acceptable integer values are `1` (show subtasks as separate tasks), `2` (expand subtasks under parent tasks), or `3` (collapse subtasks under parent tasks).                                                                   |
| `team__sidebar__assignees`               | array   |          | `["183","259"]`                                               | List of user IDs (as strings). Tasks assigned to these users will appear in the 'Assignees' section of the team sidebar.                                                                                                                                     |
| `settings__show__assignees`              | boolean |          | —                                                             | If `true`, display task assignees.                                                                                                                                                                                                                           |
| `settings__show__task__locations`        | boolean |          | —                                                             | If `true`, display the List, Folder, and Space location for tasks. When any settings parameter is provided, a complete settings object with all settings keys is required.                                                                                   |
| `settings__show__closed__subtasks`       | boolean |          | —                                                             | If `true`, include closed subtasks in the view.                                                                                                                                                                                                              |
| `team__sidebar__unassigned__tasks`       | boolean |          | —                                                             | If `true`, unassigned tasks will be shown in the team sidebar.                                                                                                                                                                                               |
| `team__sidebar__assigned__comments`      | boolean |          | —                                                             | If `true`, comments assigned to users will be shown in the team sidebar.                                                                                                                                                                                     |
| `settings__collapse__empty__columns`     | string  |          | `"true"`                                                      | Specifies whether to collapse columns with no tasks (e.g., in Board view). Common string values are 'true' or 'false'.                                                                                                                                       |
| `settings__show__subtask__parent__names` | boolean |          | —                                                             | If `true`, display parent task names for subtasks.                                                                                                                                                                                                           |

***

### `Clickup Create Goal`

Integration name: **CLICKUP\_CREATE\_GOAL**

Creates a new goal in a ClickUp Team (Workspace).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                 | Description                                                                      |
| ----------------- | ------- | :------: | --------------------------------------- | -------------------------------------------------------------------------------- |
| `name`            | string  |     ✅    | `"Q3 Sales Target"`                     | Name for the goal.                                                               |
| `color`           | string  |     ✅    | `"#FF5733"`                             | Hex color string to associate with the goal.                                     |
| `owners`          | array   |     ✅    | `[183,281]`                             | List of user IDs to be assigned as owners of the goal.                           |
| `team_id`         | string  |     ✅    | `"123456"`                              | Numeric ID of the ClickUp Team (Workspace) where the goal will be created.       |
| `due_date`        | integer |     ✅    | `1672444800000`                         | Due date for the goal, as a Unix timestamp in milliseconds.                      |
| `description`     | string  |     ✅    | `"Achieve a 20% increase in Q3 sales."` | Detailed description for the goal.                                               |
| `multiple_owners` | boolean |     ✅    | `true`                                  | Set to `true` if the goal will have multiple owners; `false` for a single owner. |

***

### `Clickup Create Key Result`

Integration name: **CLICKUP\_CREATE\_KEY\_RESULT**

Creates a new Key Result (Target) for a specified Goal in ClickUp to define and track measurable objectives towards achieving that Goal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                                                                                                                                                   |
| ------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string  |     ✅    | `"Increase monthly active users by 20%"` | The name for the new Key Result.                                                                                                                                                                              |
| `type`        | string  |     ✅    | `"number"`                               | Specifies the type of the Key Result, which determines how progress is tracked. Supported types: 'number', 'currency', 'boolean', 'percentage', 'automatic'.                                                  |
| `unit`        | string  |     ✅    | `"$"`                                    | The unit of measurement for Key Results of type 'number', 'currency', or 'percentage' (e.g., '$', '%', 'items'). This may not be applicable for 'boolean' or 'automatic' types where progress is count-based. |
| `owners`      | array   |     ✅    | `"183"`                                  | A list of numerical user IDs to be assigned as owners of this Key Result.                                                                                                                                     |
| `goal_id`     | string  |     ✅    | `"900e-462d-a849-4a216b06d930"`          | The unique identifier (UUID) of the parent Goal for which this Key Result is being created.                                                                                                                   |
| `list_ids`    | array   |     ✅    | `"list_uuid_x"`                          | An array of List UUIDs to link to this Key Result. Can be used with 'automatic' type Key Results to track progress based on tasks within these lists.                                                         |
| `task_ids`    | array   |     ✅    | `"task_uuid_1"`                          | An array of task UUIDs to link to this Key Result. Often used when `type` is 'automatic' to track progress via the completion status of these linked tasks.                                                   |
| `steps_end`   | integer |     ✅    | `"1"`                                    | The target value indicating Key Result completion. For 'boolean' type, use 1 for true/complete. For 'automatic' type, this is often the total count of items to complete (e.g., number of linked tasks).      |
| `steps_start` | integer |     ✅    | `"0"`                                    | The initial value for tracking Key Result progress. For 'boolean' type, use 0 for false/incomplete, 1 for true/complete. For 'automatic' type, this is often the initial count (e.g., 0).                     |

***

### `Clickup Create List`

Integration name: **CLICKUP\_CREATE\_LIST**

Creates a new list in ClickUp within an existing folder. This action requires a folder\_id - lists cannot be created directly in a Space using this action. If you need to create a list directly in a Space (without placing it in a folder), use the 'CLICKUP\_CREATE\_FOLDERLESS\_LIST' action with space\_id instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                            | Description                                                                                                                                                                                                                                                                                                                           |
| --------------- | ------- | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string  |     ✅    | `"Q3 Marketing Plan"`                              | The name to be assigned to the new list.                                                                                                                                                                                                                                                                                              |
| `status`        | string  |          | `"red"`                                            | Optional. Defines the list's color in the ClickUp UI (e.g., 'red', 'blue'). **Important:** This 'status' refers to the visual color of the list itself, not the workflow statuses (like 'To Do', 'In Progress') of tasks within the list.                                                                                             |
| `content`       | string  |          | `"Detailed plan for all Q3 marketing activities."` | Optional descriptive content or notes for the list.                                                                                                                                                                                                                                                                                   |
| `assignee`      | integer |          | `"9876543"`                                        | Optional. Numerical user ID of the assignee.                                                                                                                                                                                                                                                                                          |
| `due_date`      | integer |          | `"1695110307000"`                                  | Optional due date for the list, represented as a POSIX timestamp in milliseconds. For example, `1695110307000` for September 19, 2023, 07:58:27 AM GMT.                                                                                                                                                                               |
| `priority`      | integer |          | `"1"`                                              | Optional priority level for the list. Integer values map to: 1 (Urgent), 2 (High), 3 (Normal), 4 (Low).                                                                                                                                                                                                                               |
| `folder_id`     | string  |     ✅    | `"123456789"`                                      | The unique numerical identifier of the folder where the new list will be created. Note: This action creates a list within an existing folder. A folder\_id is required and space\_id cannot be used. If you want to create a list directly in a Space (without a folder), use the 'CLICKUP\_CREATE\_FOLDERLESS\_LIST' action instead. |
| `due_date_time` | boolean |          | `"true"`                                           | Optional. A boolean flag indicating whether the `due_date` includes a specific time. If `True`, the time component of `due_date` is respected. If `False` or not provided, the list is considered due on the entire day specified by `due_date`.                                                                                      |

***

### `Clickup Create List Comment`

Integration name: **CLICKUP\_CREATE\_LIST\_COMMENT**

Adds a new comment with specific text to an existing and accessible ClickUp List, assigns it to a user, and sets notification preferences for all list members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                               |
| -------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `list_id`      | string  |     ✅    | `"1234567"`                              | Unique identifier of the ClickUp list where the comment will be posted.                                                   |
| `assignee`     | integer |          | `183`                                    | User ID to assign this comment to, converting it into an actionable item. If omitted, creates an unassigned comment.      |
| `notify_all`   | boolean |          | `true`                                   | If true, notifications are sent to everyone including the creator. If false or omitted, default notification rules apply. |
| `comment_text` | string  |     ✅    | `"Please review the attached document."` | Text content of the comment. Supports ClickUp formatting (mentions, markdown).                                            |

***

### `Clickup Create List From Template`

Integration name: **CLICKUP\_CREATE\_LIST\_FROM\_TEMPLATE**

Creates a new list from a template in a specified ClickUp folder. Use this when you need to instantiate a list based on an existing template within a folder structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                    | Description                                          |
| ------------- | ------- | :------: | ------------------------------------------ | ---------------------------------------------------- |
| `name`        | string  |     ✅    | `"List Created from Public Template Test"` | Name for the new list created from the template.     |
| `folder_id`   | integer |     ✅    | `90167930250`                              | The ID of the folder where the list will be created. |
| `template_id` | string  |     ✅    | `"t-182410676"`                            | The ID of the template to use for creating the list. |

***

### `Clickup Create List View`

Integration name: **CLICKUP\_CREATE\_LIST\_VIEW**

Creates a new, customizable view (e.g., list, board, calendar) within a specified ClickUp List, requiring an existing list\_id accessible by the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                | Type    | Required | Example                                                   | Description                                                                                                                                                                                                                                  |
| ---------------------------------------- | ------- | :------: | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | string  |     ✅    | `"New Project Board"`                                     | Name for the new view.                                                                                                                                                                                                                       |
| `type`                                   | string  |     ✅    | `"list"`                                                  | View type (e.g., `list`, `board`, `calendar`, `table`, `timeline`, `workload`, `activity`, `map`, `conversation`, `gantt`).                                                                                                                  |
| `list_id`                                | string  |     ✅    | `"901234567"`                                             | Numeric ID of the List where the new view will be created.                                                                                                                                                                                   |
| `divide__dir`                            | integer |          | —                                                         | Direction for secondary grouping: `1` for ascending, `-1` for descending.                                                                                                                                                                    |
| `filters__op`                            | string  |          | `"AND"`                                                   | Logical operator for combining filters: `AND` for all conditions, `OR` for any condition.                                                                                                                                                    |
| `divide__field`                          | string  |          | —                                                         | Field for secondary grouping (dividing tasks within primary groups).                                                                                                                                                                         |
| `grouping__dir`                          | integer |          | —                                                         | Group sort order: `1` for ascending (e.g., urgent priority top), `-1` for descending (e.g., no priority top).                                                                                                                                |
| `columns__fields`                        | array   |          | `[{"field":"assignee"},{"field":"dueDate"}]`              | Array of column field objects. Each object must have 'field' (e.g., 'name', 'status', 'assignee', 'dueDate', or '\_cf\_FIELD\_ID' for Custom Fields).                                                                                        |
| `filters__fields`                        | array   |          | `[{"op":"EQ","field":"status","values":["in progress"]}]` | Array of filter field objects. Each object must have 'field' (e.g., 'assignee', 'status', 'priority', 'tags'), 'op' (e.g., 'EQ', 'NOT', 'IN', 'ANY'), and 'values' (array of filter values). Required when any filter parameter is provided. |
| `filters__search`                        | string  |          | `"API integration"`                                       | Search string to filter tasks by name or content.                                                                                                                                                                                            |
| `grouping__field`                        | string  |          | `"status"`                                                | Field for grouping tasks (e.g., `none`, `status`, `priority`, `assignee`, `tag`, `dueDate`).                                                                                                                                                 |
| `sorting__fields`                        | array   |          | `[{"dir":-1,"field":"dueDate"}]`                          | Array of sort field objects. Each object must have 'field' (e.g., 'dateCreated', 'name', 'dueDate', 'priority') and optionally 'dir' (1 for ascending, -1 for descending).                                                                   |
| `grouping__ignore`                       | boolean |          | —                                                         | If `true`, hides tasks not falling into any specified group.                                                                                                                                                                                 |
| `divide__collapsed`                      | array   |          | —                                                         | Array of identifiers for divided sections to collapse by default, or null if no sections should be collapsed.                                                                                                                                |
| `grouping__collapsed`                    | array   |          | `["Closed","Done"]`                                       | List of group identifiers (e.g., status names, assignee IDs) to collapse by default.                                                                                                                                                         |
| `filters__show__closed`                  | boolean |          | —                                                         | If `true`, includes closed tasks in the view.                                                                                                                                                                                                |
| `settings__me__comments`                 | boolean |          | —                                                         | If `true`, enables 'Me Mode' for comments, filtering to tasks where the current user is involved in comments.                                                                                                                                |
| `settings__me__subtasks`                 | boolean |          | —                                                         | If `true`, enables 'Me Mode' for subtasks, filtering to subtasks assigned to the current user.                                                                                                                                               |
| `settings__show__images`                 | boolean |          | —                                                         | If `true`, displays cover images or image attachments for tasks.                                                                                                                                                                             |
| `settings__me__checklists`               | boolean |          | —                                                         | If `true`, enables 'Me Mode' for checklists, filtering to tasks with checklists assigned to the current user.                                                                                                                                |
| `settings__show__subtasks`               | integer |          | —                                                         | Subtask visibility: `1` (separate tasks), `2` (expanded under parent), `3` (collapsed under parent).                                                                                                                                         |
| `team__sidebar__assignees`               | array   |          | `["12345","67890"]`                                       | List of user IDs for quick assignee filtering in the team sidebar.                                                                                                                                                                           |
| `settings__show__assignees`              | boolean |          | —                                                         | If `true`, shows assignees' avatars or names on tasks.                                                                                                                                                                                       |
| `settings__show__task__locations`        | boolean |          | —                                                         | If `true`, displays task's location (e.g., List, Folder, Space) in the view.                                                                                                                                                                 |
| `settings__show__closed__subtasks`       | boolean |          | —                                                         | If `true`, displays closed subtasks in the view.                                                                                                                                                                                             |
| `team__sidebar__unassigned__tasks`       | boolean |          | —                                                         | If `true`, team sidebar includes filter for unassigned tasks.                                                                                                                                                                                |
| `team__sidebar__assigned__comments`      | boolean |          | —                                                         | If `true`, team sidebar includes filter for tasks with assigned comments.                                                                                                                                                                    |
| `settings__collapse__empty__columns`     | string  |          | `"true"`                                                  | Controls collapsing of empty columns. Values like 'true', 'false', or specific keywords (see ClickUp API).                                                                                                                                   |
| `settings__show__subtask__parent__names` | boolean |          | —                                                         | If `true`, displays parent task names alongside subtasks.                                                                                                                                                                                    |

***

### `Clickup Create Location Chat Channel`

Integration name: **CLICKUP\_CREATE\_LOCATION\_CHAT\_CHANNEL**

Tool to create a Channel on a Space, Folder, or List in ClickUp. Use when you need to create a location-based chat channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                            | Description                                                              |
| -------------- | ------ | :------: | ---------------------------------- | ------------------------------------------------------------------------ |
| `topic`        | string |          | `"Test Location Channel"`          | The topic/name of the chat channel being created.                        |
| `location`     | object |     ✅    | —                                  | The location (space, folder, or list) where the channel will be created. |
| `user_ids`     | array  |          | `["12345","67890"]`                | Optionally specify unique user IDs to add to the channel, up to 100.     |
| `visibility`   | string |          | `"PUBLIC"`                         | Visibility setting for the chat channel.                                 |
| `description`  | string |          | `"A test channel created via API"` | The description for the chat channel being created.                      |
| `workspace_id` | string |     ✅    | `"90161390966"`                    | The ID of the Workspace where the channel will be created.               |

***

### `Clickup Create Reply Message`

Integration name: **CLICKUP\_CREATE\_REPLY\_MESSAGE**

Tool to create a reply to a chat message in ClickUp. Use when replying to an existing chat message. Requires workspace\_id, message\_id, type, and content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                            | Description                                               |
| --------------------- | ------- | :------: | ---------------------------------- | --------------------------------------------------------- |
| `type`                | string  |     ✅    | —                                  | The type of message.                                      |
| `content`             | string  |     ✅    | `"This is a reply to the message"` | The full content of the message to be created.            |
| `assignee`            | string  |          | —                                  | The possible assignee of the message.                     |
| `followers`           | array   |          | —                                  | The ids of the followers of the message.                  |
| `post_data`           | object  |          | —                                  | Data for post-type messages.                              |
| `reactions`           | array   |          | —                                  | The reactions to the message that exist at creation time. |
| `message_id`          | string  |     ✅    | `"80160022237610"`                 | The ID of the specified message to reply to.              |
| `workspace_id`        | integer |     ✅    | `90161390966`                      | The ID of the Workspace.                                  |
| `content_format`      | string  |          | —                                  | Format of the message content.                            |
| `group_assignee`      | string  |          | —                                  | The possible group assignee of the message.               |
| `triaged_action`      | integer |          | `1`                                | The triaged action applied to the message. 1 or 2.        |
| `triaged_object_id`   | string  |          | —                                  | The message triaged action object id.                     |
| `triaged_object_type` | integer |          | —                                  | The message triaged action object type.                   |

***

### `Clickup Create Space`

Integration name: **CLICKUP\_CREATE\_SPACE**

Creates a new ClickUp Space within a specified Workspace, allowing feature configuration which defaults to Workspace settings if unspecified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                        | Type    | Required | Example                   | Description                                                                                                                           |
| ------------------------------------------------ | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                           | string  |     ✅    | `"Marketing Q3 Campaign"` | Name for the new Space.                                                                                                               |
| `team_id`                                        | string  |     ✅    | `"123456"`                | Numeric ID of the Workspace (Team) for the new Space.                                                                                 |
| `multiple_assignees`                             | boolean |     ✅    | `true`                    | Enable/disable multiple assignees for tasks in this Space.                                                                            |
| `features__tags__enabled`                        | boolean |          | `true`                    | Enable/disable Tags. Defaults to Workspace setting if `None`.                                                                         |
| `features__checklists__enabled`                  | boolean |          | `true`                    | Enable/disable Checklists. Defaults to Workspace setting if `None`.                                                                   |
| `features__due__dates__enabled`                  | boolean |          | `true`                    | Enable/disable Due Dates. Defaults to Workspace setting if `None`.                                                                    |
| `features__portfolios__enabled`                  | boolean |          | `true`                    | Enable/disable Portfolios. Defaults to Workspace setting if `None`.                                                                   |
| `features__custom__fields__enabled`              | boolean |          | `true`                    | Enable/disable Custom Fields. Defaults to Workspace setting if `None`.                                                                |
| `features__due__dates__start__date`              | boolean |          | `true`                    | Enable/disable Start Date for Due Dates (if Due Dates enabled). Defaults to Workspace setting if `None`.                              |
| `features__time__tracking__enabled`              | boolean |          | `true`                    | Enable/disable Time Tracking. Defaults to Workspace setting if `None`.                                                                |
| `features__time__estimates__enabled`             | boolean |          | `true`                    | Enable/disable Time Estimates. Defaults to Workspace setting if `None`.                                                               |
| `features__dependency__warning__enabled`         | boolean |          | `true`                    | Enable/disable Dependency Warning (shows conflict warnings). Defaults to Workspace setting if `None`.                                 |
| `features__remap__dependencies__enabled`         | boolean |          | `true`                    | Enable/disable Remap Dependencies (auto-adjusts task dates). Defaults to Workspace setting if `None`.                                 |
| `features__due__dates__remap__due__dates`        | boolean |          | `true`                    | Enable/disable subtask due date remapping (if Due Dates enabled). Defaults to Workspace setting if `None`.                            |
| `features__due__dates__remap__closed__due__date` | boolean |          | `false`                   | Enable/disable closed subtask due date remapping (if Due Dates & subtask remapping enabled). Defaults to Workspace setting if `None`. |

***

### `Clickup Create Space Tag`

Integration name: **CLICKUP\_CREATE\_SPACE\_TAG**

Creates a new tag (name, foreground color, background color) in an existing ClickUp Space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example     | Description                                                                                                               |
| ------------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------- |
| `space_id`    | string |     ✅    | `"123456"`  | Numeric ID of the Space to create the tag in.                                                                             |
| `tag__name`   | string |     ✅    | `"Urgent"`  | Name for the new tag. This parameter maps to the nested `tag.name` field in the API request.                              |
| `tag__tag_bg` | string |     ✅    | `"#FF0000"` | Hexadecimal background color for the tag. This parameter maps to the nested `tag.tag_bg` field in the API request.        |
| `tag__tag_fg` | string |     ✅    | `"#FFFFFF"` | Hexadecimal foreground (text) color for the tag. This parameter maps to the nested `tag.tag_fg` field in the API request. |

***

### `Clickup Create Space View`

Integration name: **CLICKUP\_CREATE\_SPACE\_VIEW**

Creates a customizable view (e.g., List, Board, Gantt) within a specified ClickUp Space, allowing configuration of grouping, sorting, filtering, and display settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                | Type    | Required | Example                                             | Description                                                                                                                                                                                                                                                                                               |
| ---------------------------------------- | ------- | :------: | --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | string  |     ✅    | `"My Custom Board View"`                            | The name for the new view.                                                                                                                                                                                                                                                                                |
| `type`                                   | string  |     ✅    | `"list"`                                            | The type of view to create. Valid options include: `list`, `board`, `calendar`, `table`, `timeline`, `workload`, `activity`, `map`, `conversation`, or `gantt`.                                                                                                                                           |
| `space_id`                               | string  |     ✅    | `"123456"`                                          | The unique identifier of the Space where the new view will be created.                                                                                                                                                                                                                                    |
| `divide__dir`                            | null    |          | —                                                   | Sort order for divided sections. Must be `None` if included, as sort direction for divisions may not be applicable here.                                                                                                                                                                                  |
| `filters__op`                            | string  |          | `"AND"`                                             | Logical operator (`AND` or `OR`) for combining filters. When ANY filter parameter is provided, ALL filter fields (op, fields, search, show\_closed) are required. Defaults to 'AND' if not specified when other filter fields are present.                                                                |
| `divide__field`                          | null    |          | —                                                   | Field to divide tasks by. Must be `None` if included, as division by field may not be applicable for Space views via this action.                                                                                                                                                                         |
| `grouping__dir`                          | integer |          | `"1"`                                               | Group sort order: `1` for ascending, `-1` for descending. Required when any grouping parameter is provided.                                                                                                                                                                                               |
| `columns__fields`                        | array   |          | `["name","status","priority","custom_field_id_cf"]` | Field identifiers for columns. Use standard field names (e.g., 'status') or Custom Field IDs with `_cf` prefix (e.g., 'ID\_cf').                                                                                                                                                                          |
| `filters__fields`                        | array   |          | `["status__eq__open","priority__gt__2"]`            | Fields to apply filters on. When ANY filter parameter is provided, ALL filter fields (op, fields, search, show\_closed) are required. Defaults to empty array if not specified when other filter fields are present. Refer to ClickUp API documentation for available filterable fields and their syntax. |
| `filters__search`                        | string  |          | `"bug fix"`                                         | A search string to filter tasks by keywords or specific criteria within the view. When ANY filter parameter is provided, ALL filter fields (op, fields, search, show\_closed) are required. Defaults to empty string if not specified when other filter fields are present.                               |
| `grouping__field`                        | string  |          | `"status"`                                          | The field to group tasks by. Options include: `none`, `status`, `priority`, `assignee`, `tag`, or `dueDate`. When any grouping parameter is provided, `grouping__field`, `grouping__dir`, `grouping__collapsed`, and `grouping__ignore` are all required.                                                 |
| `sorting__fields`                        | array   |          | `["dueDate","priority"]`                            | Fields to sort tasks by (e.g., `dueDate`, `priority`). Refer to ClickUp API documentation for a complete list of sortable fields.                                                                                                                                                                         |
| `grouping__ignore`                       | boolean |          | —                                                   | If `True`, tasks not matching grouping criteria are hidden; otherwise, they are shown in a default group. Required when any grouping parameter is provided.                                                                                                                                               |
| `divide__collapsed`                      | array   |          | —                                                   | Array of identifiers for divided sections to collapse by default, or null if no sections should be collapsed.                                                                                                                                                                                             |
| `grouping__collapsed`                    | array   |          | `["Closed"]`                                        | A list of string identifiers for groups that should be collapsed by default (e.g., status names like 'Closed', or assignee user IDs if grouping by assignee). Required when any grouping parameter is provided.                                                                                           |
| `filters__show__closed`                  | boolean |          | —                                                   | If `True`, closed tasks are included in the view. When ANY filter parameter is provided, ALL filter fields (op, fields, search, show\_closed) are required. Defaults to false if not specified when other filter fields are present.                                                                      |
| `settings__me__comments`                 | boolean |          | —                                                   | If `True`, in 'Me Mode', this setting filters for or highlights tasks where the current user has made comments. When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                                     |
| `settings__me__subtasks`                 | boolean |          | —                                                   | If `True`, in 'Me Mode', this setting filters for or highlights subtasks assigned to the current user. When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                                              |
| `settings__show__images`                 | boolean |          | —                                                   | If `True`, displays cover images or image attachments directly on task cards in the view. When ANY settings parameter is provided, ALL settings fields are required. Defaults to true if not specified when other settings fields are present.                                                            |
| `settings__me__checklists`               | boolean |          | —                                                   | If `True`, in 'Me Mode', this setting filters for or highlights tasks with checklist items assigned to the current user. When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                            |
| `settings__show__subtasks`               | integer |          | `"1"`                                               | How subtasks are displayed: `1` (show as separate tasks), `2` (show expanded under parent task), or `3` (show collapsed under parent task). When ANY settings parameter is provided, ALL settings fields are required. Defaults to 1 if not specified when other settings fields are present.             |
| `team__sidebar__assignees`               | array   |          | `["183","512"]`                                     | A list of user IDs (as strings) to filter by in the team sidebar.                                                                                                                                                                                                                                         |
| `settings__show__assignees`              | boolean |          | —                                                   | If `True`, displays task assignees in the view (e.g., on task cards). When ANY settings parameter is provided, ALL settings fields are required. Defaults to true if not specified when other settings fields are present.                                                                                |
| `settings__show__task__locations`        | boolean |          | —                                                   | If `True`, displays the task's location (List, Folder, Space). When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                                                                                      |
| `settings__show__closed__subtasks`       | boolean |          | —                                                   | If `True`, includes closed subtasks in the view according to other filter criteria. When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                                                                 |
| `team__sidebar__unassigned__tasks`       | boolean |          | —                                                   | If `True`, shows unassigned tasks in the team sidebar.                                                                                                                                                                                                                                                    |
| `team__sidebar__assigned__comments`      | boolean |          | —                                                   | If `True`, shows tasks with comments assigned to the current user in the team sidebar.                                                                                                                                                                                                                    |
| `settings__collapse__empty__columns`     | string  |          | `"true"`                                            | If 'true', collapses empty columns (e.g., status columns with no tasks). Use string 'true' or 'false'. When ANY settings parameter is provided, ALL settings fields are required. Defaults to 'false' if not specified when other settings fields are present.                                            |
| `settings__show__subtask__parent__names` | boolean |          | —                                                   | If `True`, displays the parent task name next to subtasks for clarity. When ANY settings parameter is provided, ALL settings fields are required. Defaults to false if not specified when other settings fields are present.                                                                              |

***

### `Clickup Create Task`

Integration name: **CLICKUP\_CREATE\_TASK**

Creates a new ClickUp task in a specific list, optionally as a subtask if a `parent` task ID (which cannot be a subtask itself and must be in the same list) is provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------------------ | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                         | string  |     ✅    | `"Implement user authentication module"` | The name of the new task.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `tags`                         | array   |          | `"important"`                            | Tag names to apply.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `parent`                       | string  |          | —                                        | ID of an existing task to be the parent (creating a subtask). Parent must not be a subtask and must be in the same list.                                                                                                                                                                                                                                                                                                                                                          |
| `status`                       | string  |          | —                                        | Status name for the task. IMPORTANT: Each ClickUp list has its own unique status configuration. Common names like 'todo', 'done', or 'in progress' often do NOT exist - you must use the exact status names (case-sensitive) configured in the target list. To get valid statuses, call GET /list/{list\_id} and check the 'statuses' array in the response for available status names. If omitted, uses the list's default status (recommended when valid statuses are unknown). |
| `list_id`                      | string  |     ✅    | `"901234567890"`                         | The ID of the list where the task will be created.                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `team_id`                      | string  |          | `"123456789"`                            | Team ID, required only if `custom_task_ids` is `true`.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `due_date`                     | integer |          | `"1700000000000"`                        | Due date as a Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `links_to`                     | string  |          | —                                        | ID of an existing task to link as a dependency.                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `priority`                     | integer |          | `"1"`                                    | Priority level: 1 (Urgent), 2 (High), 3 (Normal), 4 (Low).                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `assignees`                    | array   |          | `"183"`                                  | User IDs to assign to the task.                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `notify_all`                   | boolean |          | —                                        | `True` to send notifications to all task watchers, including the creator.                                                                                                                                                                                                                                                                                                                                                                                                         |
| `start_date`                   | integer |          | `"1690000000000"`                        | Start date as a Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `description`                  | string  |          | —                                        | Task's detailed description.                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `custom_fields`                | array   |          | —                                        | Custom fields to apply. See ClickUp API for structure.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `due_date_time`                | boolean |          | —                                        | `True` if `due_date` includes a specific time, `false` if it's an all-day task.                                                                                                                                                                                                                                                                                                                                                                                                   |
| `time_estimate`                | integer |          | `"3600000"`                              | Estimated time to complete, in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `custom_item_id`               | integer |          | —                                        | Custom task type ID. Omit or use `null` for standard tasks (recommended). Custom task types including Milestones (ID `1`) are subject to workspace plan quotas. Only specify a custom\_item\_id if you have confirmed the workspace has available quota for that task type. Use GET /team/{team\_id}/custom\_item to check available custom task types and their quotas.                                                                                                          |
| `custom_task_ids`              | boolean |          | —                                        | Enables referencing tasks by custom task ID; requires `team_id` if `true`.                                                                                                                                                                                                                                                                                                                                                                                                        |
| `start_date_time`              | boolean |          | —                                        | `True` if `start_date` includes a specific time, `false` if it's an all-day task.                                                                                                                                                                                                                                                                                                                                                                                                 |
| `check_required_custom_fields` | boolean |          | —                                        | `True` to enforce filling all required Custom Fields upon creation.                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Clickup Create Task Attachment`

Integration name: **CLICKUP\_CREATE\_TASK\_ATTACHMENT**

Uploads a file as an attachment to a specified ClickUp task using multipart/form-data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example    | Description                                                                                                                                                                  |
| ----------------- | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"9hz456"` | The unique identifier of the task to which the attachment will be added.                                                                                                     |
| `team_id`         | string  |          | `"123"`    | The ID of the team. This is required and used only if `custom_task_ids` is `true` to help locate the task by its custom ID. For example: `custom_task_ids=true&team_id=123`. |
| `attachment`      | object  |     ✅    | —          | The file to be uploaded as an attachment. Note: Files stored in the cloud (URLs) cannot be used - actual file content must be provided.                                      |
| `custom_task_ids` | boolean |          | `"true"`   | If `true`, indicates that `task_id` should be interpreted as a custom task ID instead of the default ClickUp task ID. If this is `true`, `team_id` must also be provided.    |

***

### `Clickup Create Task Comment`

Integration name: **CLICKUP\_CREATE\_TASK\_COMMENT**

Adds a comment to a ClickUp task; `team_id` is required if `custom_task_ids` is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                          | Description                                                                                                                                                                                                                                                   |
| ----------------- | ------- | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"abc123xyz"`                    | Unique task identifier for the comment. Can be standard or custom if `custom_task_ids` is true.                                                                                                                                                               |
| `team_id`         | string  |          | `"123"`                          | Team ID, required if `custom_task_ids` is true to locate the task by its custom ID.                                                                                                                                                                           |
| `assignee`        | integer |     ✅    | `183`                            | The user ID of the person to whom this specific comment should be assigned or mentioned. This assigns the comment, not the task.                                                                                                                              |
| `notify_all`      | boolean |     ✅    | —                                | If `true`, notifications for this comment will be sent to all users watching the task, including the comment's creator. If `false`, notifications will be sent according to standard ClickUp notification rules (e.g., to mentioned users, comment assignee). |
| `comment_text`    | string  |     ✅    | `"@JohnDoe please review this."` | The text content for the comment. Supports ClickUp's comment formatting (e.g., mentions, markdown).                                                                                                                                                           |
| `custom_task_ids` | boolean |          | —                                | Set to `true` to indicate that the `task_id` provided is a custom task ID. If `true`, the `team_id` must also be provided.                                                                                                                                    |

***

### `Clickup Create Task From Template`

Integration name: **CLICKUP\_CREATE\_TASK\_FROM\_TEMPLATE**

Creates a new task in a specified ClickUp list from a task template, using the provided name for the new task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                       | Description                                                                |
| ------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"Follow up with new client"`                 | Name for the new task created from the template.                           |
| `list_id`     | string |     ✅    | `"123456789"`                                 | Numeric ID of the ClickUp list for task creation, found in the list's URL. |
| `template_id` | string |     ✅    | `"041f0c75-b33c-4927-b2d5-8e25b49d995b_t123"` | Unique string ID of the task template to use.                              |

***

### `Clickup Create Team`

Integration name: **CLICKUP\_CREATE\_TEAM**

Creates a new team (user group) with specified members in a Workspace; member IDs must be for existing users, and be aware that adding view-only guests as paid members may incur extra charges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                     |
| --------- | ------ | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"Marketing Department"` | Name for the new team (user group).                                                                             |
| `members` | array  |     ✅    | `[123456,789012]`        | User IDs to be initial members of the new team (user group).                                                    |
| `team_id` | string |     ✅    | `"1839200"`              | Workspace ID where the team (user group) will be created (this is referred to as 'Team ID' in the ClickUp API). |

***

### `Clickup Create Threaded Comment`

Integration name: **CLICKUP\_CREATE\_THREADED\_COMMENT**

Tool to create a threaded reply to a comment in ClickUp. Use when you need to respond to an existing comment with context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                           | Description                                                                                                                                                                                 |
| ---------------- | ------- | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `assignee`       | integer |          | `183`                                             | The user ID of the person to assign this reply to.                                                                                                                                          |
| `comment_id`     | string  |     ✅    | `"90160165321132"`                                | The ID of the parent comment to reply to.                                                                                                                                                   |
| `notify_all`     | boolean |     ✅    | —                                                 | If true, notifications for this reply will be sent to all users watching the parent comment or task. If false, notifications will be sent according to standard ClickUp notification rules. |
| `comment_text`   | string  |     ✅    | `"This is a threaded reply to test the endpoint"` | The text content of the reply. Supports ClickUp's comment formatting (e.g., mentions, markdown).                                                                                            |
| `group_assignee` | string  |          | `"group123"`                                      | The group ID to assign this reply to.                                                                                                                                                       |

***

### `Clickup Create Webhook`

Integration name: **CLICKUP\_CREATE\_WEBHOOK**

Creates a ClickUp webhook for a Team (Workspace) to notify a public URL on specified events (at least one, or '\*' for all), optionally scoped to a Space, Folder, List, or Task; the endpoint must accept requests from dynamic IPs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                           | Description                                                                                                   |
| ----------- | ------ | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `events`    | array  |     ✅    | `"*"`                                             | Event types to subscribe to; use '\*' for all events on the resource. Examples: 'taskCreated', 'taskUpdated'. |
| `list_id`   | string |          | `"901234"`                                        | Optional. ID of the List to scope the webhook; triggers only for events in this List.                         |
| `task_id`   | string |          | `"3ax5vyt"`                                       | Optional. ID of the Task to scope the webhook; triggers only for events for this Task.                        |
| `team_id`   | string |     ✅    | `"1839200"`                                       | ID of the Team (Workspace) for the webhook.                                                                   |
| `endpoint`  | string |     ✅    | `"https://myapplication.com/api/clickup_webhook"` | Publicly accessible URL for ClickUp to send POST notifications for subscribed events.                         |
| `space_id`  | string |          | `"789012"`                                        | Optional. ID of the Space to scope the webhook; triggers only for events in this Space.                       |
| `folder_id` | string |          | `"345678"`                                        | Optional. ID of the Folder to scope the webhook; triggers only for events in this Folder.                     |

***

### `Clickup Create Workspace Everything Level View`

Integration name: **CLICKUP\_CREATE\_WORKSPACE\_EVERYTHING\_LEVEL\_VIEW**

Creates a new, customizable view (e.g., List, Board) at the 'Everything' level for a specified Team (Workspace ID), encompassing all tasks within that Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                | Type    | Required | Example                     | Description                                                                                                                 |
| ---------------------------------------- | ------- | :------: | --------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | string  |     ✅    | `"All Tasks Overview"`      | Name for the new view.                                                                                                      |
| `type`                                   | string  |     ✅    | `"list"`                    | Type of view to create (e.g., list, board, calendar).                                                                       |
| `team_id`                                | string  |     ✅    | `"123456"`                  | Team (Workspace) ID where the 'Everything' level view will be created.                                                      |
| `divide__dir`                            | null    |          | —                           | Sort direction for divided sections: `1` for ascending, `-1` for descending.                                                |
| `filters__op`                            | string  |          | `"AND"`                     | Logical operator for combining filters (`AND` or `OR`).                                                                     |
| `divide__field`                          | null    |          | —                           | Field to divide the view by, creating separate sections (e.g., 'priority', 'status').                                       |
| `grouping__dir`                          | integer |          | `1`                         | Sort order for grouped tasks: `1` for ascending, `-1` for descending.                                                       |
| `columns__fields`                        | array   |          | —                           | Columns to display and their order. Prefix Custom Fields with `_cf`. For specific configurations, use a JSON object string. |
| `filters__fields`                        | array   |          | `["status","assignee"]`     | Fields to apply filters on. See ClickUp API docs for filterable fields.                                                     |
| `filters__search`                        | string  |          | `"urgent project update"`   | Search term to filter tasks by name, description, etc.                                                                      |
| `grouping__field`                        | string  |          | `"none"`                    | Field to group tasks by (e.g., status, priority).                                                                           |
| `sorting__fields`                        | array   |          | `["dueDate","priority"]`    | Fields to sort tasks by. See ClickUp API docs for sortable fields.                                                          |
| `grouping__ignore`                       | boolean |          | —                           | If true, tasks in closed statuses are excluded from grouping.                                                               |
| `divide__collapsed`                      | array   |          | —                           | List of division identifiers to be collapsed by default. Must be an array (e.g., \[]) or null, not a boolean.               |
| `grouping__collapsed`                    | array   |          | —                           | List of group identifiers (e.g., status names, assignee IDs) to be collapsed by default.                                    |
| `filters__show__closed`                  | boolean |          | —                           | If true, include tasks with 'Closed' status in the view.                                                                    |
| `settings__me__comments`                 | boolean |          | —                           | If true, 'Me Mode' filters for tasks commented on by the current user.                                                      |
| `settings__me__subtasks`                 | boolean |          | —                           | If true, 'Me Mode' filters for subtasks assigned to the current user.                                                       |
| `settings__show__images`                 | boolean |          | —                           | If true, show task cover images or attachment previews.                                                                     |
| `settings__me__checklists`               | boolean |          | —                           | If true, 'Me Mode' filters for tasks where current user is assigned to checklist items.                                     |
| `settings__show__subtasks`               | integer |          | `1`                         | Subtask display mode: `1` (separate), `2` (expand), `3` (collapse).                                                         |
| `team__sidebar__assignees`               | array   |          | `["user_id_1","user_id_2"]` | List of user IDs to filter tasks by in the team sidebar.                                                                    |
| `settings__show__assignees`              | boolean |          | —                           | If true, display task assignees.                                                                                            |
| `settings__show__task__locations`        | boolean |          | —                           | If true, display breadcrumb path (Space > Folder > List) for each task.                                                     |
| `settings__show__closed__subtasks`       | boolean |          | —                           | If true, show closed subtasks according to `settings_show_subtasks`.                                                        |
| `team__sidebar__unassigned__tasks`       | boolean |          | —                           | If true, team sidebar includes filter for unassigned tasks.                                                                 |
| `team__sidebar__assigned__comments`      | boolean |          | —                           | If true, team sidebar includes filter for tasks with assigned comments.                                                     |
| `settings__collapse__empty__columns`     | string  |          | `"true"`                    | If true, collapse or hide empty columns.                                                                                    |
| `settings__show__subtask__parent__names` | boolean |          | —                           | If true, display parent task name next to subtasks.                                                                         |

***

### `Clickup Delete Chat Channel`

Integration name: **CLICKUP\_DELETE\_CHAT\_CHANNEL**

Tool to delete a chat channel in ClickUp. Use when you need to permanently remove a chat channel from a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example           | Description                                          |
| -------------- | ------- | :------: | ----------------- | ---------------------------------------------------- |
| `channel_id`   | string  |     ✅    | `"2kz0k9bp-4336"` | The ID of the chat channel to delete.                |
| `workspace_id` | integer |     ✅    | `90161390966`     | The ID of the Workspace containing the chat channel. |

***

### `Clickup Delete Chat Message`

Integration name: **CLICKUP\_DELETE\_CHAT\_MESSAGE**

Tool to delete a chat message in ClickUp. Use when you need to permanently remove a specific message from a workspace chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example            | Description                      |
| -------------- | ------- | :------: | ------------------ | -------------------------------- |
| `message_id`   | string  |     ✅    | `"80160027256732"` | The ID of the specified message. |
| `workspace_id` | integer |     ✅    | `90161390966`      | The ID of the Workspace.         |

***

### `Clickup Delete Chat Reaction`

Integration name: **CLICKUP\_DELETE\_CHAT\_REACTION**

Tool to delete a reaction from a chat message in ClickUp. Use when you need to remove an emoji reaction that was previously added to a chat message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example            | Description                                                                                                                                        |
| -------------- | ------ | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `reaction`     | string |     ✅    | `"heart"`          | The name of the reaction emoji to remove from the message (e.g., 'heart', 'thumbsup', 'smile'). Use the exact emoji name as it appears in ClickUp. |
| `message_id`   | string |     ✅    | `"80160022237792"` | The ID of the chat message from which to remove the reaction.                                                                                      |
| `workspace_id` | string |     ✅    | `"90161390966"`    | The ID of the Workspace containing the chat message.                                                                                               |

***

### `Clickup Delete Checklist`

Integration name: **CLICKUP\_DELETE\_CHECKLIST**

Permanently deletes an existing checklist identified by its `checklist_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                         | Description                                                  |
| -------------- | ------ | :------: | ------------------------------- | ------------------------------------------------------------ |
| `checklist_id` | string |     ✅    | `"b8a8-48d8-a0c6-b4200788a683"` | The unique identifier (UUID) of the checklist to be deleted. |

***

### `Clickup Delete Checklist Item`

Integration name: **CLICKUP\_DELETE\_CHECKLIST\_ITEM**

Permanently deletes an existing item, identified by `checklist_item_id`, from an existing checklist, identified by `checklist_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                         | Description                                                                  |
| ------------------- | ------ | :------: | ------------------------------- | ---------------------------------------------------------------------------- |
| `checklist_id`      | string |     ✅    | `"b8a8-48d8-a0c6-b4200788a683"` | Unique identifier (UUID) of the checklist containing the item to be deleted. |
| `checklist_item_id` | string |     ✅    | `"e491-47f5-9fd8-d1dc4cedcc6f"` | Unique identifier (UUID) of the specific checklist item to be deleted.       |

***

### `Clickup Delete Comment`

Integration name: **CLICKUP\_DELETE\_COMMENT**

Deletes an existing comment from a task using its `comment_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                         |
| ------------ | ------ | :------: | ------- | --------------------------------------------------- |
| `comment_id` | string |     ✅    | `"123"` | The unique identifier of the comment to be deleted. |

***

### `Clickup Delete Dependency`

Integration name: **CLICKUP\_DELETE\_DEPENDENCY**

Removes a dependency relationship for a task. Provide exactly one of: `depends_on` to remove a 'waiting on' dependency (task\_id is blocked by another task), or `dependency_of` to remove a 'blocking' dependency (another task is blocked by task\_id). `team_id` is required if `custom_task_ids` is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                                                                                                                           |
| ----------------- | ------- | :------: | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"abc123xyz"` | Identifier of the task from which the dependency relationship will be removed.                                                                                                                                        |
| `team_id`         | string  |          | `"12345"`     | Numeric team ID, required only when `custom_task_ids` is true to scope custom task IDs.                                                                                                                               |
| `depends_on`      | string  |          | `"def456uvw"` | Identifier of the task that `task_id` depends on (i.e., `task_id` is waiting on this task). Provide this to remove a 'waiting on' dependency. Mutually exclusive with `dependency_of` - exactly one must be provided. |
| `dependency_of`   | string  |          | `"ghi789rst"` | Identifier of the task that depends on `task_id` (i.e., this task is blocked by `task_id`). Provide this to remove a 'blocking' dependency. Mutually exclusive with `depends_on` - exactly one must be provided.      |
| `custom_task_ids` | boolean |          | `"true"`      | If true, interprets `task_id` and the dependency task ID as custom task IDs; `team_id` also required.                                                                                                                 |

***

### `Clickup Delete Folder`

Integration name: **CLICKUP\_DELETE\_FOLDER**

Permanently and irreversibly deletes a specified folder and all its contents (Lists, Tasks) if the folder\_id exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                  |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------ |
| `folder_id` | string |     ✅    | `"901200000000"` | The unique numerical identifier of the folder to be deleted. |

***

### `Clickup Delete Goal`

Integration name: **CLICKUP\_DELETE\_GOAL**

Permanently removes an existing Goal, identified by its `goal_id`, from the Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                         | Description                                             |
| --------- | ------ | :------: | ------------------------------- | ------------------------------------------------------- |
| `goal_id` | string |     ✅    | `"900e-462d-a849-4a216b06d930"` | The unique identifier (UUID) of the Goal to be deleted. |

***

### `Clickup Delete Key Result`

Integration name: **CLICKUP\_DELETE\_KEY\_RESULT**

Deletes an existing Key Result, also referred to as a Target within a Goal, identified by its `key_result_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                         | Description                                                                                                                    |
| --------------- | ------ | :------: | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `key_result_id` | string |     ✅    | `"8480-49bc-8c57-e569747efe93"` | The unique identifier (UUID) of the Key Result to be deleted. This is often referred to as a 'Target' in the context of Goals. |

***

### `Clickup Delete List`

Integration name: **CLICKUP\_DELETE\_LIST**

Permanently deletes an existing List and all its contents; this action is destructive and irreversible via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                               |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id` | string |     ✅    | `"123"` | The unique numerical identifier of the List to be deleted. This ID can be found by navigating to the List in ClickUp; the ID is often present in the URL. |

***

### `Clickup Delete Space`

Integration name: **CLICKUP\_DELETE\_SPACE**

Permanently deletes a specified Space in ClickUp; this action is irreversible as the Space cannot be recovered via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example       | Description                                     |
| ---------- | ------ | :------: | ------------- | ----------------------------------------------- |
| `space_id` | string |     ✅    | `"183090932"` | Unique numerical ID of the Space to be deleted. |

***

### `Clickup Delete Space Tag`

Integration name: **CLICKUP\_DELETE\_SPACE\_TAG**

Deletes a Tag from a Space, identified by `tag_name` in path; precise matching of Tag details in the request body (`tag_name_1`, `tag_tag_fg`, `tag_tag_bg`) is generally required for successful deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example      | Description                                                                                                                                                            |
| -------------- | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `space_id`     | string |     ✅    | `"12345678"` | Numeric identifier of the Space from which the Tag will be deleted.                                                                                                    |
| `tag_name`     | string |     ✅    | `"Urgent"`   | Name of the Tag to be deleted, used in the URL path to identify it.                                                                                                    |
| `tag__name`    | string |          | `"Urgent"`   | Name of the Tag in the request body. Though schema-optional, generally required by the API to match the Tag's actual name for successful deletion.                     |
| `tag__tag__bg` | string |          | `"#FF0000"`  | Background color of the Tag in HEX format (e.g., '#FF5733') in the request body. Though schema-optional, generally required by the API for successful deletion.        |
| `tag__tag__fg` | string |          | `"#FFFFFF"`  | Foreground (text) color of the Tag in HEX format (e.g., '#FFFFFF') in the request body. Though schema-optional, generally required by the API for successful deletion. |

***

### `Clickup Delete Task`

Integration name: **CLICKUP\_DELETE\_TASK**

Permanently deletes a task, using its standard ID or a custom task ID (requires `custom_task_ids=true` and `team_id`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example      | Description                                                                                                              |
| ----------------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `task_id`         | string  |     ✅    | `"1a2b3c4d"` | Unique ID of the task to delete. Can be a standard ID or a custom task ID (if custom, `custom_task_ids` must be `true`). |
| `team_id`         | string  |          | `"98765"`    | Team ID. Required only if `custom_task_ids` is `true` to identify the team for the custom task ID.                       |
| `custom_task_ids` | boolean |          | `"true"`     | Set to `true` if `task_id` is a custom ID (requires `team_id` if `true`).                                                |

***

### `Clickup Delete Task Link`

Integration name: **CLICKUP\_DELETE\_TASK\_LINK**

Deletes an existing link, effectively a dependency or relationship, between two ClickUp tasks; set `custom_task_ids=true` and provide `team_id` if using custom task IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                                                                                                                                              |
| ----------------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"task_id_1"` | The ID of the first task involved in the link. If `custom_task_ids` is `true`, this should be its custom task ID.                                                                                                                        |
| `team_id`         | string  |          | `"123"`       | The numerical ID of the team. This parameter is required and used only when `custom_task_ids` is set to `true` to correctly scope the custom task IDs. For example: `custom_task_ids=true&team_id=123`.                                  |
| `links_to`        | string  |     ✅    | `"task_id_2"` | The ID of the second task involved in the link. If `custom_task_ids` is `true`, this should be its custom task ID.                                                                                                                       |
| `custom_task_ids` | boolean |          | `"true"`      | If `task_id` and `links_to` refer to custom task IDs (rather than standard ClickUp task IDs), this parameter must be set to `true`. Setting this to `true` also requires `team_id` to be provided. Defaults to `false` if not specified. |

***

### `Clickup Delete Team`

Integration name: **CLICKUP\_DELETE\_TEAM**

Permanently deletes an existing Team (user group) from the Workspace using its `group_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                         | Description                                                           |
| ---------- | ------ | :------: | ------------------------------- | --------------------------------------------------------------------- |
| `group_id` | string |     ✅    | `"7C73-4002-A6A9-310014852858"` | The unique string identifier for the Team (user group) to be deleted. |

***

### `Clickup Delete Time Entry`

Integration name: **CLICKUP\_DELETE\_TIME\_ENTRY**

Deletes an existing time entry, specified by `timer_id`, from a Workspace identified by `team_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                                                                   |
| ---------- | ------ | :------: | ----------- | ----------------------------------------------------------------------------- |
| `team_id`  | string |     ✅    | `"1234567"` | Unique identifier of the Workspace from which the time entry will be deleted. |
| `timer_id` | string |     ✅    | `"9876543"` | Unique identifier of the time entry to be deleted.                            |

***

### `Clickup Delete Time Tracked`

Integration name: **CLICKUP\_DELETE\_TIME\_TRACKED**

Deletes a time-tracked interval from a task; use this legacy endpoint for older time tracking systems.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example              | Description                                                                                                                                                                          |
| ----------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `task_id`         | string  |     ✅    | `"task_abc_123"`     | Task ID; can be standard or custom if `custom_task_ids` is set to true.                                                                                                              |
| `team_id`         | string  |          | `"12345"`            | The ID of the team. This is required only if `custom_task_ids` is set to `true` to correctly identify the task using its custom ID. For example: `custom_task_ids=true&team_id=123`. |
| `interval_id`     | string  |     ✅    | `"interval_def_789"` | ID of the time tracking interval (entry) to be deleted.                                                                                                                              |
| `custom_task_ids` | boolean |          | `"true"`             | Set to `true` if `task_id` refers to a custom task ID. If `true`, `team_id` must also be provided. If omitted or `false`, `task_id` is treated as a standard ID.                     |

***

### `Clickup Delete View`

Integration name: **CLICKUP\_DELETE\_VIEW**

Permanently and irreversibly deletes an existing View in ClickUp, identified by its `view_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------ |
| `view_id` | string |     ✅    | `"105"` | The unique identifier of the View to be deleted. |

***

### `Clickup Delete Webhook`

Integration name: **CLICKUP\_DELETE\_WEBHOOK**

Permanently removes an existing webhook, specified by its ID, thereby ceasing all its event monitoring and notifications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                         | Description                                                |
| ------------ | ------ | :------: | ------------------------------- | ---------------------------------------------------------- |
| `webhook_id` | string |     ✅    | `"e506-4a29-9d42-26e504e3435e"` | The unique identifier (UUID) of the webhook to be deleted. |

***

### `Clickup Get Accessible Custom Fields`

Integration name: **CLICKUP\_GET\_ACCESSIBLE\_CUSTOM\_FIELDS**

Retrieves all accessible Custom Field definitions for a specified ClickUp List using its `list_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                              |
| --------- | ------ | :------: | ------------ | ---------------------------------------- |
| `list_id` | string |     ✅    | `"18123456"` | Numeric ID of the specific ClickUp List. |

***

### `Clickup Get Access Token`

Integration name: **CLICKUP\_GET\_ACCESS\_TOKEN**

Exchanges a ClickUp OAuth 2.0 authorization code (obtained after user consent) for an access token.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                                                  |
| --------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `code`          | string |     ✅    | `"CODE_FROM_REDIRECT_URI"`               | Authorization code from ClickUp's authorization server, typically a query parameter to your redirect URI after user consent. |
| `client_id`     | string |     ✅    | `"YOUR_CLICKUP_OAUTH_APP_CLIENT_ID"`     | Client ID for your registered ClickUp OAuth application.                                                                     |
| `client_secret` | string |     ✅    | `"YOUR_CLICKUP_OAUTH_APP_CLIENT_SECRET"` | Client Secret for your registered ClickUp OAuth application.                                                                 |

***

### `Clickup Get All Tags From Time Entries`

Integration name: **CLICKUP\_GET\_ALL\_TAGS\_FROM\_TIME\_ENTRIES**

Retrieves all unique tags applied to time entries within a specified ClickUp Team (Workspace).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                            |
| --------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------------------------ |
| `team_id` | string |     ✅    | `"1234567"` | The unique numerical identifier of the ClickUp Team (Workspace) for which to retrieve time entry tags. |

***

### `Clickup Get Authorized Teams Workspaces`

Integration name: **CLICKUP\_GET\_AUTHORIZED\_TEAMS\_WORKSPACES**

Retrieves a list of Workspaces (Teams) the authenticated user can access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Clickup Get Authorized User`

Integration name: **CLICKUP\_GET\_AUTHORIZED\_USER**

Retrieves the details of the currently authenticated ClickUp user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Clickup Get Bulk Tasks Time In Status`

Integration name: **CLICKUP\_GET\_BULK\_TASKS\_TIME\_IN\_STATUS**

Retrieves the time spent in each status for multiple tasks; requires the 'Total time in Status' ClickApp to be enabled in the Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                                                               |
| ----------------- | ------- | :------: | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`         | string  |          | `"123"`       | The ID of the team to which the custom task IDs belong. This field is required and used only when the `custom_task_ids` parameter is set to `true`.       |
| `task_ids`        | string  |     ✅    | `"3cuh,g4fs"` | A comma-separated string of task IDs (e.g., 'taskID1,taskID2') for which to retrieve time in status data. You can include up to 100 task IDs per request. |
| `custom_task_ids` | boolean |          | —             | Set to `true` if `task_ids` refer to custom task IDs instead of standard task IDs. If `true`, `team_id` must also be provided.                            |

***

### `Clickup Get Chat Channel`

Integration name: **CLICKUP\_GET\_CHAT\_CHANNEL**

Retrieves details for a specific chat channel in a ClickUp Workspace. Use when you need information about a particular chat channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example           | Description                                 |
| -------------------- | ------- | :------: | ----------------- | ------------------------------------------- |
| `channel_id`         | string  |     ✅    | `"2kz0k9bp-2036"` | The ID of the specified Channel.            |
| `workspace_id`       | integer |     ✅    | `"90161390966"`   | The ID of the Workspace.                    |
| `description_format` | string  |          | `"text/md"`       | Format options for the channel description. |

***

### `Clickup Get Chat Channel Followers`

Integration name: **CLICKUP\_GET\_CHAT\_CHANNEL\_FOLLOWERS**

Tool to retrieve followers of a ClickUp chat channel. Use when you need to list users following a specific channel in a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example             | Description                                                                                                 |
| -------------- | ------- | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------- |
| `limit`        | integer |          | `50`                | The maximum number of results to fetch for this page. Default is 50, max is 100.                            |
| `cursor`       | string  |          | —                   | The cursor to use to fetch the next page of results. Use the next\_cursor value from the previous response. |
| `channel_id`   | string  |     ✅    | `"4-90165816748-8"` | The ID of the chat channel. Format example: '4-90165816748-8'.                                              |
| `workspace_id` | integer |     ✅    | `90161390966`       | The ID of the Workspace containing the chat channel.                                                        |

***

### `Clickup Get Chat Channel Members`

Integration name: **CLICKUP\_GET\_CHAT\_CHANNEL\_MEMBERS**

Tool to get members of a chat channel. Use when you need to retrieve the list of members in a specific ClickUp chat channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example           | Description                                                                      |
| -------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------------- |
| `limit`        | integer |          | `50`              | The maximum number of results to fetch for this page. Default is 50, max is 100. |
| `cursor`       | string  |          | —                 | The cursor to use to fetch the next page of results.                             |
| `channel_id`   | string  |     ✅    | `"2kz0k9bp-2036"` | The ID of the specified Channel.                                                 |
| `workspace_id` | integer |     ✅    | `90161390966`     | The ID of the Workspace.                                                         |

***

### `Clickup Get Chat Channels`

Integration name: **CLICKUP\_GET\_CHAT\_CHANNELS**

Tool to retrieve chat channels in a ClickUp workspace. Use when you need to list available chat channels, DMs, or group chats in a workspace. Supports pagination via cursor and filtering by follower status, closed channels, and recent activity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example         | Description                                                                                   |
| -------------------- | ------- | :------: | --------------- | --------------------------------------------------------------------------------------------- |
| `limit`              | integer |          | `50`            | The maximum number of results to fetch for this page.                                         |
| `cursor`             | string  |          | —               | Used to request the next page of results.                                                     |
| `is_follower`        | boolean |          | —               | Only return Channels the user is following.                                                   |
| `workspace_id`       | integer |     ✅    | `90161390966`   | The ID of the Workspace.                                                                      |
| `channel_types`      | string  |          | —               | Specify the types of Channels to return from the request.                                     |
| `include_closed`     | boolean |          | —               | Include DMs/Group DMs that have been explicitly closed.                                       |
| `description_format` | string  |          | `"text/md"`     | Format options for channel descriptions.                                                      |
| `with_message_since` | integer |          | `1609459200000` | Only return Channels with at least one message since the given timestamp (Unix milliseconds). |

***

### `Clickup Get Chat Message Reactions`

Integration name: **CLICKUP\_GET\_CHAT\_MESSAGE\_REACTIONS**

Tool to retrieve reactions on a ClickUp chat message. Use when you need to see who reacted to a message and with what emoji.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example              | Description                                                                                                                          |
| -------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`        | integer |          | `50`                 | The maximum number of results to fetch for this page. Defaults to 50.                                                                |
| `cursor`       | string  |          | `"eyJwYWdlIjoxfQ=="` | The cursor to use to fetch the next page of results. Use the `next_cursor` from the previous response to paginate through reactions. |
| `message_id`   | string  |     ✅    | `"80160027256718"`   | The ID of the specified chat message.                                                                                                |
| `workspace_id` | integer |     ✅    | `90161390966`        | The ID of the Workspace containing the chat message.                                                                                 |

***

### `Clickup Get Chat Message Replies`

Integration name: **CLICKUP\_GET\_CHAT\_MESSAGE\_REPLIES**

Retrieves replies to a chat message in ClickUp. Use when you need to fetch responses to a specific message in a workspace chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example            | Description                                           |
| ---------------- | ------- | :------: | ------------------ | ----------------------------------------------------- |
| `limit`          | integer |          | `50`               | The maximum number of results to fetch for this page. |
| `cursor`         | string  |          | —                  | The cursor to use to fetch the next page of results.  |
| `message_id`     | string  |     ✅    | `"80160022237610"` | The ID of the specified message.                      |
| `workspace_id`   | integer |     ✅    | `90161390966`      | The ID of the Workspace.                              |
| `content_format` | string  |          | —                  | Content format for message replies.                   |

***

### `Clickup Get Chat Messages`

Integration name: **CLICKUP\_GET\_CHAT\_MESSAGES**

Tool to retrieve messages from a ClickUp chat channel. Use when you need to fetch chat messages for a specific channel within a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                           |
| ---------------- | ------- | :------: | ----------------- | ----------------------------------------------------- |
| `limit`          | integer |          | `50`              | The maximum number of results to fetch for this page. |
| `cursor`         | string  |          | —                 | The cursor to use to fetch the next page of results.  |
| `channel_id`     | string  |     ✅    | `"2kz0k9bp-2036"` | The ID of the Channel where the messages live.        |
| `workspace_id`   | integer |     ✅    | `90161390966`     | The ID of the Workspace.                              |
| `content_format` | string  |          | —                 | Format options for message content.                   |

***

### `Clickup Get Chat Message Tagged Users`

Integration name: **CLICKUP\_GET\_CHAT\_MESSAGE\_TAGGED\_USERS**

Tool to retrieve users tagged in a ClickUp chat message. Use when you need to get a list of users mentioned in a specific chat message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example            | Description                                           |
| -------------- | ------- | :------: | ------------------ | ----------------------------------------------------- |
| `limit`        | integer |          | `50`               | The maximum number of results to fetch for this page. |
| `cursor`       | string  |          | —                  | The cursor to use to fetch the next page of results.  |
| `message_id`   | string  |     ✅    | `"80160027256695"` | The ID of the specified message.                      |
| `workspace_id` | integer |     ✅    | `90161390966`      | The ID of the Workspace.                              |

***

### `Clickup Get Chat View Comments`

Integration name: **CLICKUP\_GET\_CHAT\_VIEW\_COMMENTS**

Retrieves comments from a specified Chat view in ClickUp, supporting pagination via `start` and `start_id` to fetch comments older than the default 25 most recent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                  | Description                                                                                                                                   |
| ---------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `start`    | integer |          | `"1578339848000"`                        | Unix timestamp (milliseconds) to filter comments created at or after this time. For pagination, typically used with `start_id`.               |
| `view_id`  | string  |     ✅    | `"105"`                                  | Unique identifier of the Chat view from which to retrieve comments.                                                                           |
| `start_id` | string  |          | `"b79a7feb-9691-45f0-877a-d906349e0865"` | Comment ID to act as a cursor for pagination, used with `start` to retrieve comments after this ID that also meet the `start` time condition. |

***

### `Clickup Get Custom Roles`

Integration name: **CLICKUP\_GET\_CUSTOM\_ROLES**

Retrieves all Custom Roles, which allow granular permission configurations, for a specified Workspace (Team).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example     | Description                                                                       |
| ----------------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------- |
| `team_id`         | string  |     ✅    | `"1234567"` | The unique identifier of the Workspace (Team) for which to retrieve custom roles. |
| `include_members` | boolean |          | `true`      | If true, includes members assigned to each custom role in the response.           |

***

### `Clickup Get Custom Task Types`

Integration name: **CLICKUP\_GET\_CUSTOM\_TASK\_TYPES**

Retrieves all custom task types available within a specified Workspace (team\_id).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                                                          |
| --------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------ |
| `team_id` | string |     ✅    | `"12345678"` | Numeric ID of the Workspace (formerly Team) for which to retrieve custom task types. |

***

### `Clickup Get Doc Content`

Integration name: **CLICKUP\_GET\_DOC\_CONTENT**

Tool to fetch the full content of a ClickUp Doc including metadata and all page contents in markdown format. Use when you need to read or summarize a Doc's content given workspace\_id and doc\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                           | Description                                                                                                                                                                                                                                                                                                                                                 |
| --------------------------- | ------- | :------: | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `doc_id`                    | string  |     ✅    | `"2kz0k9bp-1376"`                 | The unique ClickUp Doc ID in format '{alphanumeric\_prefix}-{number}' (e.g., '2kz0k9bp-1376'). IMPORTANT: Numeric-only IDs (e.g., '4017245840171325375') are View IDs, NOT Doc IDs, and will fail. To get a valid doc\_id, use CLICKUP\_CLICK\_UP\_SEARCH\_DOCS or extract from a ClickUp Doc URL (format: app.clickup.com/{workspace\_id}/v/dc/{doc\_id}). |
| `page_ids`                  | array   |          | `["2kz0k9bp-416","2kz0k9bp-420"]` | Optional list of specific page IDs to fetch. If provided, only these pages will be retrieved. If omitted, all pages in the doc will be fetched. Page IDs follow the same format as doc\_id (e.g., '2kz0k9bp-416').                                                                                                                                          |
| `workspace_id`              | string  |     ✅    | `"90161390966"`                   | The numeric workspace ID containing the document. Obtain this from the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST or CLICKUP\_CLICK\_UP\_SEARCH\_DOCS action.                                                                                                                                                                                           |
| `include_page_listing_only` | boolean |          | —                                 | If true, only fetch the list of pages without their content. Useful for discovering page structure without the full content retrieval overhead.                                                                                                                                                                                                             |

***

### `Clickup Get Doc Page Content`

Integration name: **CLICKUP\_GET\_DOC\_PAGE\_CONTENT**

Tool to fetch a single ClickUp Doc page's content and metadata by workspace\_id + doc\_id + page\_id (v3 Docs API). Use when you need to read the content of a specific page without fetching the entire Doc.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                                                                                                             |
| -------------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `doc_id`       | string |     ✅    | `"2kz0k9bp-1376"` | The unique ClickUp Doc ID in format '{alphanumeric\_prefix}-{number}' (e.g., '2kz0k9bp-1376'). To get a valid doc\_id, use CLICKUP\_CLICK\_UP\_SEARCH\_DOCS or extract from a ClickUp Doc URL.                          |
| `page_id`      | string |     ✅    | `"2kz0k9bp-416"`  | The unique page ID to retrieve, following the same format as doc\_id (e.g., '2kz0k9bp-416'). Obtain from CLICKUP\_CLICK\_UP\_GET\_DOC\_CONTENT with include\_page\_listing\_only=true or from the Doc's page structure. |
| `workspace_id` | string |     ✅    | `"90161390966"`   | The numeric workspace ID containing the document. Obtain this from the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST or CLICKUP\_CLICK\_UP\_SEARCH\_DOCS action.                                                       |

***

### `Clickup Get Doc Page Listing`

Integration name: **CLICKUP\_GET\_DOC\_PAGE\_LISTING**

Tool to fetch the page listing structure of a ClickUp Doc by workspace\_id and doc\_id. Use when you need to discover the hierarchical structure of pages and subpages within a Doc without fetching the actual content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                                                                                                                                                                    |
| ---------------- | ------- | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `doc_id`         | string  |     ✅    | `"2kz0k9bp-1096"` | The unique ClickUp Doc ID in format '{alphanumeric\_prefix}-{number}' (e.g., '2kz0k9bp-1096'). To get a valid doc\_id, use CLICKUP\_CLICK\_UP\_SEARCH\_DOCS or extract from a ClickUp Doc URL. |
| `workspace_id`   | string  |     ✅    | `"90161390966"`   | The numeric workspace ID containing the document. Obtain this from the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST or CLICKUP\_CLICK\_UP\_SEARCH\_DOCS action.                              |
| `max_page_depth` | integer |          | `-1`              | The maximum depth to fetch pages/subpages. A value less than 0 does not limit the depth. Defaults to -1 (unlimited depth).                                                                     |

***

### `Clickup Get Doc Pages Public`

Integration name: **CLICKUP\_GET\_DOC\_PAGES\_PUBLIC**

Tool to fetch pages belonging to a ClickUp Doc. Use when you need to list all pages in a doc with their content and structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                                                                                                                                                            |
| ---------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `doc_id`         | string  |     ✅    | `"2kz0k9bp-1096"` | The ID of the doc in format '{alphanumeric\_prefix}-{number}' (e.g., '2kz0k9bp-1096'). To get a valid doc\_id, use CLICKUP\_CLICK\_UP\_SEARCH\_DOCS or extract from a ClickUp Doc URL. |
| `workspace_id`   | string  |     ✅    | `"90161390966"`   | The ID of the Workspace. Obtain this from the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST or CLICKUP\_CLICK\_UP\_SEARCH\_DOCS action.                                               |
| `content_format` | string  |          | —                 | Content format options for page content.                                                                                                                                               |
| `max_page_depth` | integer |          | —                 | The maximum depth to fetch pages/subpages. A value less than 0 does not limit the depth.                                                                                               |

***

### `Clickup Get Filtered Team Tasks`

Integration name: **CLICKUP\_GET\_FILTERED\_TEAM\_TASKS**

Retrieves a paginated list of tasks (up to 100 per page) from a specified workspace based on various filter criteria, respecting user access permissions. Unexpectedly missing tasks may indicate permission restrictions rather than filter issues. Task comments are not included; use CLICKUP\_GET\_TASK\_COMMENTS for complete context. No keyword/text search is supported; filter client-side on returned results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                     |
| ------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`                         | integer |          | —       | Page to fetch (starts at 0). Increment until the response's `last_page` field is true or the returned tasks list is empty to avoid silently missing tasks.                                                                                                                                                                                                                                                      |
| `tags`                         | array   |          | —       | Filter by tag names.                                                                                                                                                                                                                                                                                                                                                                                            |
| `parent`                       | string  |          | —       | Filter by parent task ID to retrieve its subtasks.                                                                                                                                                                                                                                                                                                                                                              |
| `reverse`                      | boolean |          | —       | If true, tasks are displayed in reverse order.                                                                                                                                                                                                                                                                                                                                                                  |
| `team_Id`                      | string  |     ✅    | —       | The Workspace ID (called 'team\_id' in ClickUp API v2). This is a numeric string. To find your Workspace ID, use the 'Get Authorized Teams (Workspaces)' endpoint or check Settings > Workspace Settings in the ClickUp UI.                                                                                                                                                                                     |
| `team_id`                      | string  |          | —       | Team ID, required if `custom_task_ids` is true, for custom task ID context. Distinct from the required `team_Id` path parameter (Workspace ID); do not confuse these — this optional numeric string is only used for custom task ID resolution. Example: '9001'.                                                                                                                                                |
| `list_ids`                     | array   |          | —       | Filter by List IDs. Must be numeric IDs (e.g., '123456789'). You can get numeric List IDs from the Get Lists endpoint.                                                                                                                                                                                                                                                                                          |
| `order_by`                     | string  |          | —       | Order tasks by this field. Default: `created`.                                                                                                                                                                                                                                                                                                                                                                  |
| `statuses`                     | array   |          | —       | Filter by task statuses (e.g., 'to do', 'in progress'). Values must exactly match workspace-configured status strings; mismatches silently return empty results.                                                                                                                                                                                                                                                |
| `subtasks`                     | boolean |          | —       | If true, include subtasks. Excluded by default.                                                                                                                                                                                                                                                                                                                                                                 |
| `assignees`                    | array   |          | —       | Filter by assignee User IDs. Must be numeric IDs (e.g., '123456789'). You can get numeric User IDs from endpoints like Get List Members or Get Task Members.                                                                                                                                                                                                                                                    |
| `space_ids`                    | array   |          | —       | Filter by Space IDs. Must be numeric IDs (e.g., '123456789'). You can get numeric Space IDs from the Get Spaces endpoint.                                                                                                                                                                                                                                                                                       |
| `due_date_gt`                  | integer |          | —       | Filter by due date greater than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                             |
| `due_date_lt`                  | integer |          | —       | Filter by due date less than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                                |
| `project_ids`                  | array   |          | —       | Filter by Folder (Project) IDs. Must be numeric IDs (e.g., '123456789'). You can get numeric Folder IDs from the Get Folders endpoint.                                                                                                                                                                                                                                                                          |
| `custom_items`                 | array   |          | —       | Filter by custom item types (e.g., 0 for tasks, 1 for Milestones, other numbers for custom types defined in Workspace).                                                                                                                                                                                                                                                                                         |
| `date_done_gt`                 | integer |          | —       | Filter by completion date greater than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                      |
| `date_done_lt`                 | integer |          | —       | Filter by completion date less than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                         |
| `custom_fields`                | array   |          | —       | Filter by custom fields. Each string in the list is a JSON object defining a single filter condition. Example for one string in the list: '''{"field\_id": "unique\_field\_id", "operator": "=", "value": "desired\_value"}'''. Incorrect `field_id` values or unsupported operator strings produce 400 errors or silently empty results; retrieve valid `field_id`s from workspace custom field configuration. |
| `include_closed`               | boolean |          | —       | If true, include closed tasks. Excluded by default.                                                                                                                                                                                                                                                                                                                                                             |
| `custom_task_ids`              | boolean |          | —       | Set to true to use custom task IDs in filters instead of global task IDs. Requires `team_id` for context.                                                                                                                                                                                                                                                                                                       |
| `date_created_gt`              | integer |          | —       | Filter by creation date greater than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                        |
| `date_created_lt`              | integer |          | —       | Filter by creation date less than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                           |
| `date_updated_gt`              | integer |          | —       | Filter by update date greater than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                          |
| `date_updated_lt`              | integer |          | —       | Filter by update date less than this Unix timestamp (milliseconds).                                                                                                                                                                                                                                                                                                                                             |
| `include_markdown_description` | boolean |          | —       | If true, return task descriptions in Markdown format.                                                                                                                                                                                                                                                                                                                                                           |

***

### `Clickup Get Folder`

Integration name: **CLICKUP\_GET\_FOLDER**

Retrieves detailed information about a specific folder in ClickUp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example       | Description                          |
| ----------- | ------ | :------: | ------------- | ------------------------------------ |
| `folder_id` | string |     ✅    | `"123456789"` | The unique identifier of the folder. |

***

### `Clickup Get Folder Available Fields`

Integration name: **CLICKUP\_GET\_FOLDER\_AVAILABLE\_FIELDS**

Tool to view custom fields available in a ClickUp folder. Use to discover what custom fields can be used when working with tasks in this folder. Only returns folder-level custom fields, not list-level fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example         | Description                                                    |
| ----------- | ------ | :------: | --------------- | -------------------------------------------------------------- |
| `folder_id` | string |     ✅    | `"90167874075"` | The ID of the folder to retrieve available custom fields from. |

***

### `Clickup Get Folderless Lists`

Integration name: **CLICKUP\_GET\_FOLDERLESS\_LISTS**

Retrieves all Lists within a specified Space that are not located in any Folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                                                                        |
| ---------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------ |
| `archived` | boolean |          | —           | Filter by archived status. Set to `true` to retrieve archived Lists, `false` or omit to retrieve unarchived Lists. |
| `space_id` | string  |     ✅    | `"1234567"` | The ID of the Space from which to retrieve folderless Lists.                                                       |

***

### `Clickup Get Folders`

Integration name: **CLICKUP\_GET\_FOLDERS**

Retrieves Folders within a specified ClickUp Space, ensuring `space_id` is valid, with an option to filter by archived status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                                                          |
| ---------- | ------- | :------: | ----------- | ---------------------------------------------------------------------------------------------------- |
| `archived` | boolean |          | `"true"`    | Filter Folders by archived status. `True` for archived, `False` for unarchived. Omit to return both. |
| `space_id` | string  |     ✅    | `"1234567"` | The unique numeric identifier of the Space from which to retrieve Folders.                           |

***

### `Clickup Get Folder Views`

Integration name: **CLICKUP\_GET\_FOLDER\_VIEWS**

Retrieves all configured views (like List, Board, Calendar) for a specified, existing Folder in ClickUp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example        | Description       |
| ----------- | ------- | :------: | -------------- | ----------------- |
| `folder_id` | integer |     ✅    | `"9003005107"` | ID of the Folder. |

***

### `Clickup Get Goal`

Integration name: **CLICKUP\_GET\_GOAL**

Retrieves detailed information for an existing ClickUp Goal, specified by its unique `goal_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                         | Description                                           |
| --------- | ------ | :------: | ------------------------------- | ----------------------------------------------------- |
| `goal_id` | string |     ✅    | `"900e-462d-a849-4a216b06d930"` | The unique identifier (UUID) of the Goal to retrieve. |

***

### `Clickup Get Goals`

Integration name: **CLICKUP\_GET\_GOALS**

Retrieves goals for a specified ClickUp Workspace (Team); the `team_id` must be valid and accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example    | Description                                                                          |
| ------------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------ |
| `team_id`           | string  |     ✅    | `"123456"` | The unique numerical identifier of the Workspace (Team) for which to retrieve goals. |
| `include_completed` | boolean |          | `true`     | If true, include completed goals in the response.                                    |

***

### `Clickup Get Guest`

Integration name: **CLICKUP\_GET\_GUEST**

Call this to retrieve detailed information for a specific guest within a Team (Workspace), ensuring the `guest_id` is valid for the given `team_id`; this action requires the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example    | Description                                                                |
| ---------- | ------ | :------: | ---------- | -------------------------------------------------------------------------- |
| `team_id`  | string |     ✅    | `"123456"` | The unique identifier for the Team (Workspace) to which the guest belongs. |
| `guest_id` | string |     ✅    | `"987654"` | The unique identifier for the guest whose information is to be retrieved.  |

***

### `Clickup Get List`

Integration name: **CLICKUP\_GET\_LIST**

Retrieves detailed information for an existing List in ClickUp, identified by its unique `list_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                                                                                                                                                                                |
| --------- | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id` | string |     ✅    | `"12345678"` | The unique identifier for the List to retrieve. This ID can be found by right-clicking a List in the ClickUp sidebar, selecting 'Copy link', and the ID is the last part of the URL after '/l/' or '/li/'. |

***

### `Clickup Get List Comments`

Integration name: **CLICKUP\_GET\_LIST\_COMMENTS**

Retrieves comments for a specific ClickUp List, supporting pagination using `start` (timestamp) and `start_id` (comment ID) to fetch earlier comments; omits them for the latest 25.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example           | Description                                                         |
| ---------- | ------- | :------: | ----------------- | ------------------------------------------------------------------- |
| `start`    | integer |          | `"1609459200000"` | Unix timestamp (milliseconds) of a comment's creation date.         |
| `list_id`  | string  |     ✅    | `"1810"`          | The unique identifier for the list from which to retrieve comments. |
| `start_id` | string  |          | `"abc123xyz789"`  | ID of a specific comment.                                           |

***

### `Clickup Get List Members`

Integration name: **CLICKUP\_GET\_LIST\_MEMBERS**

Retrieves all members of a specific, existing ClickUp List by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                                                                 |
| --------- | ------ | :------: | ------------- | ----------------------------------------------------------------------------------------------------------- |
| `list_id` | string |     ✅    | `"123456789"` | Unique identifier of the ClickUp List. Found by extracting the numerical ID from the List's URL in ClickUp. |

***

### `Clickup Get Lists`

Integration name: **CLICKUP\_GET\_LISTS**

Retrieves all lists within a specified, existing ClickUp folder, optionally filtering by archived status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example        | Description                                                                                                          |
| ----------- | ------- | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------- |
| `archived`  | boolean |          | `"true"`       | Filter lists by archived status. If `true`, returns archived lists; if `false` or omitted, returns unarchived lists. |
| `folder_id` | string  |     ✅    | `"1800000000"` | The unique identifier of the Folder from which to retrieve lists.                                                    |

***

### `Clickup Get List Views`

Integration name: **CLICKUP\_GET\_LIST\_VIEWS**

Retrieves all task and page views for a specified and accessible ClickUp List.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                   |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `list_id` | string |     ✅    | `"123"` | The ID of the List for which to retrieve views. This is the numeric ID of the list, often found at the end of the list's URL. |

***

### `Clickup Get Running Time Entry`

Integration name: **CLICKUP\_GET\_RUNNING\_TIME\_ENTRY**

Retrieves the currently active time entry for a user in a Workspace; a negative 'duration' in its data indicates it's running, and the response may be empty if no entry is active.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example    | Description                                                                                    |
| ---------- | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------- |
| `team_id`  | integer |     ✅    | `"18357"`  | Unique identifier for the Workspace (Team).                                                    |
| `assignee` | integer |          | `"556789"` | Identifier of the user for the time entry; defaults to the authenticated user if not provided. |

***

### `Clickup Get Shared Hierarchy`

Integration name: **CLICKUP\_GET\_SHARED\_HIERARCHY**

Retrieves the hierarchy of tasks, Lists, and Folders shared with the authenticated user within an existing ClickUp Team (Workspace), identified by its `team_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                  |
| --------- | ------ | :------: | ----------- | -------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"1234567"` | Unique numerical ID of the ClickUp Team (Workspace) for which to fetch the shared hierarchy. |

***

### `Clickup Get Space`

Integration name: **CLICKUP\_GET\_SPACE**

Retrieves detailed information for an existing Space in a ClickUp Workspace, identified by its unique space\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                         |
| ---------- | ------ | :------: | ----------- | ----------------------------------- |
| `space_id` | string |     ✅    | `"1234567"` | Unique ID of the Space to retrieve. |

***

### `Clickup Get Space Available Fields`

Integration name: **CLICKUP\_GET\_SPACE\_AVAILABLE\_FIELDS**

Retrieves all custom fields available in a ClickUp Space, identified by space\_id. Returns Space-level custom fields only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example       | Description                                                                               |
| ---------- | ------- | :------: | ------------- | ----------------------------------------------------------------------------------------- |
| `space_id` | integer |     ✅    | `90165816748` | The unique numerical identifier of the Space for which custom fields are to be retrieved. |

***

### `Clickup Get Spaces`

Integration name: **CLICKUP\_GET\_SPACES**

Retrieves Spaces for a Team ID; member information for private Spaces is returned only if the authenticated user is a member.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                                                   |
| ---------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------------------- |
| `team_id`  | string  |     ✅    | `"1234567"` | Identifier for the Team (Workspace). Obtain valid workspace IDs using the GET /team endpoint. |
| `archived` | boolean |          | `"true"`    | Filter by archived status (`true` for archived, `false` for active); API default if omitted.  |

***

### `Clickup Get Space Tags`

Integration name: **CLICKUP\_GET\_SPACE\_TAGS**

Retrieves all tags for tasks within a specified ClickUp Space, requiring a valid `space_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                      |
| ---------- | ------ | :------: | ------------ | -------------------------------------------------------------------------------- |
| `space_id` | string |     ✅    | `"12345678"` | The unique numerical identifier of the Space for which tags are to be retrieved. |

***

### `Clickup Get Space Views`

Integration name: **CLICKUP\_GET\_SPACE\_VIEWS**

Retrieves all task and page views for a specified Space ID in ClickUp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example    | Description                             |
| ---------- | ------ | :------: | ---------- | --------------------------------------- |
| `space_id` | string |     ✅    | `"123456"` | ID of the Space to retrieve views from. |

***

### `Clickup Get Subtypes`

Integration name: **CLICKUP\_GET\_SUBTYPES**

Tool to retrieve post subtype IDs (Announcement, Discussion, Idea, Update) for a ClickUp Workspace. Use when you need subtype IDs to send messages with type: post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example       | Description                                                                                                                                  |
| -------------- | ------- | :------: | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `comment_type` | string  |     ✅    | —             | The type of comment to retrieve subtypes for. Use 'post' to get subtype IDs for Announcement, Discussion, Idea, and Update post types.       |
| `workspace_id` | integer |     ✅    | `90161390966` | ID of the logged-in user's Workspace. Obtain this from the get\_authorized\_teams\_workspaces action or similar workspace listing endpoints. |

***

### `Clickup Get Task`

Integration name: **CLICKUP\_GET\_TASK**

Retrieves comprehensive details for a ClickUp task by its ID, supporting standard or custom task IDs (requires `team_id` for custom IDs).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example  | Description                                                                                                                                                                                                     |
| ------------------------------ | ------- | :------: | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`                      | string  |     ✅    | `"9hz"`  | The unique identifier of the task to retrieve. This can be the standard ClickUp task ID or a custom task ID if `custom_task_ids` is set to `true` (in which case `team_id` is also required).                   |
| `team_id`                      | integer |          | `"123"`  | The ID of the team. This parameter is required and used only when `custom_task_ids` is set to `true` to identify the custom task ID within that specific team. For example: `custom_task_ids=true&team_id=123`. |
| `custom_task_ids`              | boolean |          | `"true"` | Set to `true` to indicate that the `task_id` provided is a custom task ID. If `true`, `team_id` must also be provided. If omitted or `false` (default), `task_id` is treated as a standard task ID.             |
| `include_subtasks`             | boolean |          | `"true"` | Set to `true` to include subtasks in the task details response. If omitted or `false` (default), subtasks are not included.                                                                                     |
| `include_markdown_description` | boolean |          | `"true"` | Set to `true` to return the task description in Markdown format. If omitted or `false` (default), the description is returned in plain text. For example: `?include_markdown_description=true`.                 |

***

### `Clickup Get Task Comments`

Integration name: **CLICKUP\_GET\_TASK\_COMMENTS**

Retrieves up to 25 comments for a specified task, supporting pagination using `start` and `start_id` to fetch older comments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example             | Description                                                                                                         |
| ----------------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `start`           | integer |          | `"1678886400000"`   | Unix timestamp (in milliseconds) of the oldest visible comment, used with `start_id` for paginating older comments. |
| `task_id`         | string  |     ✅    | `"task123"`         | Unique identifier of the task. Can be a standard or custom task ID (if `custom_task_ids` is true).                  |
| `team_id`         | string  |          | `"123456"`          | Team ID, required if `custom_task_ids` is true.                                                                     |
| `start_id`        | string  |          | `"abc-123-xyz-789"` | ID of the oldest visible comment, used with `start` for paginating older comments.                                  |
| `custom_task_ids` | boolean |          | `"true"`            | Indicates if `task_id` is a custom task ID; if true, `team_id` is required.                                         |

***

### `Clickup Get Task Members`

Integration name: **CLICKUP\_GET\_TASK\_MEMBERS**

Retrieves users with explicit access (directly assigned or shared) to a specific existing task, excluding users with inherited permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                      |
| --------- | ------ | :------: | ---------------- | ---------------------------------------------------------------- |
| `task_id` | string |     ✅    | `"900900202020"` | The unique identifier of the task for which to retrieve members. |

***

### `Clickup Get Tasks`

Integration name: **CLICKUP\_GET\_TASKS**

Retrieves tasks from a specified ClickUp list; only tasks whose home is the given list\_id are returned. Closed and archived tasks are excluded by default. Key task attributes may appear only in the response `custom_fields` array, not top-level fields. Fields like `space`, `folder`, `list`, and `custom_type` may be absent; apply null checks. High-volume paginated calls may return HTTP 429; honor the `Retry-After` header.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                                                                                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------------ | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`                         | integer |          | `0`                                                                                                                                                    | The page number of results to fetch, starting at 0. Each page can contain up to 100 tasks. Iterate pages until the response `last_page` flag is true or the returned tasks list is empty to avoid silently missing tasks.                                                                                                                                                                                                                           |
| `tags`                         | array   |          | `["tag1","this tag"]`                                                                                                                                  | Filter tasks by a list of tag names. Use URL encoding for tags with spaces (e.g., 'this%20tag').                                                                                                                                                                                                                                                                                                                                                    |
| `list_id`                      | string  |     ✅    | `"123456789"`                                                                                                                                          | The ID of the list to retrieve tasks from. To find the list\_id, copy the link to the list from the ClickUp UI; the list\_id is the number following '/li' in the URL. Pass as a numeric string (e.g., '123456789').                                                                                                                                                                                                                                |
| `reverse`                      | boolean |          | `true`                                                                                                                                                 | Display tasks in reverse order based on the 'order\_by' field.                                                                                                                                                                                                                                                                                                                                                                                      |
| `archived`                     | boolean |          | —                                                                                                                                                      | Include or exclude archived tasks.                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `order_by`                     | string  |          | `"id"`                                                                                                                                                 | Field to order tasks by. Valid options are: 'id', 'created', 'updated', and 'due\_date'.                                                                                                                                                                                                                                                                                                                                                            |
| `statuses`                     | array   |          | `["to do","in progress"]`                                                                                                                              | Filter tasks by their status. Pass a list of status strings. Use URL encoding for statuses with spaces (e.g., 'to%20do'). To include closed tasks, use the `include_closed` parameter. Values must match workspace configuration exactly (case-sensitive, including spacing); mismatches return empty results silently.                                                                                                                             |
| `subtasks`                     | boolean |          | `true`                                                                                                                                                 | Include subtasks in the results.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `assignees`                    | array   |          | `["212519251","987654321"]`                                                                                                                            | Filter tasks by assignee user IDs. Accepts a single ID or a list of IDs. IDs can be numeric (e.g., 212519251) or strings (e.g., '212519251').                                                                                                                                                                                                                                                                                                       |
| `due_date_gt`                  | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a due date greater than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                              |
| `due_date_lt`                  | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a due date less than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                                 |
| `custom_items`                 | array   |          | —                                                                                                                                                      | Filter by custom task types. For example: `?custom_items[]=0&custom_items[]=1300`. Including `0` returns tasks. Including `1` returns Milestones. Including any other number returns the custom task type as defined in your Workspace.                                                                                                                                                                                                             |
| `date_done_gt`                 | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a completion date greater than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                       |
| `date_done_lt`                 | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a completion date less than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                          |
| `custom_fields`                | array   |          | `["{\"field_id\":\"abcdefghi12345678\",\"operator\":\"=\",\"value\":\"1234\"}","{\"field_id\":\"jklmnop123456\",\"operator\":\"<\",\"value\":\"5\"}"]` | Filter tasks by custom field values. Provide a list of JSON strings, each defining a custom field filter. Example for a single filter: '\[{"field\_id":"field\_id\_1","operator":"=","value":"field\_value\_1"}]'. For multiple filters: '\[{"field\_id":"field\_id\_1","operator":"=","value":"field\_value\_1"}, {"field\_id":"field\_id\_2","operator":"<","value":5}]'. See ClickUp API documentation for more on filtering with Custom Fields. |
| `include_closed`               | boolean |          | `true`                                                                                                                                                 | Include tasks with a closed status. Closed tasks are excluded by default; set to true to include them.                                                                                                                                                                                                                                                                                                                                              |
| `date_created_gt`              | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a creation date greater than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                         |
| `date_created_lt`              | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with a creation date less than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                            |
| `date_updated_gt`              | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with an update date greater than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                          |
| `date_updated_lt`              | integer |          | `1609459200000`                                                                                                                                        | Filter tasks with an update date less than the provided Unix timestamp in milliseconds.                                                                                                                                                                                                                                                                                                                                                             |
| `include_markdown_description` | boolean |          | `true`                                                                                                                                                 | Return task descriptions in Markdown format. Use the response `text_content` field instead when plain text is needed.                                                                                                                                                                                                                                                                                                                               |

***

### `Clickup Get Task Templates`

Integration name: **CLICKUP\_GET\_TASK\_TEMPLATES**

Retrieves task templates for a specified Workspace (Team ID), supporting pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example    | Description                                                                |
| --------- | ------- | :------: | ---------- | -------------------------------------------------------------------------- |
| `page`    | integer |     ✅    | `"0"`      | Page number for paginating through templates (starts from 0).              |
| `team_id` | string  |     ✅    | `"123456"` | Unique identifier of the Workspace (Team) to retrieve task templates from. |

***

### `Clickup Get Task Time In Status`

Integration name: **CLICKUP\_GET\_TASK\_TIME\_IN\_STATUS**

Retrieves the duration a task has spent in each status, provided the 'Total time in Status' ClickApp is enabled for the Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                                                                                   |
| ----------------- | ------- | :------: | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"abc123xyz"` | The unique identifier of the task. This can be the standard task ID or a custom task ID if `custom_task_ids` is true.                                                         |
| `team_id`         | integer |          | `1234567`     | The ID of the team (Workspace) to which the task belongs. This is required only when `custom_task_ids` is set to `true`. For example: `custom_task_ids=true&team_id=1234567`. |
| `custom_task_ids` | boolean |          | `true`        | If set to `true`, the `task_id` parameter will be interpreted as a custom task ID. When using custom task IDs, the `team_id` must also be provided.                           |

***

### `Clickup Get Team Available Fields`

Integration name: **CLICKUP\_GET\_TEAM\_AVAILABLE\_FIELDS**

Retrieves all custom fields available in a ClickUp Workspace (Team), identified by team\_id. Returns Workspace-level custom fields only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example       | Description                                                                                          |
| --------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------- |
| `team_id` | integer |     ✅    | `90161390966` | The unique numerical identifier of the Workspace (Team) for which custom fields are to be retrieved. |

***

### `Clickup Get Teams`

Integration name: **CLICKUP\_GET\_TEAMS**

Retrieves user groups (Teams) from a ClickUp Workspace, typically requiring `team_id` (Workspace ID), with an option to filter by `group_ids`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                       | Description                                                                                                                                                                                                             |
| ----------- | ------- | :------: | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`   | integer |     ✅    | `"90161390966"`                                                               | ID of the ClickUp Workspace (Team ID) from which to retrieve user groups. Must be a positive integer greater than 0. Use the CLICKUP\_AUTHORIZATION\_GET\_WORK\_SPACE\_LIST action to retrieve available workspace IDs. |
| `group_ids` | string  |          | `"03g1f034-71e4-4f10-8ced-987514848f02,a9b8c7d6-e5f4-g3h2-i1j0-k9l8m7n6o5p4"` | Comma-separated string of user group IDs to filter results; if omitted, all user groups in the Workspace are returned.                                                                                                  |

***

### `Clickup Get Threaded Comments`

Integration name: **CLICKUP\_GET\_THREADED\_COMMENTS**

Retrieves threaded replies to a parent comment. Use when you need to fetch conversation threads under a specific comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example            | Description                                                      |
| ------------ | ------ | :------: | ------------------ | ---------------------------------------------------------------- |
| `comment_id` | string |     ✅    | `"90160165321160"` | Unique identifier of the parent comment to retrieve replies for. |

***

### `Clickup Get Time Entries In Date Range`

Integration name: **CLICKUP\_GET\_TIME\_ENTRIES\_IN\_DATE\_RANGE**

Retrieves time entries for a specified Team (Workspace ID) within a date range (defaults to the last 30 days for the authenticated user if dates are omitted); active timers are indicated by negative durations in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example           | Description                                                                                                                                                                                                                   |
| ------------------------ | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id`                | string  |          | `"123"`           | Filter time entries to include only those associated with tasks in a specific List ID.                                                                                                                                        |
| `task_id`                | string  |          | `"abc123xyz"`     | Filter time entries to include only those associated with a specific task ID. Use with `custom_task_ids` if referring to a custom ID.                                                                                         |
| `team_Id`                | string  |     ✅    | `"90161390966"`   | The Workspace ID (also called Team ID in ClickUp API) for which to retrieve time entries. This goes in the URL path.                                                                                                          |
| `team_id`                | string  |          | `"123"`           | The ID of the Team (Workspace) to use for context when `custom_task_ids` is `true`. This helps resolve custom task IDs. Example: `custom_task_ids=true&team_id=123`.                                                          |
| `assignee`               | string  |          | `"1234"`          | Filter time entries by user ID(s). For multiple assignees, provide a comma-separated string of user IDs. Example: `1234,9876`. Note: Access to other users' time entries typically requires Workspace Owner/Admin privileges. |
| `end_date`               | integer |          | `"1609545600000"` | The end date of the date range for filtering time entries, specified as a Unix timestamp in milliseconds. If omitted, defaults to the current date.                                                                           |
| `space_id`               | string  |          | `"789"`           | Filter time entries to include only those associated with tasks in a specific Space ID.                                                                                                                                       |
| `folder_id`              | string  |          | `"456"`           | Filter time entries to include only those associated with tasks in a specific Folder ID.                                                                                                                                      |
| `start_date`             | integer |          | `"1609459200000"` | The start date of the date range for filtering time entries, specified as a Unix timestamp in milliseconds. If omitted, defaults to 30 days prior to the current date.                                                        |
| `custom_task_ids`        | boolean |          | —                 | Set to `true` if the `task_id` parameter refers to a custom task ID. If `true`, the `team_id` query parameter must also be provided for context.                                                                              |
| `include_task_tags`      | boolean |          | —                 | If true, includes task tags in the response for time entries associated with tasks.                                                                                                                                           |
| `include_location_names` | boolean |          | —                 | If true, includes the names of the List, Folder, and Space in the response, along with their respective IDs (`list_id`, `folder_id`, `space_id`).                                                                             |

***

### `Clickup Get Time Entry`

Integration name: **CLICKUP\_GET\_TIME\_ENTRY**

Fetches a specific time entry by its ID for a given team; a negative duration in the response indicates an active timer.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                  | Description                                                                                                  |
| ------------------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `team_id`                | integer |     ✅    | `12345678`                               | Unique identifier for the Team (Workspace).                                                                  |
| `timer_id`               | string  |     ✅    | `"24456f92-1d77-41cc-a1b3-90260889ff94"` | Unique identifier of the time entry. Can be obtained from the 'Get Time Entries Within a Date Range' action. |
| `include__task`          | boolean |          | —                                        | If true and the time entry is associated with a task, includes task details in the response.                 |
| `include_location_names` | boolean |          | —                                        | If true, includes names of the List, Folder, and Space associated with the time entry, alongside their IDs.  |

***

### `Clickup Get Time Entry History`

Integration name: **CLICKUP\_GET\_TIME\_ENTRY\_HISTORY**

Retrieves the modification history for an existing time entry within a specific ClickUp Team (Workspace).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                           |
| ---------- | ------ | :------: | ----------------- | --------------------------------------------------------------------- |
| `team_id`  | string |     ✅    | `"1234567"`       | Unique identifier for the Team (Workspace) containing the time entry. |
| `timer_id` | string |     ✅    | `"777_abc123xyz"` | Unique identifier of the time entry for which to retrieve history.    |

***

### `Clickup Get Tracked Time`

Integration name: **CLICKUP\_GET\_TRACKED\_TIME**

Retrieves tracked time for a task using a legacy endpoint; prefer newer Time Tracking API endpoints for managing time entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example       | Description                                                                                                                                                |
| ----------------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"abc123efg"` | The ID of the task for which to retrieve tracked time. This can be the standard task ID or a custom task ID if `custom_task_ids` is set to `true`.         |
| `team_id`         | string  |          | `"1234567"`   | The ID of the team. This is required and used only when the `custom_task_ids` parameter is set to `true`. For example: `custom_task_ids=true&team_id=123`. |
| `custom_task_ids` | boolean |          | `true`        | Set to `true` if the `task_id` provided is a custom task ID. If `true`, the `team_id` must also be provided.                                               |

***

### `Clickup Get User`

Integration name: **CLICKUP\_GET\_USER**

Retrieves detailed information for a specific user within a ClickUp Workspace (Team), available only for Workspaces on the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                       |
| --------- | ------ | :------: | ------------ | ------------------------------------------------- |
| `team_id` | string |     ✅    | `"18251903"` | ID of the Team (Workspace) containing the user.   |
| `user_id` | string |     ✅    | `"5539995"`  | ID of the user whose details are to be retrieved. |

***

### `Clickup Get View`

Integration name: **CLICKUP\_GET\_VIEW**

Fetches details for a specific ClickUp view, identified by its `view_id`, which must exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                             |
| --------- | ------ | :------: | --------------- | ------------------------------------------------------- |
| `view_id` | string |     ✅    | `"view_abc123"` | The unique identifier for the ClickUp view to retrieve. |

***

### `Clickup Get View Tasks`

Integration name: **CLICKUP\_GET\_VIEW\_TASKS**

Retrieves all tasks visible in a specified ClickUp view, respecting its applied filters, sorting, and grouping.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |     ✅    | `0`     | The page number of the results to retrieve. Used for pagination if the number of tasks exceeds the limit per page. Starts at 0.                                                                                                                                                                                                                                                                    |
| `view_id` | string  |     ✅    | `"105"` | The unique identifier for a task view from which to retrieve tasks. Only task views are supported: list, board, calendar, table, timeline, workload, activity, map, or gantt. Page views (such as Docs, Whiteboards, and Chat) are not supported and will return an error. To find valid task views, use the Get Space Views, Get Folder Views, or Get List Views actions and filter by view type. |

***

### `Clickup Get Webhooks`

Integration name: **CLICKUP\_GET\_WEBHOOKS**

Fetches webhooks for a Team (Workspace), returning only those created by the authenticated user via API, for a `team_id` they can access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | —       | Unique ID of the Team (Workspace) to retrieve webhooks for. Obtain valid workspace IDs using the 'get\_authorized\_teams\_workspaces' action. |

***

### `Clickup Get Workspace Everything Level Views`

Integration name: **CLICKUP\_GET\_WORKSPACE\_EVERYTHING\_LEVEL\_VIEWS**

Retrieves all task and page views at the 'Everything Level' (a comprehensive overview of all tasks across all Spaces) for a specified ClickUp Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                                           |
| ---------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`  | integer |     ✅    | `18392` | Numeric ID of the Workspace (often referred to as Team ID) for which to retrieve Everything Level views.                              |
| `archived` | boolean |          | —       | Filter for archived views. Set to true to include only archived views, false to exclude archived views, or omit to include all views. |

***

### `Clickup Get Workspace Plan`

Integration name: **CLICKUP\_GET\_WORKSPACE\_PLAN**

Retrieves the details of the current subscription plan for a specified ClickUp Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                                       |
| --------- | ------ | :------: | -------------- | ----------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"9010065123"` | The unique identifier for the Workspace (formerly known as Team). |

***

### `Clickup Get Workspace Seats`

Integration name: **CLICKUP\_GET\_WORKSPACE\_SEATS**

Retrieves seat utilization (used, total, available for members/guests) for a ClickUp Workspace (Team) ID, which must be for an existing Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                         |
| --------- | ------ | :------: | ----------- | ----------------------------------- |
| `team_id` | string |     ✅    | `"1234567"` | Numeric ID of the Workspace (Team). |

***

### `Clickup Invite Guest To Workspace`

Integration name: **CLICKUP\_INVITE\_GUEST\_TO\_WORKSPACE**

Invites a guest by email to a ClickUp Workspace (Team) on an Enterprise Plan, setting initial permissions and optionally a custom role; further access configuration for specific items may require separate actions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example               | Description                                                                                                                                                                                                                |
| ------------------------ | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email`                  | string  |     ✅    | `"guest@example.com"` | Email address of the guest to invite to the Workspace.                                                                                                                                                                     |
| `team_id`                | string  |     ✅    | `"1234567"`           | Unique identifier for the Workspace (Team) to which the guest will be invited.                                                                                                                                             |
| `can_edit_tags`          | boolean |     ✅    | `true`                | If `true`, the guest has permission to edit tags.                                                                                                                                                                          |
| `custom_role_id`         | integer |          | `987`                 | Optional ID of a custom role to assign to the guest, for granular permission control beyond default guest permissions. Only available on Business Plus Plan (one custom role) or Enterprise Plan (unlimited custom roles). |
| `can_create_views`       | boolean |     ✅    | `true`                | If `true`, the guest has permission to create views.                                                                                                                                                                       |
| `can_see_time_spent`     | boolean |     ✅    | `true`                | If `true`, the guest has permission to see time spent on tasks.                                                                                                                                                            |
| `can_see_time_estimated` | boolean |     ✅    | `true`                | If `true`, the guest has permission to see time estimated for tasks.                                                                                                                                                       |

***

### `Clickup Invite User To Workspace`

Integration name: **CLICKUP\_INVITE\_USER\_TO\_WORKSPACE**

Invites a user via email to a ClickUp Workspace (Team), optionally granting admin rights or a custom role; requires an Enterprise Plan for the Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example              | Description                                                                                                  |
| ---------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------ |
| `admin`          | boolean |     ✅    | `true`               | Grant administrative privileges to the invited user.                                                         |
| `email`          | string  |     ✅    | `"user@example.com"` | Email address of the user to invite.                                                                         |
| `team_id`        | string  |     ✅    | `"1234567"`          | Unique identifier of the Workspace (Team) to which the user will be invited.                                 |
| `custom_role_id` | integer |          | —                    | Optional custom role ID to assign; if omitted and custom roles are enabled, the default member role is used. |

***

### `Clickup Move Task To Home List`

Integration name: **CLICKUP\_MOVE\_TASK\_TO\_HOME\_LIST**

Tool to move a task to a new home List using ClickUp Public API v3. Use when you need to change a task's home list (not just add to additional lists).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                          | Description                                                                                                                                                                                                                                       |
| ----------------------- | ------- | :------: | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id`               | string  |     ✅    | `"186000000"`                                                    | The destination list ID to move the task to. This will become the task's new home list.                                                                                                                                                           |
| `task_id`               | string  |     ✅    | `"abc123xyz"`                                                    | The task ID to move. Use actual task ID, not custom task ID.                                                                                                                                                                                      |
| `workspace_id`          | string  |     ✅    | `"123456"`                                                       | The workspace ID containing the task. Required for v3 endpoint.                                                                                                                                                                                   |
| `status_mappings`       | array   |          | `[{"source_status":"in_progress","destination_status":"doing"}]` | Array of status mapping objects to map the task's status from source list to destination list. Each object should contain 'source\_status' and 'destination\_status' keys. Required when the task's current status doesn't exist in the new list. |
| `move_custom_fields`    | boolean |          | `true`                                                           | If true, transfer all custom fields from the current list to the destination list. If false or omitted, custom fields are not moved.                                                                                                              |
| `custom_fields_to_move` | array   |          | `["field_abc123","field_xyz789"]`                                | List of specific custom field IDs to transfer when moving the task. Only applies when move\_custom\_fields is true. If omitted, all custom fields are moved when move\_custom\_fields is true.                                                    |

***

### `Clickup Remove Custom Field Value`

Integration name: **CLICKUP\_REMOVE\_CUSTOM\_FIELD\_VALUE**

Removes an existing value from a Custom Field on a specific task; this does not delete the Custom Field definition or its predefined options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                         | Description                                                                                                             |
| ----------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"standard_task_id_1"`          | Identifier of the task. If `custom_task_ids` is true, this is the custom task ID; otherwise, it's the standard task ID. |
| `team_id`         | integer |          | `"123"`                         | Numeric ID of the team, required only if `custom_task_ids` is true to identify the task by its custom ID.               |
| `field_id`        | string  |     ✅    | `"b8a8-48d8-a0c6-b4200788a683"` | UUID of the Custom Field whose value will be removed from the task.                                                     |
| `custom_task_ids` | boolean |          | `"true"`                        | If true, `task_id` is a custom task ID, and `team_id` must also be provided.                                            |

***

### `Clickup Remove Guest From Folder`

Integration name: **CLICKUP\_REMOVE\_GUEST\_FROM\_FOLDER**

Revokes a guest's access to a specific ClickUp Folder, optionally unsharing items explicitly shared with them within it; requires an Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example    | Description                                                                             |
| ---------------- | ------- | :------: | ---------- | --------------------------------------------------------------------------------------- |
| `guest_id`       | string  |     ✅    | `"987654"` | Unique identifier of the guest to remove from the Folder.                               |
| `folder_id`      | string  |     ✅    | `"123456"` | Unique identifier of the Folder from which to remove the guest.                         |
| `include_shared` | boolean |          | —          | If `true`, items explicitly shared with the guest within this Folder are also unshared. |

***

### `Clickup Remove Guest From List`

Integration name: **CLICKUP\_REMOVE\_GUEST\_FROM\_LIST**

Revokes a guest's access to a specific List, provided the guest currently has access to this List and the Workspace is on the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example      | Description                                                                                   |
| ---------------- | ------- | :------: | ------------ | --------------------------------------------------------------------------------------------- |
| `list_id`        | string  |     ✅    | `"18273645"` | The unique identifier of the List from which the guest will be removed.                       |
| `guest_id`       | string  |     ✅    | `"9012345"`  | The unique identifier of the guest to be removed from the List.                               |
| `include_shared` | boolean |          | `true`       | If `false`, may alter how items shared with the guest are handled or reported during removal. |

***

### `Clickup Remove Guest From Task`

Integration name: **CLICKUP\_REMOVE\_GUEST\_FROM\_TASK**

Revokes a guest's access to a specific task; only available for Workspaces on the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example   | Description                                                                                                                                                            |
| ----------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`         | string  |     ✅    | `"9hz"`   | The ID of the task from which the guest will be removed. This can be the standard task ID or a custom task ID if `custom_task_ids` is set to `true`.                   |
| `team_id`         | string  |          | `"123"`   | The ID of the team. This is required only when `custom_task_ids` is set to `true` and you are using a custom task ID. For example: `custom_task_ids=true&team_id=123`. |
| `guest_id`        | string  |     ✅    | `"12345"` | The numeric ID of the guest to be removed from the task.                                                                                                               |
| `include_shared`  | boolean |          | `"true"`  | Determines whether to include details of items shared with the guest. Set to `false` to exclude these details. Defaults to `true`.                                     |
| `custom_task_ids` | boolean |          | `"true"`  | Set to `true` if you are using a custom task ID for the `task_id` parameter. If `true`, `team_id` must also be provided.                                               |

***

### `Clickup Remove Guest From Workspace`

Integration name: **CLICKUP\_REMOVE\_GUEST\_FROM\_WORKSPACE**

Permanently removes a guest from a specified Workspace, revoking all their access; this destructive operation requires the Workspace to be on the ClickUp Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                                                                                                                                                                                 |
| ---------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`  | string |     ✅    | `"1234567"` | Unique numerical identifier for the Workspace (often referred to as 'Team' in the ClickUp API) from which the guest is to be removed. This ID specifies the scope of the removal operation. |
| `guest_id` | string |     ✅    | `"9876543"` | Unique numerical identifier of the guest user whose access to the specified Workspace will be revoked. This ID targets the specific guest for removal.                                      |

***

### `Clickup Remove Tag From Task`

Integration name: **CLICKUP\_REMOVE\_TAG\_FROM\_TASK**

Removes a tag from a specified task by disassociating it (does not delete the tag from Workspace), succeeding even if the tag is not on the task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `task_id`         | string  |     ✅    | `"task_abc_123"` | The ID of the task from which the tag will be removed. This can be the standard task ID or a custom task ID if `custom_task_ids` is set to `true`.     |
| `team_id`         | string  |          | `"123456"`       | The Workspace (Team) ID associated with the task.                                                                                                      |
| `tag_name`        | string  |     ✅    | `"urgent"`       | The name of the tag to remove from the task. Tag names are case-sensitive.                                                                             |
| `custom_task_ids` | boolean |          | —                | Set to `true` if you are using a custom task ID (instead of the default task ID) to identify the task. If `true`, the `team_id` must also be provided. |

***

### `Clickup Remove Tags From Time Entries`

Integration name: **CLICKUP\_REMOVE\_TAGS\_FROM\_TIME\_ENTRIES**

Removes tags from specified time entries in a team, without deleting the tags from the workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                        | Description                                                                          |
| ---------------- | ------ | :------: | ---------------------------------------------- | ------------------------------------------------------------------------------------ |
| `tags`           | array  |     ✅    | `"[{'name': 'Urgent'}]"`                       | List of tags to remove, typically identified by name (e.g., `{'name': 'tag_name'}`). |
| `team_id`        | string |     ✅    | `"123456"`                                     | The unique identifier for the Team (Workspace) that owns the time entries.           |
| `time_entry_ids` | array  |     ✅    | `"['time_entry_id_abc', 'time_entry_id_xyz']"` | List of time entry IDs from which to remove tags.                                    |

***

### `Clickup Remove Task From List`

Integration name: **CLICKUP\_REMOVE\_TASK\_FROM\_LIST**

Removes a task from an extra list (not its home list); the 'Tasks in Multiple Lists' ClickApp must be enabled.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                                                                                              |
| --------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `list_id` | string |     ✅    | `"123"`       | Unique numerical identifier of the list from which the task will be removed. This must be an extra list for the task, not its home list. |
| `task_id` | string |     ✅    | `"abc123xyz"` | Unique identifier of the task to be removed from the specified list.                                                                     |

***

### `Clickup Remove User From Workspace`

Integration name: **CLICKUP\_REMOVE\_USER\_FROM\_WORKSPACE**

Deactivates a user from a specified ClickUp Workspace, revoking their access (user can be reactivated later); requires the Workspace to be on an Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                    |
| --------- | ------ | :------: | ----------- | ---------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"1830000"` | The unique numeric identifier of the Workspace (Team) from which the user will be deactivated. |
| `user_id` | string |     ✅    | `"550"`     | The unique numeric identifier of the user to be deactivated from the Workspace.                |

***

### `Clickup Search Docs`

Integration name: **CLICKUP\_SEARCH\_DOCS**

Tool to search and list Docs metadata in a ClickUp workspace. Use after confirming the workspace ID to quickly locate relevant meeting notes before fetching pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example         | Description                                       |
| -------------- | ------- | :------: | --------------- | ------------------------------------------------- |
| `limit`        | integer |          | —               | Maximum results per page. Default: 50, max: 100.  |
| `cursor`       | string  |          | —               | Cursor from previous response to fetch next page. |
| `workspace_id` | string  |     ✅    | `"90161390966"` | ID of the ClickUp Workspace to list Docs from.    |

***

### `Clickup Set Custom Field Value`

Integration name: **CLICKUP\_SET\_CUSTOM\_FIELD\_VALUE**

Sets or updates a Custom Field's value for a task; the new value (with type-dependent structure, e.g., `{"value": "text"}` or `{"value": 123, "value_options": {"currency_type":"USD"}}`) is provided in the JSON request body.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `value`           | —       |     ✅    | `"Hello World"`                          | The value to set for the Custom Field. Structure depends on field type: Text/Short Text: string (e.g., 'Hello'). Number/Currency/Emoji(Rating): number (e.g., 42). Checkbox: boolean (true/false). Dropdown: option UUID string from type\_config.options (e.g., '7a4e5845-8496-4b9f-9097-843b9c737692'). Date: Unix timestamp in milliseconds (e.g., 1645502400000). Email: valid email string. Phone: string with country code (e.g., '+1 123 456 7890'). URL: valid URL string. Labels: array of label UUIDs from type\_config (e.g., \['label\_id\_1', 'label\_id\_2']). Users/Tasks: object with 'add' and/or 'rem' arrays of IDs (e.g., {'add': \['id1'], 'rem': \['id2']}). Location: object with 'location' (lat/lng) and 'formatted\_address' (e.g., {'location': {'lat': -28.0, 'lng': 153.4}, 'formatted\_address': 'Gold Coast, Australia'}). Manual Progress: object with 'current' value (e.g., {'current': 50}). |
| `task_id`         | string  |     ✅    | `"abc123de"`                             | Task ID to update. Standard ID, or Custom Task ID if `custom_task_ids` is true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `team_id`         | string  |          | `"123"`                                  | Team ID, required if `custom_task_ids` is true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `field_id`        | string  |     ✅    | `"062f7a9a-5c92-4180-bb59-82a66947fed2"` | UUID of the Custom Field to update (must be in standard UUID format with hyphens, e.g., '0f079e26-feef-410d-8e8d-2a21a057ee5e'). Obtainable via 'Get Accessible Custom Fields' or 'Get Task' endpoints.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `value_options`   | object  |          | `{"time":true}`                          | Optional settings for certain field types. For Date fields: {'time': true} to display time in ClickUp UI. For Currency fields: {'currency\_type': 'USD'} to specify currency.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `custom_task_ids` | boolean |          | —                                        | If true, `task_id` is treated as a Custom Task ID, and `team_id` is required.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Clickup Start Time Entry`

Integration name: **CLICKUP\_START\_TIME\_ENTRY**

Starts a new time entry (timer) in the specified Team (Workspace), optionally associating it with a task, adding a description, setting billable status, or applying tags (tags feature requires Business Plan or higher).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                              | Description                                                                                                                                                                                     |
| ----------------- | ------- | :------: | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tid`             | string  |          | `"task_abc_123"`                                                                     | The ID of the task to associate with this time entry. If `custom_task_ids` is true, this should be the custom task ID.                                                                          |
| `tags`            | array   |          | `["[{\"name\": \"billed\", \"tag_bg\": \"#000000\"}]","[{\"name\": \"dev work\"}]"]` | Array of tag objects (each with "name", optionally "tag\_bg", "tag\_fg" for colors) to apply. This feature requires Business Plan or higher. E.g., `[{"name": "Urgent", "tag_bg": "#FF0000"}]`. |
| `team_Id`         | string  |     ✅    | `"123456"`                                                                           | The Workspace ID (also called Team ID in ClickUp API) for this time entry. This goes in the URL path.                                                                                           |
| `team_id`         | string  |          | `"123"`                                                                              | The ID of the team for resolving custom task IDs. Required only if `custom_task_ids` is set to `true`. For example: `custom_task_ids=true&team_id=123`.                                         |
| `billable`        | boolean |          | `true`                                                                               | Specifies if the time entry is billable.                                                                                                                                                        |
| `description`     | string  |          | `"Working on API integration"`                                                       | Description for the time entry.                                                                                                                                                                 |
| `custom_task_ids` | boolean |          | `true`                                                                               | If set to `true`, the `tid` field will be interpreted as a custom task ID. Requires `team_id` query parameter to be set for custom task ID resolution.                                          |

***

### `Clickup Stop Time Entry`

Integration name: **CLICKUP\_STOP\_TIME\_ENTRY**

Stops the authenticated user's currently active time entry in the specified Team (Workspace), which requires an existing time entry to be running.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                  |
| --------- | ------ | :------: | ----------- | -------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"1234567"` | The unique numeric identifier of the Team (Workspace) where the time entry is being tracked. |

***

### `Clickup Track Time`

Integration name: **CLICKUP\_TRACK\_TIME**

Records a time entry for a task using ClickUp's legacy time tracking system; newer endpoints are generally recommended.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example           | Description                                                                                                                                                                                                                                                                          |
| ----------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `end`             | integer |     ✅    | `"1609462800000"` | The end time of the time entry, as a Unix timestamp in milliseconds.                                                                                                                                                                                                                 |
| `time`            | integer |     ✅    | `"3600000"`       | The duration of the time entry, in milliseconds. If `start` and `end` are both provided, this `time` field is ignored. If `time` is passed with `start` but no `end`, then `end` will be calculated. If `time` is passed with `end` but no `start`, then `start` will be calculated. |
| `start`           | integer |     ✅    | `"1609459200000"` | The start time of the time entry, as a Unix timestamp in milliseconds.                                                                                                                                                                                                               |
| `task_id`         | string  |     ✅    | `"abc123de"`      | The unique identifier of the task to track time for.                                                                                                                                                                                                                                 |
| `team_id`         | string  |          | `"123"`           | The ID of the team. Required and used only if `custom_task_ids` is set to `true` to identify the task by its custom ID. For example: `custom_task_ids=true&team_id=123`.                                                                                                             |
| `custom_task_ids` | boolean |          | `"true"`          | If `true`, the `task_id` is treated as a custom task ID. Requires `team_id` to be provided.                                                                                                                                                                                          |

***

### `Clickup Update Chat Channel`

Integration name: **CLICKUP\_UPDATE\_CHAT\_CHANNEL**

Tool to update a ClickUp chat channel's properties including name, topic, description, visibility, and location. Use when you need to modify an existing chat channel's settings. The endpoint requires both workspace\_id and channel\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                               | Description                                  |
| ---------------- | ------- | :------: | ----------------------------------------------------- | -------------------------------------------- |
| `name`           | string  |          | `"Updated Channel Name"`                              | The updated name of the Chat channel.        |
| `topic`          | string  |          | `"Discussion about project updates"`                  | The updated topic of the Chat channel.       |
| `location`       | object  |          | —                                                     | Location information for the chat channel.   |
| `channel_id`     | string  |     ✅    | `"2kz0k9bp-2776"`                                     | The ID of the specified Channel.             |
| `visibility`     | string  |          | `"PUBLIC"`                                            | Visibility setting for chat channel.         |
| `description`    | string  |          | `"This channel is for discussing project milestones"` | The updated description of the Chat channel. |
| `workspace_id`   | integer |     ✅    | `90161390966`                                         | The ID of the Workspace.                     |
| `content_format` | string  |          | `"text/md"`                                           | Content format for channel messages.         |

***

### `Clickup Update Chat Message`

Integration name: **CLICKUP\_UPDATE\_CHAT\_MESSAGE**

Tool to update a ClickUp chat message's content, assignee, or resolved status via the v3 API. Use when you need to edit an existing chat message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                            | Description                                                                                                                     |
| ---------------- | ------- | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `content`        | string  |          | `"Updated test message - verification successful"` | The full content of the message to be updated. Maximum 40,000 characters. If not provided, message content will not be changed. |
| `assignee`       | string  |          | `"183"`                                            | The possible assignee of the message. User ID as string.                                                                        |
| `resolved`       | boolean |          | —                                                  | The resolved status of the message. Set to true to mark as resolved, false to mark as unresolved.                               |
| `post_data`      | object  |          | —                                                  | Post data subtype information.                                                                                                  |
| `message_id`     | string  |     ✅    | `"80160027256695"`                                 | The ID of the message to update.                                                                                                |
| `workspace_id`   | string  |     ✅    | `"90161390966"`                                    | The ID of the Workspace containing the chat message. Numeric string.                                                            |
| `content_format` | string  |          | —                                                  | Content format enum for chat messages.                                                                                          |
| `group_assignee` | string  |          | `"team_456"`                                       | The possible group assignee of the message. Team/group ID as string.                                                            |

***

### `Clickup Update Checklist`

Integration name: **CLICKUP\_UPDATE\_CHECKLIST**

Updates an existing checklist's name or position, identified by its `checklist_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                         | Description                                                                |
| -------------- | ------- | :------: | ------------------------------- | -------------------------------------------------------------------------- |
| `name`         | string  |          | —                               | New name for the checklist.                                                |
| `position`     | integer |          | —                               | New 0-indexed display order for the checklist on a task (e.g., 0 for top). |
| `checklist_id` | string  |     ✅    | `"b8a8-48d8-a0c6-b4200788a683"` | The unique identifier (UUID) of the checklist to be edited.                |

***

### `Clickup Update Checklist Item`

Integration name: **CLICKUP\_UPDATE\_CHECKLIST\_ITEM**

Updates an existing checklist item, allowing modification of its name, assignee, resolution status, or parent item for nesting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                  | Description                                                                                                                                       |
| ------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`              | string  |          | `"Review updated documentation"`         | The new name for the checklist item.                                                                                                              |
| `parent`            | string  |          | `"c2d3e4f5-a6b7-8901-2345-67890abcdef1"` | The `checklist_item_id` of an existing item within the same checklist to nest this item under.                                                    |
| `assignee`          | string  |          | `"183"`                                  | The integer user ID to assign to this checklist item. To unassign, consult ClickUp API documentation for the appropriate value (e.g., 0 or null). |
| `resolved`          | boolean |          | `"true"`                                 | Set to `true` to mark the item as resolved, or `false` to mark it as unresolved.                                                                  |
| `checklist_id`      | string  |     ✅    | `"b8a8-48d8-a0c6-b4200788a683"`          | The unique identifier (UUID) of the checklist containing the item to be edited.                                                                   |
| `checklist_item_id` | string  |     ✅    | `"e491-47f5-9fd8-d1dc4cedcc6f"`          | The unique identifier (UUID) of the checklist item to be edited.                                                                                  |

***

### `Clickup Update Comment`

Integration name: **CLICKUP\_UPDATE\_COMMENT**

Updates an existing task comment's text, assignee (who must be a valid workspace member), or resolution status, requiring a valid existing comment\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                       | Description                                                                         |
| -------------- | ------- | :------: | --------------------------------------------- | ----------------------------------------------------------------------------------- |
| `assignee`     | integer |     ✅    | `183`                                         | User ID of the assignee for the comment.                                            |
| `resolved`     | boolean |     ✅    | `true`                                        | Set to `true` to mark the comment as resolved, or `false` to mark it as unresolved. |
| `comment_id`   | string  |     ✅    | `"123456789"`                                 | The unique identifier of the comment to be updated.                                 |
| `comment_text` | string  |     ✅    | `"Please review this updated design mockup."` | The new text content for the comment.                                               |

***

### `Clickup Update Folder`

Integration name: **CLICKUP\_UPDATE\_FOLDER**

Updates the name of an existing folder in ClickUp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                       | Description                                |
| ----------- | ------ | :------: | ----------------------------- | ------------------------------------------ |
| `name`      | string |     ✅    | `"Updated Project Documents"` | New name for the folder.                   |
| `folder_id` | string |     ✅    | `"90120000000"`               | Unique identifier of the folder to update. |

***

### `Clickup Update Goal`

Integration name: **CLICKUP\_UPDATE\_GOAL**

Updates attributes of an existing ClickUp goal, identified by its `goal_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                             | Description                                     |
| ------------- | ------- | :------: | ------------------------------------------------------------------- | ----------------------------------------------- |
| `name`        | string  |     ✅    | `"Q3 Marketing Strategy Finalization"`                              | New name for the goal.                          |
| `color`       | string  |     ✅    | `"#FF0000"`                                                         | New color (hex code).                           |
| `goal_id`     | string  |     ✅    | `"900e-462d-a849-4a216b06d930"`                                     | Unique identifier (UUID) of the goal to update. |
| `due_date`    | integer |     ✅    | `1678886400000`                                                     | New due date (Unix timestamp in milliseconds).  |
| `add_owners`  | array   |     ✅    | `[403,512]`                                                         | User IDs to add as owners.                      |
| `rem_owners`  | array   |     ✅    | `[183,281]`                                                         | User IDs to remove as owners.                   |
| `description` | string  |     ✅    | `"Finalize the Q3 marketing strategy and present to stakeholders."` | New description for the goal.                   |

***

### `Clickup Update Guest On Workspace`

Integration name: **CLICKUP\_UPDATE\_GUEST\_ON\_WORKSPACE**

Modifies the details and permissions of an existing guest user within a specific Workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                | Description                                                                                                                                                                                                                                             |
| ------------------------ | ------- | :------: | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`                | string  |     ✅    | `"123"`                | The unique identifier of the Workspace (Team) where the guest belongs. Example: 123456.                                                                                                                                                                 |
| `guest_id`               | string  |     ✅    | `"789"`                | The unique identifier of the guest user to be edited. Example: 98765.                                                                                                                                                                                   |
| `username`               | string  |          | `"new_guest_username"` | The new username to assign to the guest. Optional - only include if you want to change the guest's username.                                                                                                                                            |
| `can_edit_tags`          | boolean |          | `true`                 | Boolean flag to allow or disallow the guest to edit tags. Optional - only include if you want to change this permission.                                                                                                                                |
| `custom_role_id`         | integer |          | `10`                   | Identifier of a custom role for the guest. Ensure this ID is valid within the workspace. Optional - only include if you want to assign/change the custom role. (Note: Business Plus Plan supports one custom role; Enterprise Plan supports unlimited). |
| `can_create_views`       | boolean |          | `true`                 | Boolean flag to allow or disallow the guest to create views. Optional - only include if you want to change this permission.                                                                                                                             |
| `can_see_time_spent`     | boolean |          | `false`                | Boolean flag to allow or disallow the guest to see time spent on tasks. Optional - only include if you want to change this permission.                                                                                                                  |
| `can_see_time_estimated` | boolean |          | `false`                | Boolean flag to allow or disallow the guest to see time estimated for tasks. Optional - only include if you want to change this permission.                                                                                                             |

***

### `Clickup Update Key Result`

Integration name: **CLICKUP\_UPDATE\_KEY\_RESULT**

Updates an existing key result's progress or note in ClickUp, where the key result measures progress towards a goal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                  | Description                                                  |
| --------------- | ------- | :------: | -------------------------------------------------------- | ------------------------------------------------------------ |
| `note`          | string  |     ✅    | `"Updated progress after completing the initial phase."` | A note or comment to add or update for the key result.       |
| `key_result_id` | string  |     ✅    | `"8480-49bc-8c57-e569747efe93"`                          | The unique identifier (UUID) of the key result to be edited. |
| `steps_current` | integer |     ✅    | `5`                                                      | The current progress of steps for the key result.            |

***

### `Clickup Update List`

Integration name: **CLICKUP\_UPDATE\_LIST**

Updates attributes of an existing ClickUp list, such as its name, content, due date, priority, assignee, or color status, identified by its `list_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                         | Description                                                                                                               |
| --------------- | ------- | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string  |          | `"Project Alpha Tasks"`                         | New name for the list.                                                                                                    |
| `status`        | string  |          | `"blue"`                                        | Color for the list (e.g., 'red' or '#FF0000'), visually representing its status (not task status).                        |
| `content`       | string  |          | `"All tasks related to Project Alpha release."` | New description or informational content for the list.                                                                    |
| `list_id`       | string  |     ✅    | —                                               | ID of the list to be updated.                                                                                             |
| `assignee`      | string  |          | `"183"`                                         | User ID to be set as the assignee for the list, replacing any existing assignee.                                          |
| `due_date`      | integer |          | `"1672531199000"`                               | New due date for the list, as a Unix timestamp in milliseconds (e.g., `1672531199000` for Dec 31, 2022, 11:59:59 PM UTC). |
| `priority`      | integer |          | `"1"`                                           | Priority level: `1` (Urgent), `2` (High), `3` (Normal), `4` (Low), or `0` to unset.                                       |
| `unset_status`  | boolean |          | `true`                                          | Set to `true` to remove the list's color, overriding `status`; if `false`, `status` updates or maintains current color.   |
| `due_date_time` | boolean |          | `true`                                          | Indicates if `due_date` includes a specific time; if `false`, it's an all-day event.                                      |

***

### `Clickup Update Space`

Integration name: **CLICKUP\_UPDATE\_SPACE**

Updates an existing ClickUp Space, allowing modification of its name, color, privacy, and feature settings (ClickApps).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                    | Type    | Required | Example                | Description                                                                                                                                                                                                                                           |
| -------------------------------------------- | ------- | :------: | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                       | string  |     ✅    | `"Updated Space Name"` | The new name for the Space.                                                                                                                                                                                                                           |
| `color`                                      | string  |     ✅    | `"#a2d2ff"`            | The new color for the Space, in hexadecimal format.                                                                                                                                                                                                   |
| `private`                                    | boolean |     ✅    | `true`                 | Whether the Space should be private.                                                                                                                                                                                                                  |
| `space_id`                                   | string  |     ✅    | `"123456"`             | The ID of the Space to update.                                                                                                                                                                                                                        |
| `admin_can_manage`                           | boolean |          | `true`                 | Whether admins can manage this private Space. This is an Enterprise Plan feature. Must be omitted for non-Enterprise workspaces.                                                                                                                      |
| `multiple_assignees`                         | boolean |     ✅    | `true`                 | Whether tasks in this Space can have multiple assignees.                                                                                                                                                                                              |
| `features__tags__enabled`                    | boolean |          | `true`                 | Enable or disable the Tags ClickApp. When any feature parameter is provided, all feature keys must be included (due\_dates, time\_estimates, time\_tracking, remap\_dependencies, custom\_fields, dependency\_warning, tags, checklists, portfolios). |
| `features__due_dates__enabled`               | boolean |          | `true`                 | Enable or disable the Due Dates ClickApp.                                                                                                                                                                                                             |
| `features__checklists__enabled`              | boolean |          | `true`                 | Enable or disable the Checklists ClickApp.                                                                                                                                                                                                            |
| `features__portfolios__enabled`              | boolean |          | `true`                 | Enable or disable the Portfolios ClickApp.                                                                                                                                                                                                            |
| `features__due_dates__start_date`            | boolean |          | `true`                 | Enable or disable Start Dates for the Due Dates ClickApp.                                                                                                                                                                                             |
| `features__custom_fields__enabled`           | boolean |          | `true`                 | Enable or disable the Custom Fields ClickApp.                                                                                                                                                                                                         |
| `features__time_tracking__enabled`           | boolean |          | `true`                 | Enable or disable the Time Tracking ClickApp.                                                                                                                                                                                                         |
| `features__time_estimates__enabled`          | boolean |          | `true`                 | Enable or disable the Time Estimates ClickApp.                                                                                                                                                                                                        |
| `features__due_dates__remap_due_dates`       | boolean |          | `true`                 | Enable or disable remapping of due dates for the Due Dates ClickApp.                                                                                                                                                                                  |
| `features__dependency_warning__enabled`      | boolean |          | `true`                 | Enable or disable Dependency Warning for the Task Dependencies ClickApp.                                                                                                                                                                              |
| `features__remap_dependencies__enabled`      | boolean |          | `true`                 | Enable or disable Remap Dependencies for the Task Dependencies ClickApp.                                                                                                                                                                              |
| `features__due_dates__remap_closed_due_date` | boolean |          | `true`                 | Enable or disable remapping of closed due dates for the Due Dates ClickApp.                                                                                                                                                                           |

***

### `Clickup Update Space Tag`

Integration name: **CLICKUP\_UPDATE\_SPACE\_TAG**

Updates an existing tag's name and colors in a ClickUp Space; requires current tag name for identification, and new values for tag name, foreground color, and background color, all of which are mandatory for the update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                                                            |
| ---------------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"12345678"`      | Unique identifier of the Space containing the tag.                                     |
| `tag_name`       | string |     ✅    | `"Urgent"`        | Current name of the tag to edit. This tag must exist within the specified Space.       |
| `tag__name`      | string |          | `"High Priority"` | New name to assign to the tag.                                                         |
| `tag__bg__color` | string |          | `"#000000"`       | New background color for the tag, specified as a hexadecimal string (e.g., '#000000'). |
| `tag__fg__color` | string |          | `"#FF0000"`       | New foreground color for the tag, specified as a hexadecimal string (e.g., '#FFFFFF'). |

***

### `Clickup Update Task`

Integration name: **CLICKUP\_UPDATE\_TASK**

Updates attributes of an existing task; `team_id` is required if `custom_task_ids` is true, use a single space (" ") for `description` to clear it, and provide at least one modifiable field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                   | Description                                                                                                                     |
| ----------------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string  |          | `"Finalize Q3 Report"`    | New task name.                                                                                                                  |
| `parent`          | string  |          | `"task_id_parent_abc"`    | ID of new parent task to make this a subtask; cannot convert subtask to regular task this way.                                  |
| `status`          | string  |          | `"in progress"`           | New task status (case-sensitive, must be valid in Workspace).                                                                   |
| `task_id`         | string  |     ✅    | `"abc123xyz"`             | Unique task identifier; use custom task ID if `custom_task_ids` is true.                                                        |
| `team_id`         | string  |          | `"123456"`                | Team ID, required if `custom_task_ids` is true.                                                                                 |
| `archived`        | boolean |          | `"true"`                  | True to archive, false to unarchive.                                                                                            |
| `due_date`        | integer |          | `"1678886400000"`         | New due date (Unix timestamp in milliseconds).                                                                                  |
| `priority`        | integer |          | `"1"`                     | Priority: 1 (Urgent), 2 (High), 3 (Normal), 4 (Low). Omit or `None` to remove.                                                  |
| `start_date`      | integer |          | `"1678880000000"`         | New start date (Unix timestamp in milliseconds).                                                                                |
| `description`     | string  |          | `"Updated task details."` | New task description; use a single space (" ") to clear.                                                                        |
| `due_date_time`   | boolean |          | `"true"`                  | True if `due_date` includes time, false if all-day.                                                                             |
| `time_estimate`   | integer |          | `"3600000"`               | New time estimate in milliseconds.                                                                                              |
| `assignees__add`  | array   |          | `"[183]"`                 | List of user IDs to add as assignees.                                                                                           |
| `assignees__rem`  | array   |          | `"[789]"`                 | List of user IDs to remove as assignees.                                                                                        |
| `custom_item_id`  | integer |          | `"1"`                     | Custom task type ID. Use `1` for Milestone, its ID for custom type. Omit/`None` to make regular task (API's 'null' equivalent). |
| `custom_task_ids` | boolean |          | `"true"`                  | If true, task\_id is a custom ID and team\_id is required.                                                                      |
| `start_date_time` | boolean |          | `"true"`                  | True if `start_date` includes time, false if all-day.                                                                           |

***

### `Clickup Update Team`

Integration name: **CLICKUP\_UPDATE\_TEAM**

Updates an existing ClickUp User Group (Team) using its `group_id`; note that adding a view-only guest as a paid member may incur charges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                         | Description                                                                         |
| -------------- | ------ | :------: | ------------------------------- | ----------------------------------------------------------------------------------- |
| `name`         | string |          | `"New Marketing Team"`          | The new name for the User Group (Team).                                             |
| `handle`       | string |          | `"marketing-team-handle"`       | The new handle for the User Group (Team), used for @mentions (e.g., '@developers'). |
| `group_id`     | string |     ✅    | `"7C73-4002-A6A9-310014852858"` | The ID of the User Group (Team) to update.                                          |
| `members__add` | array  |          | `[183,4051]`                    | A list of user IDs to add to the User Group (Team).                                 |
| `members__rem` | array  |          | `[123,987]`                     | A list of user IDs to remove from the User Group (Team).                            |

***

### `Clickup Update Time Entry`

Integration name: **CLICKUP\_UPDATE\_TIME\_ENTRY**

Updates an existing ClickUp time entry. Requires team\_id (workspace ID) and timer\_id (time entry ID). Optional fields: description, tags, tag\_action, start/end times, duration, tid (task ID), billable status. Note: start and end times should be provided together. This is an Advanced Time Tracking feature that may require a Business Plan or higher.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                      | Description                                                                                                                               |
| ----------------- | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `end`             | integer |          | `"1678890000000"`                            | New end time (Unix timestamp in milliseconds). If provided, `start` must also be provided.                                                |
| `tid`             | string  |          | `"av1-123"`                                  | The ID of the task for this time entry; if `custom_task_ids` is `true`, this should be the custom task ID.                                |
| `tags`            | array   |          | `[{"name":"Design"},{"name":"Development"}]` | List of tag objects (e.g., `{'name': 'your-tag'}`) for the time entry. Time tracking labels are for Business Plan and above users.        |
| `start`           | integer |          | `"1678886400000"`                            | New start time (Unix timestamp in milliseconds). If provided, `end` must also be provided.                                                |
| `team_id`         | string  |     ✅    | `"123456"`                                   | The ID of the Team (Workspace) for the time entry. Path parameter.                                                                        |
| `billable`        | boolean |          | `"true"`                                     | Indicates whether the time entry is billable.                                                                                             |
| `duration`        | integer |          | `"3600000"`                                  | New duration of the time entry in milliseconds; can be an alternative to `start` and `end` times.                                         |
| `timer_id`        | string  |     ✅    | `"5032195474653342504"`                      | The unique identifier of the time entry to update. Path parameter.                                                                        |
| `tag_action`      | string  |          | `"add"`                                      | Specifies how to handle `tags` (e.g., 'add', 'remove').                                                                                   |
| `description`     | string  |          | `"Completed initial draft of the report"`    | A new description for the time entry.                                                                                                     |
| `custom_task_ids` | boolean |          | `true`                                       | If `true`, `tid` is interpreted as a custom task ID. When true, the team\_id path parameter value will also be used as a query parameter. |

***

### `Clickup Update Time Entry Tag`

Integration name: **CLICKUP\_UPDATE\_TIME\_ENTRY\_TAG**

Updates the name, background color, and/or foreground color for an existing time entry tag, identified by its current `name` and `team_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                         |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `name`     | string |     ✅    | `"ClientMeeting"` | The current name of the time entry tag to be modified.                              |
| `tag_bg`   | string |     ✅    | `"#FF0000"`       | The new background color for the tag, specified as a hexadecimal color code.        |
| `tag_fg`   | string |     ✅    | `"#FFFFFF"`       | The new foreground (text) color for the tag, specified as a hexadecimal color code. |
| `team_id`  | string |     ✅    | `"123456"`        | The unique identifier of the Team (Workspace) where the time entry tag exists.      |
| `new_name` | string |     ✅    | `"Client Call"`   | The new name to be assigned to the time entry tag.                                  |

***

### `Clickup Update Time Tracked`

Integration name: **CLICKUP\_UPDATE\_TIME\_TRACKED**

Edits a legacy time-tracked interval for a task (identified by `task_id` and `interval_id`) to update its start/end times and duration; `team_id` is required if `custom_task_ids` is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example              | Description                                                                                                  |
| ----------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------ |
| `end`             | integer |     ✅    | `"1678890000000"`    | New end date and time for the interval as a Unix timestamp in milliseconds.                                  |
| `time`            | integer |     ✅    | `"3600000"`          | New total duration of the time interval in milliseconds; typically the difference between `end` and `start`. |
| `start`           | integer |     ✅    | `"1678886400000"`    | New start date and time for the interval as a Unix timestamp in milliseconds.                                |
| `task_id`         | string  |     ✅    | `"task_abc_123"`     | Unique task identifier; refers to custom task ID if `custom_task_ids` is true.                               |
| `team_id`         | integer |          | `"123"`              | Team ID, required if `custom_task_ids` is true.                                                              |
| `interval_id`     | string  |     ✅    | `"interval_xyz_789"` | Unique identifier of the time interval record to edit.                                                       |
| `custom_task_ids` | boolean |          | —                    | If true, `task_id` is treated as a custom task ID, and `team_id` must be provided.                           |

***

### `Clickup Update User On Workspace`

Integration name: **CLICKUP\_UPDATE\_USER\_ON\_WORKSPACE**

Updates a user's username, admin status, or custom role in a Workspace; requires the Workspace to be on an Enterprise Plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example              | Description                                                                                                                       |
| ---------------- | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `admin`          | boolean |          | `true`               | Set `true` to make user an admin, `false` to revoke admin privileges. Optional - only include if you want to change admin status. |
| `team_id`        | string  |     ✅    | `"18200000"`         | Workspace (formerly Team) ID where the user resides.                                                                              |
| `user_id`        | string  |     ✅    | `"55000000"`         | ID of the user whose details are to be edited.                                                                                    |
| `username`       | string  |          | `"john.doe.updated"` | New username to assign. Optional - only include if you want to change the username.                                               |
| `custom_role_id` | integer |          | `123`                | ID of the custom role to assign, defining their permissions. Optional - only include if you want to change the custom role.       |

***

### `Clickup Update View`

Integration name: **CLICKUP\_UPDATE\_VIEW**

Updates an existing ClickUp view's settings such as name, type, grouping, or filters; ensure `parent_id` and `parent_type` define a valid hierarchy, and that specified field names (e.g. for sorting, columns) are valid within the ClickUp workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                | Type    | Required | Example                               | Description                                                                                                                                                                                           |
| ---------------------------------------- | ------- | :------: | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | string  |     ✅    | `"My Updated List View"`              | The new name for the view.                                                                                                                                                                            |
| `type`                                   | string  |     ✅    | `"list"`                              | The type of the view.                                                                                                                                                                                 |
| `view_id`                                | string  |     ✅    | —                                     | The unique identifier of the view to be updated.                                                                                                                                                      |
| `parent__id`                             | string  |          | `"space_id_123"`                      | The ID of the Workspace, Space, Folder, or List where the view is located.                                                                                                                            |
| `divide__dir`                            | null    |          | —                                     | The direction for dividing the view. Currently, this field may not be actively used or may be deprecated.                                                                                             |
| `filters__op`                            | string  |          | `"AND"`                               | The operator for combining filters. Available values are `AND` and `OR`.                                                                                                                              |
| `parent__type`                           | integer |          | `4`                                   | The level of the Hierarchy where the view is created. Options include: Workspace (Everything Level): `7`, Space: `4`, Folder: `5`, List: `6`.                                                         |
| `divide__field`                          | null    |          | —                                     | The field to divide the view by (e.g., to create swimlanes in a board view). Currently, this field may not be actively used or may be deprecated.                                                     |
| `grouping__dir`                          | integer |          | `1`                                   | The sort order for grouping. Use `1` for ascending (e.g., urgent priority at the top) or `-1` for descending (e.g., no priority at the top).                                                          |
| `columns__fields`                        | array   |          | `["assignee","dueDate","_cf_xyz123"]` | Fields to display as columns in the view. Custom Fields require the `_cf` prefix and their ID (e.g., `_cf_custom_field_id`).                                                                          |
| `filters__fields`                        | array   |          | `["priority","status"]`               | Fields to apply filters on; refer to ClickUp API documentation for available fields.                                                                                                                  |
| `filters__search`                        | string  |          | `"Urgent Task"`                       | A search string to filter tasks by name or content.                                                                                                                                                   |
| `grouping__field`                        | string  |          | `"status"`                            | The field to group tasks by. Options include: `none`, `status`, `priority`, `assignee`, `tag`, or `dueDate`.                                                                                          |
| `sorting__fields`                        | array   |          | `["dueDate","priority"]`              | Fields to sort tasks by; refer to ClickUp API documentation for available filter fields.                                                                                                              |
| `grouping__ignore`                       | boolean |          | —                                     | If true, tasks with no value for the `grouping_field` will not be grouped.                                                                                                                            |
| `divide__collapsed`                      | boolean |          | —                                     | Indicates if divided sections should be collapsed. Currently, this field may not be actively used or may be deprecated.                                                                               |
| `grouping__collapsed`                    | array   |          | `["To Do","In Progress"]`             | A list of group identifiers (e.g., status names or assignee IDs) that should be collapsed by default in the view.                                                                                     |
| `filters__show__closed`                  | boolean |          | —                                     | If true, closed tasks will be included in the view.                                                                                                                                                   |
| `settings__me__comments`                 | boolean |          | —                                     | If true, in 'Me Mode', only comments where the current user is mentioned or involved will be shown.                                                                                                   |
| `settings__me__subtasks`                 | boolean |          | —                                     | If true, in 'Me Mode', only subtasks assigned to the current user will be shown.                                                                                                                      |
| `settings__show__images`                 | boolean |          | —                                     | If true, images attached to tasks will be displayed in the view (e.g. cover images in card view).                                                                                                     |
| `settings__me__checklists`               | boolean |          | —                                     | If true, in 'Me Mode', only checklists assigned to the current user will be shown.                                                                                                                    |
| `settings__show__subtasks`               | integer |          | `1`                                   | Controls how subtasks are displayed. Acceptable values are `1` (show subtasks as separate tasks), `2` (show subtasks expanded under parent task), or `3` (show subtasks collapsed under parent task). |
| `team__sidebar__assignees`               | array   |          | `["user_id_1","user_id_2"]`           | A list of assignee user IDs to feature in the team sidebar.                                                                                                                                           |
| `settings__show__assignees`              | boolean |          | —                                     | If true, assignees will be displayed on tasks.                                                                                                                                                        |
| `settings__show__task__locations`        | boolean |          | —                                     | If true, task locations (List, Folder, Space) will be displayed.                                                                                                                                      |
| `settings__show__closed__subtasks`       | boolean |          | —                                     | If true, closed subtasks will be included in the view.                                                                                                                                                |
| `team__sidebar__unassigned__tasks`       | boolean |          | —                                     | If true, unassigned tasks will be shown in the team sidebar.                                                                                                                                          |
| `team__sidebar__assigned__comments`      | boolean |          | —                                     | If true, assigned comments will be shown in the team sidebar.                                                                                                                                         |
| `settings__collapse__empty__columns`     | string  |          | `"true"`                              | If true, columns with no tasks will be collapsed (e.g., in Board view). This might accept boolean as a string like 'true' or 'false'.                                                                 |
| `settings__show__subtask__parent__names` | boolean |          | —                                     | If true, parent task names will be displayed for subtasks.                                                                                                                                            |

***

### `Clickup Update Webhook`

Integration name: **CLICKUP\_UPDATE\_WEBHOOK**

Updates the endpoint URL, monitored events, and status of an existing webhook, identified by its `webhook_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `events`     | array  |     ✅    | `["taskCreated","taskStatusUpdated"]`    | List of event types to monitor. Use \["\*"] to subscribe to all events. Common events include: taskCreated, taskUpdated, taskDeleted, taskStatusUpdated, taskAssigneeUpdated, taskDueDateUpdated, taskTagUpdated, taskMoved, taskCommentPosted, taskCommentUpdated, listCreated, listUpdated, listDeleted, folderCreated, folderUpdated, folderDeleted, spaceCreated, spaceUpdated, spaceDeleted, goalCreated, goalUpdated, goalDeleted, keyResultCreated, keyResultUpdated, keyResultDeleted. |
| `status`     | string |     ✅    | `"active"`                               | The desired status of the webhook after the update.                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `endpoint`   | string |     ✅    | `"https://example.com/webhook-receiver"` | The new URL where the webhook payloads will be sent.                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `webhook_id` | string |     ✅    | `"e506-4a29-9d42-26e504e3435e"`          | The unique identifier of the webhook to be updated. Example: 'e506-4a29-9d42-26e504e3435e'.                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Clickup Update Workspace Acl`

Integration name: **CLICKUP\_UPDATE\_WORKSPACE\_ACL**

Updates privacy and access control list (ACL) permissions for a workspace object or location. Use this to make objects private/public or manage user/team permissions for spaces, folders, lists, tasks, and other ClickUp objects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                                                                             | Description                                                                                                                                                                                                    |
| -------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `entries`      | array   |          | `[{"id":"12345678","kind":"user","permission_level":2},{"id":"87654321","kind":"user_group","permission_level":1}]` | The user or user group (Team) entries to give, remove, or edit permissions. Each entry must include 'kind' (user or user\_group) and 'id'. Optionally include 'permission\_level' to set specific permissions. |
| `private`      | boolean |          | `true`                                                                                                              | Set the privacy of the object or location. True for private, false for public.                                                                                                                                 |
| `object_id`    | string  |     ✅    | `"90165816748"`                                                                                                     | The ID of the specific object to update ACL permissions for.                                                                                                                                                   |
| `object_type`  | string  |     ✅    | `"space"`                                                                                                           | The type of object to update ACL permissions for.                                                                                                                                                              |
| `workspace_id` | string  |     ✅    | `"90161390966"`                                                                                                     | The ID of the Workspace. Numeric string.                                                                                                                                                                       |


# Confluence

Your Toolhouse AI Worker can connect to Confluence using 62 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](https://toolhouse.app/auth-connections?authkit_slugs=confluence).

## Tools (62)

### `Confluence Add Content Label`

Integration name: **CONFLUENCE\_ADD\_CONTENT\_LABEL**

Tool to add labels to a piece of content. Use after obtaining the content ID to tag pages or blog posts with metadata labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                        |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | Identifier of the Confluence content (page or blog post) to label.                                                                                                                                                                                                                                                 |
| `labels`  | array  |     ✅    | —                                        | List of labels to add to the content. Each element must be an object with `prefix` (one of `global`, `team`, or `my`) and `name` (lowercase alphanumeric/hyphenated string) fields — e.g., `{'prefix': 'global', 'name': 'my-label'}`. Passing plain strings or omitting `prefix` causes schema validation errors. |

***

### `Confluence Cql Search`

Integration name: **CONFLUENCE\_CQL\_SEARCH**

Searches for content in Confluence using Confluence Query Language (CQL). CQL is a powerful query language that allows you to search across all Confluence content with advanced filtering capabilities including:

* Full-text search: `text ~ "search term"` - searches within page content
* Title search: `title ~ "meeting notes"` - searches page titles
* Label filtering: `label = "important"` - filters by labels
* Space filtering: `space = DEV` - limits search to specific spaces
* Type filtering: `type = page` or `type = blogpost` - filters by content type
* Creator filtering: `creator = currentUser()` - filters by content creator
* Date filtering: `lastModified > now("-7d")` - filters by modification date
* Combined queries: `text ~ "api" AND space = DOCS AND type = page`

This action uses the Confluence REST API v1 search endpoint which fully supports CQL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------------- | ------- | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cql`                   | string  |     ✅    | `"text ~ \"API documentation\""` | Confluence Query Language (CQL) query for searching content. CQL allows searching by content text, title, labels, creator, type, space, and more. Examples: `text ~ "search term"` (full-text search), `label = "important"` (search by label), `type = page AND space = DEV` (pages in DEV space), `creator = currentUser()` (content by current user), `title ~ "meeting notes" AND lastModified > now("-7d")` (recent pages with title matching). Supported fields: text, title, label, space, type, creator, contributor, created, lastModified, ancestor, content, id. Supported operators: = (equals), != (not equals), \~ (contains), !\~ (does not contain), > < >= <= (comparisons), IN, NOT IN. Keywords: AND, OR, NOT, ORDER BY. |
| `limit`                 | integer |          | `25`                             | Maximum number of results to return (max 250, but may be limited to 25-50 when using body expansions)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `start`                 | integer |          | `0`                              | Starting index for pagination (0-based)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `expand`                | string  |          | `"content.space"`                | Comma-separated list of properties to expand in the response. Common values: `content.space`, `content.version`, `content.body.storage`, `content.body.view`. Note: Using body expansions may limit results to 25-50.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `excerpt`               | string  |          | `"highlight"`                    | The type of excerpt to return. Default is `highlight`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `includeArchivedSpaces` | boolean |          | —                                | Whether to include results from archived spaces                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Confluence Create Blogpost`

Integration name: **CONFLUENCE\_CREATE\_BLOGPOST**

Tool to create a new Confluence blog post. Use when you need to publish content in a specific space. Response includes `data.id` for the post ID and `data._links.base` + `data._links.webui` for the URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                                                                                                                                   |
| --------- | ------ | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `body`    | object |     ✅    | —                    | Content body of the blog post. Must be a dict with `representation` set to `'storage'` and `value` containing valid Confluence storage format markup (XML-based). Raw markdown or plain strings will cause validation errors. |
| `title`   | string |     ✅    | `"Quarterly Update"` | The title of the new blog post.                                                                                                                                                                                               |
| `status`  | string |     ✅    | `"current"`          | Status of the blog post. Use `'current'` to publish immediately (publicly visible) or `'draft'` to save as private draft.                                                                                                     |
| `spaceId` | string |     ✅    | `"65701"`            | ID of the space where the blog post will be created.                                                                                                                                                                          |

***

### `Confluence Create Blogpost Property`

Integration name: **CONFLUENCE\_CREATE\_BLOGPOST\_PROPERTY**

Tool to create a property on a specified blog post. Use when you need to add custom metadata to a blog post. Creates a new property with a key-value pair on a specified Confluence blog post. This allows users to add custom metadata relevant to the blog post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                    |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------- |
| `id`      | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence blog post to add the property to. |
| `key`     | string |     ✅    | `"customMeta"`                           | Unique key for the blog post property.                         |
| `value`   | string |     ✅    | `"{\"exampleKey\": \"exampleValue\"}"`   | JSON string representing the value of the blog post property.  |

***

### `Confluence Create Content Property For Whiteboard`

Integration name: **CONFLUENCE\_CREATE\_CONTENT\_PROPERTY\_FOR\_WHITEBOARD**

Tool to create a new content property on a whiteboard. Use when you need to attach custom metadata to a Confluence whiteboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                  | Description                                                 |
| --------------- | ------ | :------: | -------------------------------------------------------- | ----------------------------------------------------------- |
| `key`           | string |     ✅    | `"status"`                                               | Key/name of the property to create.                         |
| `value`         | string |     ✅    | `"{\"type\": \"urgent\", \"deadline\": \"2024-01-30\"}"` | JSON string representing the value of the content property. |
| `whiteboard_id` | string |     ✅    | `"abc123-whiteboard-id"`                                 | ID of the whiteboard to add the property to.                |

***

### `Confluence Create Footer Comment`

Integration name: **CONFLUENCE\_CREATE\_FOOTER\_COMMENT**

Tool to create a footer comment on a Confluence page, blog post, attachment, or custom content. Use when you need to add a comment without editing the page body itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                   |
| ----------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------- |
| `body`            | object |     ✅    | —                 | The body content of the comment with representation format and value.                                         |
| `pageId`          | string |          | `"12345678"`      | ID of the page to comment on. Provide one of: pageId, blogPostId, attachmentId, or customContentId.           |
| `blogPostId`      | string |          | `"87654321"`      | ID of the blog post to comment on. Provide one of: pageId, blogPostId, attachmentId, or customContentId.      |
| `attachmentId`    | string |          | `"att-123456"`    | ID of the attachment to comment on. Provide one of: pageId, blogPostId, attachmentId, or customContentId.     |
| `customContentId` | string |          | `"custom-123"`    | ID of the custom content to comment on. Provide one of: pageId, blogPostId, attachmentId, or customContentId. |
| `parentCommentId` | string |          | `"comment-12345"` | ID of the parent comment. Provide this to create a reply to an existing comment.                              |

***

### `Confluence Create Page`

Integration name: **CONFLUENCE\_CREATE\_PAGE**

Tool to create a new Confluence page in a specified space. Use when you need to create new documentation or content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                       |
| ---------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `body`     | object |          | —                                        | Wrapper for page body content.                                                                                                                                                                                                                                                                                                    |
| `title`    | string |     ✅    | `"Meeting Notes"`                        | Title of the new page. Title uniqueness is scoped per parent: duplicates are allowed under different parents but not under the same parent.                                                                                                                                                                                       |
| `spaceId`  | string |     ✅    | `"12345678"`                             | ID or key of the space where the page will be created. Can be a numeric space ID (e.g., `'12345678'`) or a space key (e.g., `'DOCS'`, `'TEAM'`). Space keys are automatically converted to IDs.                                                                                                                                   |
| `parentId` | string |          | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the parent page. If omitted, the Confluence API will automatically place the page under the space's homepage. Provide this to create the page as a child of a specific page. Must be a numeric page ID only — page titles and page keys are not accepted and will cause errors. Obtain numeric IDs via list or search APIs. |

***

### `Confluence Create Page Property`

Integration name: **CONFLUENCE\_CREATE\_PAGE\_PROPERTY**

Tool to create a property on a Confluence page. Use when you need to add custom metadata or settings to a page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                  | Description                                                                                          |
| --------- | ------ | :------: | -------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `key`     | string |     ✅    | `"status"`                                               | Key/name of the property to create.                                                                  |
| `value`   | string |     ✅    | `"{\"type\": \"urgent\", \"deadline\": \"2024-01-30\"}"` | Value of the property as a JSON string. Can represent any JSON type (string, number, object, array). |
| `page_id` | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"`                 | ID of the page to create a property for.                                                             |

***

### `Confluence Create Private Space`

Integration name: **CONFLUENCE\_CREATE\_PRIVATE\_SPACE**

Tool to create a private Confluence space. Use when you need an isolated workspace viewable only by its creator.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example              | Description                                                                                                                              |
| ------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `key`         | string |     ✅    | `"PERS1"`            | A unique key for the private space; must be unique and <=255 characters. Must be alphanumeric only (no hyphens, underscores, or spaces). |
| `name`        | string |     ✅    | `"My Private Space"` | The name of the private space, visible only to its creator.                                                                              |
| `description` | object |          | —                    | Container for the plain-text description.                                                                                                |

***

### `Confluence Create Space`

Integration name: **CONFLUENCE\_CREATE\_SPACE**

Tool to create a new Confluence space. Use when setting up a new knowledge area for organization. Must include a `plain.representation` field, e.g., `{"plain": {"representation": "plain", "value": "text here"}}`. Omitting this field causes a 400 error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                                                                                                            |
| ------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key`         | string |     ✅    | `"DOCS"`          | A unique key for the space. Must be alphanumeric characters only (letters and numbers), up to 255 characters. Underscores and hyphens are not allowed. |
| `name`        | string |     ✅    | `"Documentation"` | Human-readable name for the space.                                                                                                                     |
| `type`        | string |          | `"global"`        | Type of the space, either `global` or `personal`.                                                                                                      |
| `metadata`    | string |          | —                 | Optional metadata for the space as a JSON string.                                                                                                      |
| `description` | object |          | —                 | Description object for a Confluence space.                                                                                                             |

***

### `Confluence Create Space Property`

Integration name: **CONFLUENCE\_CREATE\_SPACE\_PROPERTY**

Tool to create a new property on a Confluence space. Use after confirming the space ID when adding custom metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description                                               |
| --------- | ------ | :------: | ---------------------------- | --------------------------------------------------------- |
| `key`     | string |     ✅    | `"property-key"`             | Unique key for the space property.                        |
| `value`   | string |     ✅    | `"{\"example\": \"value\"}"` | JSON string representing the value of the space property. |
| `spaceId` | string |     ✅    | `"SPACE123"`                 | ID of the space to add the property to.                   |
| `version` | object |          | —                            | Optional version metadata for the new property.           |

***

### `Confluence Create Whiteboard`

Integration name: **CONFLUENCE\_CREATE\_WHITEBOARD**

Tool to create a new Confluence whiteboard. Use when you need to start a collaborative whiteboard session.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                          |
| ---------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------- |
| `title`    | string |          | `"Team Brainstorm"`                      | Title of the whiteboard.                                             |
| `spaceId`  | string |     ✅    | `"12345678"`                             | ID of the space where the whiteboard will be created.                |
| `parentId` | string |          | `"1234abcd-1234-5678-abcd-1234567890ab"` | ID of the parent content under which the whiteboard will be created. |

***

### `Confluence Delete Blogpost Property`

Integration name: **CONFLUENCE\_DELETE\_BLOGPOST\_PROPERTY**

Tool to delete a blog post property. Use when you need to remove custom metadata from a specified blog post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                               |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | ID of the Confluence blog post containing the property.                                   |
| `propertyId` | —      |     ✅    | `8093697`                                | The ID of the blog post property to delete. Can be a numeric ID or a property key string. |

***

### `Confluence Delete Content Property For Page By Id`

Integration name: **CONFLUENCE\_DELETE\_CONTENT\_PROPERTY\_FOR\_PAGE\_BY\_ID**

Tool to delete a content property from a page by property ID. Use when you need to remove custom metadata from a page for cleanup or auditing. This action deletes a specified content property from a Confluence page using its page ID and property ID. It is useful for removing outdated or unnecessary metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                           |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `pageId`     | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the Confluence page from which to delete the property.                                          |
| `propertyId` | —      |     ✅    | `8093697`                                | The ID of the content property to delete from the page. Can be a numeric ID or a property key string. |

***

### `Confluence Delete Content Property For Whiteboard By Id`

Integration name: **CONFLUENCE\_DELETE\_CONTENT\_PROPERTY\_FOR\_WHITEBOARD\_BY\_ID**

Tool to delete a content property from a whiteboard by property ID. Use when you need to remove custom metadata from a whiteboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                  | Description                                                                                         |
| -------------- | ------ | :------: | ------------------------ | --------------------------------------------------------------------------------------------------- |
| `propertyId`   | —      |     ✅    | `8093697`                | The ID of the property to delete from the whiteboard. Can be a numeric ID or a property key string. |
| `whiteboardId` | string |     ✅    | `"abc123-whiteboard-id"` | ID of the whiteboard from which to delete the property.                                             |

***

### `Confluence Delete Page`

Integration name: **CONFLUENCE\_DELETE\_PAGE**

Tool to delete a Confluence page. Use with caution as this permanently removes the page and its content with no recovery option. In move or migration workflows, confirm all target pages were successfully created before deleting source pages — partial creation failures combined with deletion result in unrecoverable data loss.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description               |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------- |
| `id`      | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the page to delete. |

***

### `Confluence Delete Space`

Integration name: **CONFLUENCE\_DELETE\_SPACE**

Tool to delete a Confluence space by its key. Use when you need to permanently remove a space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                 |
| ----------- | ------ | :------: | ------- | --------------------------- |
| `space_key` | string |     ✅    | `"DEV"` | Key of the space to delete. |

***

### `Confluence Delete Space Property`

Integration name: **CONFLUENCE\_DELETE\_SPACE\_PROPERTY**

Tool to delete a space property. Use when you need to remove a property from a Confluence space after review.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                                                                    |
| -------------- | ------- | :------: | --------- | -------------------------------------------------------------------------------------------------------------- |
| `propertyId`   | —       |     ✅    | `8093697` | The ID of the space property to delete. Can be a numeric ID or a property key string.                          |
| `spaceIdOrKey` | integer |     ✅    | `163984`  | The numeric Long ID of the space containing the property. Must be a numeric space ID, not a space key or UUID. |

***

### `Confluence Download Attachment`

Integration name: **CONFLUENCE\_DOWNLOAD\_ATTACHMENT**

Downloads an attachment from a Confluence page and returns a publicly accessible S3 URL. Use this when you need to share the attachment with users who don't have Confluence access. First use get\_attachments to list attachments and get the attachment ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example      | Description                                             |
| -------------- | ------ | :------: | ------------ | ------------------------------------------------------- |
| `pageId`       | string |     ✅    | `"65816"`    | ID of the Confluence page that contains the attachment. |
| `attachmentId` | string |     ✅    | `"att65825"` | ID of the attachment to download (e.g., `'att65825'`).  |

***

### `Confluence Get Attachment Labels`

Integration name: **CONFLUENCE\_GET\_ATTACHMENT\_LABELS**

Tool to list labels on an attachment. Use after confirming the attachment ID to fetch its labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                  | Description                                                                                    |
| --------- | ------- | :------: | -------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `id`      | string  |     ✅    | `"att64913409"`                                          | Identifier of the Confluence attachment to retrieve labels for.                                |
| `sort`    | string  |          | `"name"`                                                 | Sort the result by a particular field.                                                         |
| `limit`   | integer |          | `25`                                                     | Maximum number of labels to return per page (1-250).                                           |
| `cursor`  | string  |          | `"eyJpZCI6IjEyMzQ1Njc4IiwiY29udGVudE9yZGVyIjoiaWQifQ=="` | Opaque cursor for pagination. Returned in the Link response header for fetching the next page. |
| `prefix`  | string  |          | `"global"`                                               | Filter labels by their prefix.                                                                 |

***

### `Confluence Get Attachments`

Integration name: **CONFLUENCE\_GET\_ATTACHMENTS**

Tool to retrieve attachments of a Confluence page. Use after confirming page ID to list its attachments (supports pagination).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                                 |
| ----------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------- |
| `limit`     | integer |          | `25`                                     | Maximum number of attachments to return per page. Confluence caps at 200.   |
| `start`     | integer |          | `0`                                      | Zero-based index of the first item to return (pagination offset).           |
| `pageId`    | string  |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the Confluence page whose attachments will be retrieved.              |
| `mediaType` | string  |          | `"image/jpeg"`                           | Filter attachments by MIME type (e.g., `'image/png'`, `'application/pdf'`). |

***

### `Confluence Get Audit Logs`

Integration name: **CONFLUENCE\_GET\_AUDIT\_LOGS**

Tool to retrieve Confluence audit records. Use when you need to fetch and filter audit logs for compliance or troubleshooting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example         | Description                                                               |
| -------------- | ------- | :------: | --------------- | ------------------------------------------------------------------------- |
| `limit`        | integer |          | `25`            | Maximum number of audit records to return per page.                       |
| `start`        | integer |          | `0`             | Zero-based index of the first audit record to return (pagination offset). |
| `endDate`      | integer |          | `1704153599000` | End of the audit record timestamp range (epoch time in milliseconds).     |
| `startDate`    | integer |          | `1672531200000` | Start of the audit record timestamp range (epoch time in milliseconds).   |
| `searchString` | string  |          | `"user login"`  | Free-text search to filter audit records by summary or category.          |

***

### `Confluence Get Blogpost By Id`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_BY\_ID**

Tool to retrieve a specific Confluence blog post by its ID. Use when you have a blog post ID and need detailed metadata and content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------- |
| `id`      | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Unique identifier of the Confluence blog post to retrieve. |

***

### `Confluence Get Blogpost Labels`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_LABELS**

Tool to retrieve labels of a specific Confluence blog post by ID. Use after obtaining the blog post ID to list its labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                        |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------ |
| `id`      | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence blog post to retrieve labels for.     |
| `limit`   | integer |          | `25`                                     | Maximum number of labels to return per page.                       |
| `start`   | integer |          | `0`                                      | Zero-based index of the first label to return (pagination offset). |

***

### `Confluence Get Blogpost Like Count`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_LIKE\_COUNT**

Tool to get like count for a Confluence blog post. Use after confirming the blog post ID to retrieve total likes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                        |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence blog post to retrieve like count for. |

***

### `Confluence Get Blogpost Operations`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_OPERATIONS**

Tool to retrieve permitted operations for a Confluence blog post. Use after confirming the blog post ID to see allowed actions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                     |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------- |
| `id`      | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence blog post to query operations for. |

***

### `Confluence Get Blog Posts`

Integration name: **CONFLUENCE\_GET\_BLOG\_POSTS**

Tool to retrieve a list of blog posts. Use when you need a paginated list of Confluence blog posts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                                     |
| --------- | ------- | :------: | ------------------------ | --------------------------------------------------------------- |
| `limit`   | integer |          | `25`                     | Maximum number of items to return per page.                     |
| `cursor`  | string  |          | `"eyJvZmZzZXQiOjI1fQ=="` | Opaque pagination cursor for fetching the next page of results. |

***

### `Confluence Get Blog Posts For Label`

Integration name: **CONFLUENCE\_GET\_BLOG\_POSTS\_FOR\_LABEL**

Tool to list all blog posts under a specific label. Use when you have a label ID and need to retrieve associated blog posts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                     |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------- |
| `id`      | string  |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the label to retrieve blog posts for.                     |
| `limit`   | integer |          | `25`                                     | Maximum number of items to return per page.                     |
| `cursor`  | string  |          | `"eyJvZmZzZXQiOjI1fQ=="`                 | Opaque pagination cursor for fetching the next page of results. |

***

### `Confluence Get Blogpost Version Details`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_VERSION\_DETAILS**

Tool to retrieve details for a specific version of a blog post. Use when you have a blogpostId and versionNumber and need detailed metadata for that version.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                    |
| --------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------- |
| `blogpostId`    | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Unique identifier of the Confluence blog post. |
| `versionNumber` | integer |     ✅    | `1`                                      | Version number of the blog post to retrieve.   |

***

### `Confluence Get Blogpost Versions`

Integration name: **CONFLUENCE\_GET\_BLOGPOST\_VERSIONS**

Tool to retrieve all versions of a specific blog post. Use when you have a blogpostId and need to list version numbers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                                                 |
| ------------ | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------- |
| `limit`      | integer |          | `25`                                     | Maximum number of version items to return per page.                         |
| `cursor`     | string  |          | `"eyJvZmZzZXQiOjI1fQ=="`                 | Cursor for pagination. Use value from previous response to fetch next page. |
| `blogpostId` | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | The unique identifier of the Confluence blog post.                          |

***

### `Confluence Get Child Pages`

Integration name: **CONFLUENCE\_GET\_CHILD\_PAGES**

Tool to list all direct child pages of a given Confluence page. Use when you have a parent page ID and need to discover its direct descendants. Response nests child page data under `data.data.results`; unwrap this before iterating. Paginate using `_links.next` cursor until no further results to avoid missing children.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                          |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string  |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the Confluence page to retrieve child pages for. Returned child page IDs may be non-numeric strings; do not assume integer format when storing or passing to subsequent calls. |
| `sort`    | string  |          | —                                        | Sort order options for child pages.                                                                                                                                                  |
| `limit`   | integer |          | `25`                                     | Maximum number of items to return per page. Maximum cap is 100. Paginate until `_links.next` is absent to ensure all children are retrieved.                                         |
| `cursor`  | string  |          | —                                        | Cursor for pagination. Use the cursor from the previous response's \_links.next to get the next page of results.                                                                     |

***

### `Confluence Get Content Properties For Blog Post`

Integration name: **CONFLUENCE\_GET\_CONTENT\_PROPERTIES\_FOR\_BLOG\_POST**

Tool to retrieve all content properties on a blog post. Use when you need to list metadata properties set on a specific Confluence blog post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                           |
| ------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------- |
| `limit`       | integer |          | `25`                                     | Maximum number of properties to return per page.                      |
| `start`       | integer |          | `0`                                      | Zero-based index of the first property to return (pagination offset). |
| `blogpost_id` | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence blog post to retrieve properties for.    |

***

### `Confluence Get Content Properties For Page`

Integration name: **CONFLUENCE\_GET\_CONTENT\_PROPERTIES\_FOR\_PAGE**

Tool to retrieve all content properties on a page. Use when you need to list metadata properties set on a specific Confluence page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                     |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------- |
| `limit`   | integer |          | `25`                                     | Maximum number of properties to return per page (max 200).      |
| `cursor`  | string  |          | `"eyJvZmZzZXQiOjI1fQ=="`                 | Opaque pagination cursor for fetching the next page of results. |
| `page_id` | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | Identifier of the Confluence page to retrieve properties for.   |

***

### `Confluence Get Content Restrictions`

Integration name: **CONFLUENCE\_GET\_CONTENT\_RESTRICTIONS**

Tool to retrieve restrictions on a Confluence content item. Use when you need to see who can view or edit a page or blog post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | ID of the content to retrieve restrictions for.                                                   |
| `expand`  | array  |          | `["user","operation"]`                   | Comma-separated properties to expand in the response, e.g., `['restrictables.operation', 'user']` |

***

### `Confluence Get Current User`

Integration name: **CONFLUENCE\_GET\_CURRENT\_USER**

Tool to get information about the currently authenticated user — always scoped to the account tied to the configured connection, not arbitrary users. Use CONFLUENCE\_SEARCH\_USERS to look up other users. Response contains nested metadata; key fields include accountId, displayName, and email for use in downstream logic.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Confluence Get Inline Comments For Blog Post`

Integration name: **CONFLUENCE\_GET\_INLINE\_COMMENTS\_FOR\_BLOG\_POST**

Tool to retrieve inline comments for a Confluence blog post. Use when you need inline comment details by blog post ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                  | Description                                                                                             |
| ------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | `"10158081"`             | Unique identifier of the blog post to retrieve inline comments for.                                     |
| `sort`        | string  |          | `"created-date"`         | Sort order for results. Use `-` prefix for descending order.                                            |
| `limit`       | integer |          | `25`                     | Maximum number of inline comments to return per page (default 25, max 250).                             |
| `cursor`      | string  |          | `"eyJpZCI6IjEyMzQ1NiJ9"` | Cursor for pagination. Use the cursor from `_links.next` in the previous response to get the next page. |
| `body_format` | string  |          | `"storage"`              | The content format type for the comment body. Valid values: `storage`, `atlas_doc_format`.              |

***

### `Confluence Get Labels`

Integration name: **CONFLUENCE\_GET\_LABELS**

Tool to retrieve all labels in a Confluence site; use for label discovery when you need to list or page through labels. For label-based filtering, use CONFLUENCE\_GET\_LABELS\_FOR\_PAGE or CONFLUENCE\_GET\_LABELS\_FOR\_SPACE\_CONTENT instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                        |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------ |
| `limit`   | integer |          | `25`    | Maximum number of labels to return per page.                       |
| `start`   | integer |          | `0`     | Zero-based index of the first label to return (pagination offset). |

***

### `Confluence Get Labels For Page`

Integration name: **CONFLUENCE\_GET\_LABELS\_FOR\_PAGE**

Tool to retrieve labels of a specific Confluence page by ID. Labels are returned in `data.results[*].name` and are not available in CONFLUENCE\_GET\_PAGES responses. Use after obtaining the page ID to list its labels. Paginate using `start` and `limit` to avoid missing labels when count exceeds 25.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                                         |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string  |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | Identifier of the Confluence page to retrieve labels for.                                                                                                                                           |
| `limit`   | integer |          | `25`                                     | Maximum number of labels to return per page.                                                                                                                                                        |
| `start`   | integer |          | `0`                                      | Zero-based index of the first label to return (pagination offset). Increment by `limit` value iteratively to paginate through all labels; omitting pagination will miss labels beyond the first 25. |

***

### `Confluence Get Labels For Space`

Integration name: **CONFLUENCE\_GET\_LABELS\_FOR\_SPACE**

Tool to list labels on a space. Use when you need to retrieve labels for a specific space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                            |
| --------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------- |
| `id`      | —       |     ✅    | `"123456"`           | ID of the space to retrieve labels for (numeric space ID).                             |
| `sort`    | string  |          | `"name"`             | Sort order for results. Use `-` prefix for descending order.                           |
| `limit`   | integer |          | `25`                 | Maximum number of labels to return per page (default 25, max 250).                     |
| `cursor`  | string  |          | `"eyJpZCI6MTIzfQ=="` | Cursor for pagination. Use the cursor from the previous response to get the next page. |
| `prefix`  | string  |          | `"global"`           | Filter labels by prefix.                                                               |

***

### `Confluence Get Labels For Space Content`

Integration name: **CONFLUENCE\_GET\_LABELS\_FOR\_SPACE\_CONTENT**

Tool to list labels on all content in a space. Use when you need to retrieve or filter content labels by space, with pagination and optional prefix filtering. For label discovery across a space before per-page filtering, use this tool first, then CONFLUENCE\_GET\_LABELS\_FOR\_PAGE; CONFLUENCE\_SEARCH\_CONTENT does not filter by labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                        |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------ |
| `id`      | string  |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | The ID of the space to list content labels for.                    |
| `limit`   | integer |          | `25`                                     | Maximum number of labels to return per page.                       |
| `start`   | integer |          | `0`                                      | Zero-based index of the first label to return (pagination offset). |
| `prefix`  | string  |          | `"global"`                               | Filter labels by this prefix (e.g., `'global'`, `'page-'`).        |

***

### `Confluence Get Page Ancestors`

Integration name: **CONFLUENCE\_GET\_PAGE\_ANCESTORS**

Tool to retrieve all ancestors for a given Confluence page by its ID. Use when you need the full page hierarchy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `id`      | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the Confluence page to retrieve ancestors for. |

***

### `Confluence Get Page By Id`

Integration name: **CONFLUENCE\_GET\_PAGE\_BY\_ID**

Tool to retrieve a Confluence page by its ID. Use when you have a page ID and need its detailed metadata and content. Response body is in `body.storage.value` as Confluence storage format (HTML); strip tags before plain-text use. Before calling CONFLUENCE\_UPDATE\_PAGE, fetch the latest version here — that tool requires `version.number` = current + 1, else a 409 conflict occurs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                                                                                                                                                                           |
| --------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string  |     ✅    | `"12345678"` | Numeric Long ID of the Confluence page to retrieve. Must be a numeric long value, not a UUID or string identifier. Accepts both `id` and `page_id` parameter names for compatibility. |
| `draft`   | boolean |          | `true`       | Whether to return the draft version (default: false).                                                                                                                                 |
| `version` | integer |          | `1`          | Specific page version to retrieve (default: latest).                                                                                                                                  |

***

### `Confluence Get Page Footer Comments`

Integration name: **CONFLUENCE\_GET\_PAGE\_FOOTER\_COMMENTS**

Tool to retrieve footer (non-inline) comments for a Confluence page. Use when you need to collect review feedback left as standard page comments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                  | Description                                                                                             |
| ------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | `"10158081"`             | Unique identifier of the page to retrieve footer comments for.                                          |
| `sort`        | string  |          | `"created-date"`         | Sort order for results. Use `-` prefix for descending order.                                            |
| `limit`       | integer |          | `50`                     | Maximum number of footer comments to return per page (default 50, max 250).                             |
| `cursor`      | string  |          | `"eyJpZCI6IjEyMzQ1NiJ9"` | Cursor for pagination. Use the cursor from `_links.next` in the previous response to get the next page. |
| `status`      | array   |          | `["current"]`            | Filter comments by status. Can include multiple statuses.                                               |
| `body_format` | string  |          | `"storage"`              | The content format type for the comment body. Valid values: `storage`, `atlas_doc_format`.              |

***

### `Confluence Get Page Inline Comments`

Integration name: **CONFLUENCE\_GET\_PAGE\_INLINE\_COMMENTS**

Tool to retrieve inline comments for a Confluence page. Use when you need inline comment details by page ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                  | Description                                                                                                     |
| ------------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------- |
| `id`                | integer |     ✅    | `10158081`               | Numeric ID of the page to retrieve inline comments for.                                                         |
| `sort`              | string  |          | `"created-date"`         | Sort order for results. Use `-` prefix for descending order.                                                    |
| `limit`             | integer |          | `25`                     | Maximum number of inline comments to return per page (default 25, max 250).                                     |
| `cursor`            | string  |          | `"eyJpZCI6IjEyMzQ1NiJ9"` | Cursor for pagination. Use the cursor from `_links.next` in the previous response to get the next page.         |
| `status`            | array   |          | `["current"]`            | Filter comments by status. Pass an array of status values.                                                      |
| `body_format`       | string  |          | `"storage"`              | The content format type for the comment body. Valid values: `storage`, `atlas_doc_format`.                      |
| `resolution_status` | array   |          | `["open"]`               | Filter comments by resolution status. Pass an array of resolution status values (e.g., `'open'`, `'resolved'`). |

***

### `Confluence Get Page Like Count`

Integration name: **CONFLUENCE\_GET\_PAGE\_LIKE\_COUNT**

Tool to get like count for a Confluence page. Use after confirming the page ID to retrieve total likes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                   |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------- |
| `id`      | string |     ✅    | `"1234abcd-56ef-78gh-90ij-123456klmnop"` | Identifier of the Confluence page to retrieve like count for. |

***

### `Confluence Get Pages`

Integration name: **CONFLUENCE\_GET\_PAGES**

Tool to retrieve a paginated list of Confluence pages. Results are permission-scoped to the authenticated user; empty results may reflect access restrictions. Omitting filters like spaceId or status can return unexpectedly broad result sets. Labels are not included in results; use CONFLUENCE\_GET\_LABELS\_FOR\_PAGE for label data. Timestamps are ISO 8601 UTC strings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                                                                                                                                                   |
| ------------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`        | string  |          | `"created-date"` | Sort order for Confluence pages using AbstractPageSortOrder enum values.                                                                                                      |
| `limit`       | integer |          | `25`             | Maximum number of pages to return per page. Confluence caps at 250.                                                                                                           |
| `title`       | string  |          | —                | Filter by page title (exact match).                                                                                                                                           |
| `cursor`      | string  |          | —                | Opaque pagination cursor. Use the 'next' link from a previous response to continue. Iterate until no 'next' link is returned to avoid silently missing pages.                 |
| `status`      | —       |          | `["current"]`    | Filter by page status. Allowed values: current, archived, deleted, trashed.                                                                                                   |
| `subtype`     | string  |          | —                | Filter by page subtype. Valid values: live, page.                                                                                                                             |
| `space_id`    | —       |          | `163984`         | Filter by space ID(s). Provide a single ID or a list of IDs.                                                                                                                  |
| `body_format` | string  |          | —                | Body representation to include in results. Allowed values: `'storage'` (storage format) or `'atlas_doc_format'` (Atlas document format). The value `'view'` is not supported. |

***

### `Confluence Get Page Versions`

Integration name: **CONFLUENCE\_GET\_PAGE\_VERSIONS**

Tool to retrieve all versions of a specific Confluence page. Use to audit edit history or to get the latest `version.number` before calling CONFLUENCE\_UPDATE\_PAGE — using a stale `version.number` causes a 409 Conflict error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                                 |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string  |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | The unique identifier of the Confluence page. String format; differs from the numeric long expected by CONFLUENCE\_GET\_PAGE\_BY\_ID.                                                       |
| `limit`   | integer |          | `25`                                     | Maximum number of versions to return per page (pagination limit). Older versions are silently omitted if pagination is not followed; iterate with start and limit to retrieve full history. |
| `start`   | integer |          | `0`                                      | Zero-based index of the first version to return (pagination offset).                                                                                                                        |

***

### `Confluence Get Space By Id`

Integration name: **CONFLUENCE\_GET\_SPACE\_BY\_ID**

Tool to retrieve a Confluence space by its ID. Use when you need detailed metadata of a specific space. Space names are non-unique; use the numeric spaceId or spaceKey from the response for stable identification in downstream operations such as CONFLUENCE\_GET\_SPACE\_PROPERTIES, CONFLUENCE\_GET\_LABELS\_FOR\_SPACE, CONFLUENCE\_GET\_SPACE\_CONTENTS, and CONFLUENCE\_CREATE\_BLOGPOST.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                                                                                                                                |
| --------- | ------ | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"557060"` | The numeric space ID (e.g., `'557060'`). This is NOT the space key (e.g., `'GTS'`). Use CONFLUENCE\_GET\_SPACES to find a space's numeric ID from its key. |

***

### `Confluence Get Space Contents`

Integration name: **CONFLUENCE\_GET\_SPACE\_CONTENTS**

Tool to retrieve content in a Confluence space. Use when you need to list pages, blogposts, or attachments of a specific space key. Results are in `data.results` (not `data.page.results`). Paginate via `start/limit` (max 200/request); follow `response._links.next` until absent to avoid missing content. Only returns content accessible to the authenticated user — missing items may indicate permission restrictions. Atlassian Cloud enforces HTTP 429 rate limits; throttle to \~1–2 requests/second, honor Retry-After headers, and cap `start <= 1000` for large spaces. Construct item URLs by combining `data._links.base` with each item's `_links.webui`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example        | Description                                                                            |
| ------------ | ------- | :------: | -------------- | -------------------------------------------------------------------------------------- |
| `type`       | string  |          | `"page"`       | Type of content to return (e.g., `'page'`, `'blogpost'`, `'attachment'`).              |
| `limit`      | integer |          | `25`           | Maximum number of items to return per page. Confluence caps at 200.                    |
| `start`      | integer |          | `0`            | Zero-based index of the first item to return (pagination offset).                      |
| `status`     | string  |          | `"current"`    | Status of the content to return (`'current'`, `'trashed'`, `'draft'`, `'historical'`). |
| `spaceKey`   | string  |     ✅    | `"DOCS"`       | Key of the space to retrieve content from.                                             |
| `postingDay` | string  |          | `"2023-05-01"` | For blogposts, filter by publish date (ISO date, yyyy-MM-dd).                          |

***

### `Confluence Get Space Properties`

Integration name: **CONFLUENCE\_GET\_SPACE\_PROPERTIES**

Tool to get properties of a Confluence space. Use when you need to retrieve custom metadata or settings stored as space properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example               | Description                                                              |
| --------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------ |
| `id`      | string  |     ✅    | `"12345678"`          | ID of the space to get properties for.                                   |
| `key`     | array   |          | `["theme","sidebar"]` | Filter by property key(s). If not provided, returns all properties.      |
| `limit`   | integer |          | `25`                  | Maximum number of properties to return per page. Confluence caps at 200. |
| `start`   | integer |          | `0`                   | Zero-based index of the first item to return (pagination offset).        |

***

### `Confluence Get Spaces`

Integration name: **CONFLUENCE\_GET\_SPACES**

Tool to retrieve a paginated list of Confluence spaces with optional filtering. Paginate by incrementing `start` in steps of `limit` until fewer results than `limit` are returned. Results are scoped to spaces visible to the authenticated user; absent spaces may be restricted rather than nonexistent. Use `spaceKey` or numeric space ID (not display name) for stable identification in downstream calls. Combined filters apply as AND logic — relax filters before concluding a space is missing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                     | Description                                                                                                                                                                            |
| ---------- | ------- | :------: | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`     | string  |          | `"global"`                  | Type of space: `global` or `personal`.                                                                                                                                                 |
| `label`    | array   |          | `["release","engineering"]` | Filter by labels; spaces must have at least one of these labels.                                                                                                                       |
| `limit`    | integer |          | `25`                        | Maximum number of spaces to return per page. Confluence caps at 200.                                                                                                                   |
| `start`    | integer |          | `0`                         | Zero-based index of the first item to return (pagination offset).                                                                                                                      |
| `expand`   | array   |          | `["description","icon"]`    | Properties to expand in response (e.g., `description`, `icon`, `metadata`).                                                                                                            |
| `status`   | string  |          | `"current"`                 | Status of space: `current` (active) or `archived`.                                                                                                                                     |
| `spaceKey` | array   |          | `["ABC","DEF"]`             | Filter by space key(s); accepts one or more space keys. Accepts canonical space keys only, not display names; if only a display name is known, list all spaces and filter client-side. |

***

### `Confluence Get Tasks`

Integration name: **CONFLUENCE\_GET\_TASKS**

Tool to list Confluence tasks (action items) with filtering by assignee, creator, space, page, blog post, status, and dates. Use when you need to retrieve user action items without unreliable keyword searching for "TODO".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                              | Description                                                                                                                                   |
| --------------------- | ------- | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`               | integer |          | `25`                                 | Maximum number of tasks to return per page. Confluence caps at 250.                                                                           |
| `cursor`              | string  |          | —                                    | Opaque pagination cursor. Use the 'next' link from a previous response to continue.                                                           |
| `status`              | string  |          | `"complete"`                         | Filter tasks by status (e.g., `'complete'`, `'incomplete'`).                                                                                  |
| `page_id`             | —       |          | `123456`                             | Filter by page ID(s). Provide a single ID or a list of IDs.                                                                                   |
| `task_id`             | —       |          | `12345`                              | Filter by specific task ID(s). Provide a single ID or a list of IDs.                                                                          |
| `space_id`            | —       |          | `163984`                             | Filter by space ID(s). Provide a single ID or a list of IDs.                                                                                  |
| `created_by`          | —       |          | `"5d5b8c5e5c5e5c5e5c5e5c5e5c5e5c5e"` | Filter by task creator(s). Provide Atlassian account ID(s).                                                                                   |
| `assigned_to`         | —       |          | `"5d5b8c5e5c5e5c5e5c5e5c5e5c5e5c5e"` | Filter by task assignee(s). Provide Atlassian account ID(s).                                                                                  |
| `blogpost_id`         | —       |          | `987654`                             | Filter by blog post ID(s). Provide a single ID or a list of IDs.                                                                              |
| `body_format`         | string  |          | —                                    | Body representation to include in task results. Allowed values: `'storage'` (storage format) or `'atlas_doc_format'` (Atlas document format). |
| `completed_by`        | —       |          | `"5d5b8c5e5c5e5c5e5c5e5c5e5c5e"`     | Filter by who completed the task(s). Provide Atlassian account ID(s).                                                                         |
| `include_blank_tasks` | boolean |          | —                                    | Whether to include tasks that have no content or are blank.                                                                                   |

***

### `Confluence Get User Anonymous`

Integration name: **CONFLUENCE\_GET\_USER\_ANONYMOUS**

Tool to retrieve information about the anonymous user. Use when you need to obtain guest user details before unauthenticated interactions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Confluence Search Content`

Integration name: **CONFLUENCE\_SEARCH\_CONTENT**

Searches for content by filtering pages from the Confluence v2 API with intelligent ranking. Since the native search endpoint is deprecated, this action:

1. Fetches pages from the v2 pages endpoint with pagination (up to 300 pages)
2. Applies intelligent client-side filtering with relevance scoring
3. Returns results ranked by match quality (exact phrase > all words > partial matches)

NOTE: Only page titles are searched — queries matching only body content return no results. Results omit full body content and canonical URLs; use CONFLUENCE\_GET\_PAGE\_BY\_ID for complete page data. Cannot filter by author, date, or labels. Results reflect only pages accessible to the authenticated user. When multiple pages share similar titles, verify the correct page via spaceId or pageId before performing writes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example           | Description                                                                                                                                                                                                                                                                                                                             |
| ---------- | ------- | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | `25`              | Maximum number of results to return                                                                                                                                                                                                                                                                                                     |
| `query`    | string  |     ✅    | `"Donald Trump"`  | Search query to find matching pages. The search will look for this text in page titles with intelligent matching including: (1) Exact phrase matches (highest priority), (2) All words present anywhere in title (medium priority), (3) Partial word matches (lowest priority). Search is case-insensitive and supports multiple words. |
| `start`    | integer |          | `0`               | Starting index for pagination                                                                                                                                                                                                                                                                                                           |
| `expand`   | string  |          | `"space,version"` | Comma-separated list of properties to expand in the response                                                                                                                                                                                                                                                                            |
| `spaceKey` | string  |          | `"DOCS"`          | Limit search to a specific space by space key (will be added to CQL query) Results are not strictly scoped to this space; inspect spaceId in returned results to confirm scope.                                                                                                                                                         |

***

### `Confluence Search Users`

Integration name: **CONFLUENCE\_SEARCH\_USERS**

Searches for users using user-specific queries from the Confluence Query Language (CQL).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                    | Description                                                   |
| ----------- | ------- | :------: | ------------------------------------------ | ------------------------------------------------------------- |
| `limit`     | integer |          | `25`                                       | Maximum number of users per result to return                  |
| `cursor`    | string  |          | —                                          | Used for pagination. The cursor for the next page of results. |
| `accountId` | string  |          | `"712020:d844426ac4c41b0b5747ca18c540722"` | Filter by user account ID                                     |

***

### `Confluence Update Blogpost`

Integration name: **CONFLUENCE\_UPDATE\_BLOGPOST**

Tool to update a Confluence blog post's title or content. Use when you need to modify an existing blog post. Ensure you have the latest version number before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                             |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | ID of the blog post to update.                                          |
| `body`    | object |     ✅    | `{"storage":{"value":"<p>Content</p>"}}` | New content for the blog post body. Provide the body in storage format. |
| `title`   | string |     ✅    | `"Updated Blog Title"`                   | New title for the blog post.                                            |
| `status`  | string |          | `"current"`                              | Status of the blog post. Defaults to `'current'` if not provided.       |
| `spaceId` | string |     ✅    | `"SPACE123"`                             | ID of the space containing the blog post.                               |
| `version` | object |     ✅    | —                                        | Version object containing the new version number and optional metadata. |

***

### `Confluence Update Blogpost Property`

Integration name: **CONFLUENCE\_UPDATE\_BLOGPOST\_PROPERTY**

Tool to update a property of a specified blog post. Use when you need to modify custom metadata on a blog post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                               |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"6278fe1e-d18f-4b2c-8a1a-2c3d4e5f6g7h"` | ID of the Confluence blog post to update.                                                 |
| `value`      | string |     ✅    | `"{\"exampleKey\": \"exampleValue\"}"`   | New JSON string value for the specified property.                                         |
| `propertyId` | —      |     ✅    | `"8093697"`                              | The ID of the blog post property to update. Can be a numeric ID or a property key string. |

***

### `Confluence Update Content Property For Page By Id`

Integration name: **CONFLUENCE\_UPDATE\_CONTENT\_PROPERTY\_FOR\_PAGE\_BY\_ID**

Tool to update a content property on a Confluence page. Use when you need to modify an existing metadata property by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                     |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `value`      | string |     ✅    | `"{\"exampleKey\": \"exampleValue\"}"`   | New JSON string value for the specified property.                                               |
| `pageId`     | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | ID of the Confluence page to update the property on.                                            |
| `propertyId` | —      |     ✅    | `8093697`                                | ID of the content property to update on the page. Can be a numeric ID or a property key string. |

***

### `Confluence Update Content Property For Whiteboard By Id`

Integration name: **CONFLUENCE\_UPDATE\_CONTENT\_PROPERTY\_FOR\_WHITEBOARD\_BY\_ID**

Tool to update a content property on a whiteboard. Use when you need to modify metadata on a Confluence whiteboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                        | Description                                                                                           |
| -------------- | ------ | :------: | ------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `value`        | string |     ✅    | `"{\"status\": \"complete\"}"` | New JSON string value for the specified content property.                                             |
| `propertyId`   | —      |     ✅    | `8093697`                      | ID of the content property to update on the whiteboard. Can be a numeric ID or a property key string. |
| `whiteboardId` | string |     ✅    | `"abc123-whiteboard-id"`       | ID of the Confluence whiteboard containing the property to update.                                    |

***

### `Confluence Update Page`

Integration name: **CONFLUENCE\_UPDATE\_PAGE**

Tool to update an existing Confluence page, replacing the entire page content. Use when you need to modify existing documentation or content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| --------- | ------ | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"12345678"`              | ID of the page to update. Must be a string; convert from numeric IDs returned by CONFLUENCE\_GET\_PAGE\_BY\_ID before passing.                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `body`    | object |     ✅    | —                         | Updated content body of the page. Requires `'value'` (the content in the specified format) and `'representation'` (either `'storage'` for Confluence storage format/XHTML, or `'atlas_doc_format'` for Atlassian Document Format/ADF). Replaces the entire page content — always send complete desired content. Provide exactly one representation key (`storage`, `atlas_doc_format`, or `wiki`) whose value matches the `representation` field; mismatched or multiple keys cause validation errors. Storage format requires valid XHTML/XML; malformed markup causes validation errors. |
| `title`   | string |     ✅    | `"Updated Meeting Notes"` | Updated title of the page. IMPORTANT: Confluence enforces unique page titles within each space. If you change the title to one that already exists in the same space, the update will fail with a `page with this title already exists` error. To avoid this, either keep the existing title, choose a unique title, or first rename/delete the conflicting page.                                                                                                                                                                                                                          |
| `spaceId` | string |          | `"12345678"`              | ID of the space containing the page. Optional if the page's space doesn't need to be changed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `version` | object |     ✅    | —                         | Version information for the update. Must include `number` set to exactly current\_version + 1. Fetch the current version via CONFLUENCE\_GET\_PAGE\_BY\_ID before updating. On a 409 conflict, refetch the latest version and retry.                                                                                                                                                                                                                                                                                                                                                       |

***

### `Confluence Update Space Property`

Integration name: **CONFLUENCE\_UPDATE\_SPACE\_PROPERTY**

Tool to update a space property. Use when you need to modify custom metadata stored on a Confluence space (requires fetching the current property version first).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                | Description                                                                           |
| ------------ | ------- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------- |
| `value`      | string  |     ✅    | `"{\"exampleKey\": \"exampleValue\"}"` | New JSON string value for the specified space property.                               |
| `spaceId`    | integer |     ✅    | `1234567890`                           | The ID of the space the property belongs to.                                          |
| `propertyId` | —       |     ✅    | `1234567890`                           | The ID of the space property to update. Can be a numeric ID or a property key string. |

***

### `Confluence Update Task`

Integration name: **CONFLUENCE\_UPDATE\_TASK**

Tool to update a Confluence task status. Use when you need to mark tasks as complete or incomplete in workflows or dashboards.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example      | Description                            |
| ------------- | ------ | :------: | ------------ | -------------------------------------- |
| `id`          | string |     ✅    | `"123456"`   | ID of the task to update.              |
| `status`      | string |     ✅    | `"complete"` | Status of the task.                    |
| `body_format` | string |          | `"storage"`  | Optional body format for the response. |


# Contentful

Your Toolhouse AI Worker can connect to Contentful using 106 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](https://toolhouse.app/auth-connections?authkit_slugs=contentful).

## Tools (106)

### `Contentful Activate Content Type`

Integration name: **CONTENTFUL\_ACTIVATE\_CONTENT\_TYPE**

Activates (publishes) a content type in Contentful. Use this to make a content type available for creating entries. Requires the current version number for optimistic locking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                    | Description                                                                                                                     |
| ----------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `version`         | integer |     ✅    | `2`                        | Current version number of the content type (required for optimistic locking). This is sent via the X-Contentful-Version header. |
| `space_id`        | string  |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the content type                                                                                     |
| `environment_id`  | string  |     ✅    | `"master"`                 | ID of the environment containing the content type (typically 'master')                                                          |
| `content_type_id` | string  |     ✅    | `"7ixuRKZGRD7whAhV9ptGx8"` | ID of the content type to activate (publish)                                                                                    |

***

### `Contentful Archive Asset`

Integration name: **CONTENTFUL\_ARCHIVE\_ASSET**

Tool to archive an asset in Contentful. Use when you need to archive an asset to remove it from active use without deleting it permanently.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                    | Description                                                                                                 |
| ---------------------- | ------- | :------: | -------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `asset_id`             | string  |     ✅    | `"1CcucbFAomGhaHj6aIHamJ"` | ID of the asset to archive                                                                                  |
| `space_id`             | string  |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the asset                                                                        |
| `environment_id`       | string  |     ✅    | `"master"`                 | ID of the environment containing the asset (typically 'master')                                             |
| `x_contentful_version` | integer |          | `1`                        | Version number of the asset to archive. If not provided, the current version will be fetched automatically. |

***

### `Contentful Archive Entry`

Integration name: **CONTENTFUL\_ARCHIVE\_ENTRY**

Tool to archive an entry in Contentful. Use when you need to move an entry to archived status. The entry must not be currently published, and you may need to provide the X-Contentful-Version header matching the entry's current version.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                   | Description                                                                                                 |
| ---------------------- | ------- | :------: | ------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `entry_id`             | string  |     ✅    | `"eVhywO1hQ7UHsFinvj4Uq"` | ID of the entry to archive                                                                                  |
| `space_id`             | string  |     ✅    | `"oducbj6n3pdj"`          | ID of the space containing the entry                                                                        |
| `environment_id`       | string  |     ✅    | `"master"`                | ID of the environment containing the entry (typically 'master')                                             |
| `X-Contentful-Version` | integer |          | `1`                       | Version of the entry to archive. Required for version control. Use the current version number of the entry. |

***

### `Contentful Archive Release`

Integration name: **CONTENTFUL\_ARCHIVE\_RELEASE**

Tool to archive a release in Contentful. Use when you need to lock a release to prevent modifications. An archived release cannot be edited until unarchived. Requires the current version number for optimistic locking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                    | Description                                                                         |
| ---------------- | ------- | :------: | -------------------------- | ----------------------------------------------------------------------------------- |
| `version`        | integer |     ✅    | `1`                        | Current version of the release for optimistic locking (X-Contentful-Version header) |
| `space_id`       | string  |     ✅    | `"s3cr4njreqmd"`           | The space identifier                                                                |
| `release_id`     | string  |     ✅    | `"3IiJwbxqFXAQ2KSIa6wvZ7"` | The release identifier to archive                                                   |
| `environment_id` | string  |     ✅    | `"master"`                 | The environment identifier (typically 'master')                                     |

***

### `Contentful Create App Definitions Keys`

Integration name: **CONTENTFUL\_CREATE\_APP\_DEFINITIONS\_KEYS**

Tool to generate an app signing key for a Contentful app definition. Use when you need to create cryptographic keys for app authentication. Either provide generate=true to let Contentful create a key pair (returns private key), or provide a pre-generated public key in JWK format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                    | Description                                                                                                                                         |
| ------------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `jwk`               | object  |          | —                          | JSON Web Key object containing a pre-generated public key to upload. Either this field or generate must be provided.                                |
| `generate`          | boolean |          | —                          | Set to true to let Contentful generate the key pair. If true, the response will include the private key. Either this field or jwk must be provided. |
| `organization_id`   | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition                                                                                                |
| `app_definition_id` | string  |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition to create a key for                                                                                                        |

***

### `Contentful Create Content Type`

Integration name: **CONTENTFUL\_CREATE\_CONTENT\_TYPE**

Tool to create a new content type in a Contentful environment. Use when you need to define a new content structure with custom fields. Content types define the schema for entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                             | Description                                                                                                                                   |
| ---------------- | ------ | :------: | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`           | string |     ✅    | `"Blog Post"`                       | Name of the content type                                                                                                                      |
| `fields`         | array  |     ✅    | —                                   | Array of field definitions for the content type. A content type can have up to 50 fields                                                      |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`                    | ID of the space where the content type will be created                                                                                        |
| `description`    | string |          | `"A blog post with title and body"` | Description of the content type explaining its purpose                                                                                        |
| `displayField`   | string |          | `"title"`                           | ID of the field to use as the display field (entry title) for this content type. Must match the 'id' of one of the fields in the fields array |
| `environment_id` | string |     ✅    | `"master"`                          | ID of the environment where the content type will be created (typically 'master')                                                             |

***

### `Contentful Create Entry Task`

Integration name: **CONTENTFUL\_CREATE\_ENTRY\_TASK**

Tool to create a task on a Contentful entry. Use when you need to create workflow tasks for collaboration on entries. Tasks can be assigned to users and are used for managing content review and approval workflows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                          | Description                                                                       |
| ---------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------- |
| `body`           | string |     ✅    | `"Review and verify this entry for API testing"` | Description or body content of the task                                           |
| `status`         | string |     ✅    | `"active"`                                       | Status of the task, typically 'active' for new tasks                              |
| `entry_id`       | string |     ✅    | `"36JqANELdH2eIkNdChgNlg"`                       | ID of the entry to create the task for                                            |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`                                 | ID of the space containing the entry                                              |
| `assignedTo`     | object |     ✅    | —                                                | User to assign the task to, with sys.id, sys.linkType='User', and sys.type='Link' |
| `environment_id` | string |     ✅    | `"master"`                                       | ID of the environment containing the entry (typically 'master')                   |

***

### `Contentful Create Environment`

Integration name: **CONTENTFUL\_CREATE\_ENVIRONMENT**

Tool to create a new environment within a Contentful space. Use when you need to set up a new environment for content management, such as staging or production. Optionally clone from an existing source environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                 | Description                                                                                                                                                                      |
| ----------------------- | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                  | string |     ✅    | `"Staging Environment"` | Name of the new environment                                                                                                                                                      |
| `space_id`              | string |     ✅    | `"example_space_id"`    | ID of the space where the environment will be created                                                                                                                            |
| `source_environment_id` | string |          | `"master"`              | ID of the source environment to copy content from. If provided, the new environment will be cloned from this environment. If not provided, an empty environment will be created. |

***

### `Contentful Create Organizations App Def Access Grants`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_APP\_DEF\_ACCESS\_GRANTS**

Creates an access grant for an app definition to allow organizations to install the app. Use when you need to grant installation permissions for an app to specific organizations or all organizations (marketplace apps).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                                                       |
| ------------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------- |
| `grantee_id`        | string |     ✅    | `"all"`                    | ID of the organization to grant access to, or 'all' to allow all organizations to install the app |
| `grantee_type`      | string |     ✅    | `"Organization"`           | Type of grantee. Must be 'Organization'                                                           |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization that owns the app definition                                           |
| `app_definition_id` | string |     ✅    | `"2u73EcCRI8Tmhp7qrNQyFi"` | The ID of the app definition to grant access to                                                   |

***

### `Contentful Create Organizations App Definitions`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_APP\_DEFINITIONS**

Tool to create a new app definition in a Contentful organization. Use when you need to register a new app that can be installed into space environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                          | Description                                                             |
| ----------------- | ------ | :------: | -------------------------------- | ----------------------------------------------------------------------- |
| `src`             | string |          | `"https://example.com/app.html"` | URL where the root HTML document of the app can be found                |
| `name`            | string |     ✅    | `"Hello world!"`                 | Name of the app definition                                              |
| `locations`       | array  |          | `[{"location":"entry-sidebar"}]` | Locations where the app can be installed and rendered within Contentful |
| `parameters`      | object |          | —                                | Model for app parameters configuration.                                 |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`       | The ID of the organization where the app definition will be created     |

***

### `Contentful Create Organizations App Definitions Actions`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_APP\_DEFINITIONS\_ACTIONS**

Tool to create an action for a Contentful app definition. Use when you need to define actions that your app can perform, such as endpoint invocations or function calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                        | Description                                                                                                                                                            |
| ------------------- | ------ | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`               | string |          | `"https://example.com/action"` | HTTPS URL for the endpoint (required when type is endpoint). Must be a valid HTTPS URL.                                                                                |
| `name`              | string |     ✅    | `"Test Notification Action"`   | Name of the action to create                                                                                                                                           |
| `type`              | string |     ✅    | —                              | Type of action - must be one of: endpoint (for HTTP endpoints), function (for Contentful functions), or function-invocation (for function invocations)                 |
| `category`          | string |     ✅    | `"Notification.v1.0"`          | Category ID from available categories (e.g., Entries.v1.0, Notification.v1.0). Use get\_organizations\_app\_actions\_categories action to retrieve valid category IDs. |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`     | ID of the organization containing the app definition                                                                                                                   |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"`     | ID of the app definition to create an action for                                                                                                                       |

***

### `Contentful Create Organizations Invitations`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_INVITATIONS**

Create an invitation to an organization in Contentful (alpha feature). Use this to invite new users to join an organization with a specified role.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                         |
| ----------------- | ------ | :------: | -------------------------- | --------------------------------------------------- |
| `role`            | string |          | `"developer"`              | Enum for invitation role values.                    |
| `email`           | string |     ✅    | `"testuser@example.com"`   | The email address of the person being invited       |
| `lastName`        | string |          | `"User"`                   | The invitee's last name                             |
| `firstName`       | string |          | `"Test"`                   | The invitee's first name                            |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization to create the invitation for |

***

### `Contentful Create Organizations Security Contacts`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_SECURITY\_CONTACTS**

Creates a security contact for a specific organization. Use when you need to add an email address to receive security notifications for the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                                                                          |
| ----------------- | ------ | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `email`           | string |     ✅    | `"security@example.com"`   | Email address for the security contact. This email will receive security-related notifications for the organization. |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to create a security contact for                                                          |

***

### `Contentful Create Organizations Taxonomy Concepts`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_TAXONOMY\_CONCEPTS**

Tool to create a new taxonomy concept in a Contentful organization. Use when you need to add a concept for classifying and organizing content within an organization's taxonomy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                    | Description                                                                                                              |
| ---------------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `uri`            | string |          | `"http://example.com/concepts/technology"` | Optional globally unique identifier (URI) for the concept                                                                |
| `altLabels`      | object |          | `{"en-US":["Tech","IT"]}`                  | Alternative labels for the concept with locale as key and array of strings as value (e.g., {'en-US': \['Tech', 'IT']})   |
| `notations`      | array  |          | `["CODE-001","TECH-A"]`                    | Formal designations like classification codes                                                                            |
| `prefLabel`      | object |     ✅    | `{"en-US":"Technology"}`                   | The preferred label for the concept with locale as key (e.g., {'en-US': 'Technology'}). At least one locale is required. |
| `hiddenLabels`   | object |          | `{"en-US":["Internal Term"]}`              | Hidden labels for searching with locale as key and array of strings as value (e.g., {'en-US': \['Hidden1']})             |
| `organizationId` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                 | The organization ID to create the taxonomy concept in                                                                    |

***

### `Contentful Create Organizations Taxonomy Concept Schemes`

Integration name: **CONTENTFUL\_CREATE\_ORGANIZATIONS\_TAXONOMY\_CONCEPT\_SCHEMES**

Tool to create a new taxonomy concept scheme in an organization. Use when you need to establish a new taxonomy structure or classification system for organizing content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                             | Description                                                                                                                                                                                  |
| ----------------- | ------ | :------: | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uri`             | string |          | `"https://example.com/taxonomy/product-categories"` | Optional URI identifier for the concept scheme                                                                                                                                               |
| `prefLabel`       | object |     ✅    | `{"en-US":"Product Categories"}`                    | Localized preferred label for the concept scheme. Each key is a locale code (e.g., 'en-US') and value is the label text (e.g., {'en-US': 'Product Categories'})                              |
| `definition`      | object |          | `{"en-US":"A classification scheme for products"}`  | Localized definition/description of the concept scheme. Each key is a locale code (e.g., 'en-US') and value is the definition text (e.g., {'en-US': 'A classification scheme for products'}) |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                          | The ID of the organization to create the concept scheme in                                                                                                                                   |

***

### `Contentful Create Release`

Integration name: **CONTENTFUL\_CREATE\_RELEASE**

Tool to create a new release in Contentful. Use when you need to group entries and assets into a release for coordinated publishing or tracking. Requires at least one entity to be specified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                           | Description                                                                  |
| ---------------- | ------ | :------: | --------------------------------- | ---------------------------------------------------------------------------- |
| `title`          | string |     ✅    | `"Test Release API Verification"` | Title of the release                                                         |
| `entities`       | object |     ✅    | —                                 | Collection of entities (entries/assets) to include in the release            |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`                  | ID of the space where the release will be created                            |
| `environment_id` | string |     ✅    | `"master"`                        | ID of the environment where the release will be created (typically 'master') |

***

### `Contentful Create Spaces Api Keys`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_API\_KEYS**

Tool to create a new Delivery API key for a Contentful space. Use when you need to generate new API credentials for accessing content delivery. The created key provides access to specified environments within the space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                             | Description                                                                                                                                   |
| -------------- | ------ | :------: | ------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string |     ✅    | `"Example API Key"`                                                 | Name for the new API key. This helps identify the key's purpose                                                                               |
| `space_id`     | string |     ✅    | `"oducbj6n3pdj"`                                                    | ID of the space to create the API key in                                                                                                      |
| `description`  | string |          | —                                                                   | Optional description for the API key to explain its purpose or usage                                                                          |
| `environments` | array  |     ✅    | `[{"sys":{"id":"staging","type":"Link","linkType":"Environment"}}]` | List of environments this API key will have access to. Each environment is specified as a link object with sys.id, sys.type, and sys.linkType |

***

### `Contentful Create Spaces Environments Assets`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_ENVIRONMENTS\_ASSETS**

Tool to create a new asset in a Contentful space environment. Use when you need to upload files like images, videos, or documents. After creation, the asset must be processed before it's available, and you may need to publish it to make it publicly accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                                                         |
| ---------------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------- |
| `fields`         | object |     ✅    | —                | Asset fields containing file information and optional title/description with locale-specific values |
| `metadata`       | object |          | —                | Model for asset metadata.                                                                           |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"` | ID of the space where the asset will be created                                                     |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment where the asset will be created (typically 'master')                          |

***

### `Contentful Create Spaces Environments Entries`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_ENVIRONMENTS\_ENTRIES**

Tool to create a new entry in a Contentful space environment. Use when you need to add new content entries. Requires specifying the content type ID via X-Contentful-Content-Type header, and providing fields organized by locale.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type   | Required | Example                                     | Description                                                                                                             |
| --------------------------- | ------ | :------: | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `fields`                    | object |     ✅    | `{"title":{"en-US":"Test Entry from API"}}` | Entry fields organized by locale. Structure: {fieldName: {locale: value}}. Example: {'title': {'en-US': 'Hello World'}} |
| `metadata`                  | object |          | —                                           | Entry metadata including tags. Example: {'tags': \[{'sys': {'id': 'nyCampaign', 'linkType': 'Tag', 'type': 'Link'}}]}   |
| `space_id`                  | string |     ✅    | `"oducbj6n3pdj"`                            | ID of the space where the entry will be created                                                                         |
| `environment_id`            | string |     ✅    | `"master"`                                  | ID of the environment where the entry will be created (typically 'master')                                              |
| `X-Contentful-Content-Type` | string |     ✅    | `"testArticle"`                             | Content type ID that defines the structure of the entry being created. Must be a valid content type ID from your space. |

***

### `Contentful Create Spaces Environments Entries Comments`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_ENVIRONMENTS\_ENTRIES\_COMMENTS**

Tool to create a comment on an entry in Contentful. Use when you need to add a comment to a specific entry. Returns the created comment with status 'active' by default.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                                               | Description                                                     |
| ---------------- | ------ | :------: | --------------------------------------------------------------------- | --------------------------------------------------------------- |
| `body`           | string |     ✅    | `"This is a test comment created via API for verification purposes."` | The comment text content to create                              |
| `entry_id`       | string |     ✅    | `"eVhywO1hQ7UHsFinvj4Uq"`                                             | ID of the entry to comment on                                   |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`                                                      | ID of the space containing the entry                            |
| `environment_id` | string |     ✅    | `"master"`                                                            | ID of the environment containing the entry (typically 'master') |

***

### `Contentful Create Spaces Environments Extensions`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_ENVIRONMENTS\_EXTENSIONS**

Tool to create a new UI extension within a Contentful space and environment. Use when you need to add custom field editors or sidebar widgets to enhance content editing capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                                             |
| ---------------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"` | ID of the space where the extension will be created                                     |
| `extension`      | object |     ✅    | —                | Extension configuration object containing name, source, field types, and other settings |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment where the extension will be created (typically 'master')          |

***

### `Contentful Create Spaces Scheduled Actions`

Integration name: **CONTENTFUL\_CREATE\_SPACES\_SCHEDULED\_ACTIONS**

Tool to create a scheduled action for publishing or unpublishing entries/assets in Contentful. Use when you need to schedule an automatic publish or unpublish operation at a specific future time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                    |
| -------------- | ------ | :------: | ---------------- | -------------------------------------------------------------- |
| `action`       | string |     ✅    | `"publish"`      | Type of action to schedule (publish or unpublish)              |
| `entity`       | object |     ✅    | —                | Reference to the entry or asset to perform the action on       |
| `space_id`     | string |     ✅    | `"oducbj6n3pdj"` | ID of the space where the scheduled action will be created     |
| `environment`  | object |     ✅    | —                | Reference to the environment where the action will be executed |
| `scheduledFor` | object |     ✅    | —                | Timestamp specification for when to execute the action         |

***

### `Contentful Delete Asset`

Integration name: **CONTENTFUL\_DELETE\_ASSET**

Deletes an asset by ID from a Contentful environment. Use this when you need to permanently remove an asset. Note: If Contentful rejects deletion for published or archived assets, you must unpublish first using the appropriate CMA endpoints.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                     |
| ---------------- | ------ | :------: | -------------------------- | --------------------------------------------------------------- |
| `asset_id`       | string |     ✅    | `"5Bw38nJoBckG6hS574RWfx"` | ID of the asset to delete                                       |
| `space_id`       | string |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the asset                            |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the asset (typically 'master') |

***

### `Contentful Delete Content Type`

Integration name: **CONTENTFUL\_DELETE\_CONTENT\_TYPE**

Deletes a content type by ID from a Contentful environment. Use this when you need to permanently remove a content type. Note: Content types must be unpublished before deletion if they are published, and must have no associated entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                   | Description                                                            |
| ----------------- | ------ | :------: | ------------------------- | ---------------------------------------------------------------------- |
| `space_id`        | string |     ✅    | `"s3cr4njreqmd"`          | ID of the space containing the content type                            |
| `environment_id`  | string |     ✅    | `"master"`                | ID of the environment containing the content type (typically 'master') |
| `content_type_id` | string |     ✅    | `"testDeleteContentType"` | ID of the content type to delete                                       |

***

### `Contentful Delete Entry`

Integration name: **CONTENTFUL\_DELETE\_ENTRY**

Deletes an entry by ID from a Contentful environment. Use this when you need to permanently remove an entry. Note: If Contentful rejects deletion for published or archived entries, you must unpublish or unarchive first using the appropriate CMA endpoints.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example              | Description                                                     |
| ---------------- | ------ | :------: | -------------------- | --------------------------------------------------------------- |
| `entry_id`       | string |     ✅    | `"example_entry_id"` | ID of the entry to delete                                       |
| `space_id`       | string |     ✅    | `"example_space_id"` | ID of the space containing the entry                            |
| `environment_id` | string |     ✅    | `"master"`           | ID of the environment containing the entry (typically 'master') |

***

### `Contentful Delete Environment`

Integration name: **CONTENTFUL\_DELETE\_ENVIRONMENT**

Deletes an environment by ID from a Contentful space. Use this when you need to permanently remove an environment. Note: You cannot delete the 'master' environment or an environment with active aliases.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                               |
| ---------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"s3cr4njreqmd"` | ID of the space containing the environment                                |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment to delete (e.g., 'master' or custom environment ID) |

***

### `Contentful Delete Extension`

Integration name: **CONTENTFUL\_DELETE\_EXTENSION**

Deletes an extension by ID from a Contentful environment. Use this when you need to permanently remove an extension.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                         |
| ---------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the extension                            |
| `extension_id`   | string |     ✅    | `"3mjyHM3AmDoDjOpRUdALwM"` | ID of the extension to delete                                       |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the extension (typically 'master') |

***

### `Contentful Delete Organizations App Def Event Subscription`

Integration name: **CONTENTFUL\_DELETE\_ORGANIZATIONS\_APP\_DEF\_EVENT\_SUBSCRIPTION**

Deletes an app event subscription from a Contentful organization. Use this when you need to remove event subscriptions from an app definition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                    |
| ------------------- | ------ | :------: | -------------------------- | -------------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition           |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition to delete the event subscription from |

***

### `Contentful Delete Organizations App Definitions Details`

Integration name: **CONTENTFUL\_DELETE\_ORGANIZATIONS\_APP\_DEFINITIONS\_DETAILS**

Tool to delete app definition details for an organization in Contentful. Use when you need to remove app definition details from an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                              |
| ------------------- | ------ | :------: | -------------------------- | -------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition     |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition whose details should be deleted |

***

### `Contentful Delete Organizations App Definitions Keys`

Integration name: **CONTENTFUL\_DELETE\_ORGANIZATIONS\_APP\_DEFINITIONS\_KEYS**

Tool to delete an app key from an app definition in a Contentful organization. Use when you need to permanently remove an app key.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                         | Description                                          |
| ------------------- | ------ | :------: | ----------------------------------------------- | ---------------------------------------------------- |
| `key_kid`           | string |     ✅    | `"1Ut99jPN_e6kot2N49Ro60t3sTCiAtcdgZiqY2zipb8"` | Key ID (kid) of the app key to delete                |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                      | ID of the organization containing the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"`                      | ID of the app definition containing the key          |

***

### `Contentful Delete Organizations App Def Signing Secret`

Integration name: **CONTENTFUL\_DELETE\_ORGANIZATIONS\_APP\_DEF\_SIGNING\_SECRET**

Tool to remove the current app signing secret from an app definition. Use when you need to delete an existing signing secret for security or rotation purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                     |
| ------------------- | ------ | :------: | -------------------------- | --------------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition            |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition whose signing secret should be removed |

***

### `Contentful Delete Organizations Security Contacts`

Integration name: **CONTENTFUL\_DELETE\_ORGANIZATIONS\_SECURITY\_CONTACTS**

Deletes a security contact from a Contentful organization. Use this when you need to remove a security contact from an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                              |
| ----------------- | ------ | :------: | -------------------------- | ---------------------------------------- |
| `contact_id`      | string |     ✅    | `"032rm42WuoqemsuCP6R0d7"` | The ID of the security contact to delete |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization               |

***

### `Contentful Delete Release`

Integration name: **CONTENTFUL\_DELETE\_RELEASE**

Deletes a release by ID from a Contentful environment. Use this when you need to permanently remove a release.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                       |
| ---------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the release                            |
| `releases_id`    | string |     ✅    | `"52zMNW62vuupwBK1veGGYG"` | ID of the release to delete                                       |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the release (typically 'master') |

***

### `Contentful Delete Scheduled Action`

Integration name: **CONTENTFUL\_DELETE\_SCHEDULED\_ACTION**

Cancels a scheduled action by ID in Contentful. Use this when you need to cancel a scheduled publish, unpublish, or other scheduled operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                    | Description                                                                                                         |
| --------------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `space_id`            | string |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the scheduled action                                                                     |
| `environment_sys_id`  | string |     ✅    | `"master"`                 | ID of the environment (typically 'master'). Required to identify which environment the scheduled action belongs to. |
| `scheduled_action_id` | string |     ✅    | `"34mJ5kfkagNoQdO5q28Uma"` | ID of the scheduled action to cancel                                                                                |

***

### `Contentful Delete Space Membership`

Integration name: **CONTENTFUL\_DELETE\_SPACE\_MEMBERSHIP**

Deletes a space membership by ID from a Contentful space. Use this when you need to remove a user's access to a space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                    | Description                               |
| --------------------- | ------ | :------: | -------------------------- | ----------------------------------------- |
| `space_id`            | string |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the membership |
| `space_membership_id` | string |     ✅    | `"44JMMLWjG39JFB8qYgjd7O"` | ID of the space membership to delete      |

***

### `Contentful Delete Spaces Api Keys`

Integration name: **CONTENTFUL\_DELETE\_SPACES\_API\_KEYS**

Tool to delete a single Delivery API key from a Contentful space. Use when you need to permanently remove an API key. This action is useful for revoking access credentials when they are no longer needed or have been compromised.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                    | Description                                                                                                                       |
| ---------------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `space_id`             | string  |     ✅    | `"s3cr4njreqmd"`           | ID of the space containing the API key                                                                                            |
| `api_key_id`           | string  |     ✅    | `"032rm3escXRfRqm1w21rES"` | ID of the API key to delete                                                                                                       |
| `x_contentful_version` | integer |          | `1`                        | Version number for optimistic locking. If provided, the API key will only be deleted if this version matches the current version. |

***

### `Contentful Delete Spaces Upload`

Integration name: **CONTENTFUL\_DELETE\_SPACES\_UPLOAD**

Deletes an upload by ID from a Contentful space. Use this when you need to permanently remove an upload. Note: This operation uses the upload.contentful.com base URL instead of the standard API URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                   | Description                           |
| ----------- | ------ | :------: | ------------------------- | ------------------------------------- |
| `space_id`  | string |     ✅    | `"oducbj6n3pdj"`          | ID of the space containing the upload |
| `upload_id` | string |     ✅    | `"A6KQl2JrqjkFkQ5OL1C6e"` | ID of the upload to delete            |

***

### `Contentful Delete Tag`

Integration name: **CONTENTFUL\_DELETE\_TAG**

Deletes a tag by ID from a Contentful environment. Use this when you need to permanently remove a tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example         | Description                                                          |
| ---------------------- | ------- | :------: | --------------- | -------------------------------------------------------------------- |
| `tag_id`               | string  |     ✅    | `"testTag2"`    | ID of the tag to delete                                              |
| `space_id`             | string  |     ✅    | `"my_space_id"` | ID of the space containing the tag                                   |
| `environment_id`       | string  |     ✅    | `"master"`      | ID of the environment containing the tag (typically 'master')        |
| `x_contentful_version` | integer |          | `1`             | Version of the tag to delete (optional, used for optimistic locking) |

***

### `Contentful Get App Bundle`

Integration name: **CONTENTFUL\_GET\_APP\_BUNDLE**

Retrieves details of a specific app bundle by its ID. Use this to get information about an app bundle including its files, metadata, and associated app definition within a Contentful organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                          |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------------------------------- |
| `bundle_id`         | string |     ✅    | `"tYbPxzOG3XaR4k2aRnvxI"`  | ID of the app bundle to retrieve                     |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition containing the bundle       |

***

### `Contentful Get App Definition`

Integration name: **CONTENTFUL\_GET\_APP\_DEFINITION**

Tool to retrieve details of a specific app definition by its ID. Use when you need information about an app definition in an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                      |
| ------------------- | ------ | :------: | -------------------------- | ------------------------------------------------ |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The organization ID that owns the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The app definition ID to retrieve                |

***

### `Contentful Get Asset`

Integration name: **CONTENTFUL\_GET\_ASSET**

Tool to retrieve a single asset from a Contentful environment by its ID. Use when you need to get details about a specific asset including its file information, metadata, and publication status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                     |
| ---------------- | ------ | :------: | -------------------------- | --------------------------------------------------------------- |
| `asset_id`       | string |     ✅    | `"2Cry0DIW629eUrVc9gZQHo"` | ID of the asset to retrieve                                     |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the asset                            |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the asset (typically 'master') |

***

### `Contentful Get Content Types`

Integration name: **CONTENTFUL\_GET\_CONTENT\_TYPES**

Retrieves all content types in a Contentful environment. Use this to discover the structure and fields defined for different content types. Content types define the schema for entries and are essential for understanding what data can be stored in the environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example          | Description                                                                            |
| ---------------- | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------- |
| `skip`           | integer |          | —                | Number of content types to skip for pagination                                         |
| `limit`          | integer |          | —                | Maximum number of content types to return (default: 100, max: 1000)                    |
| `order`          | string  |          | —                | Order content types by field (e.g. 'sys.createdAt' or '-sys.createdAt' for descending) |
| `space_id`       | string  |     ✅    | `"oducbj6n3pdj"` | ID of the space containing the content types                                           |
| `environment_id` | string  |     ✅    | `"master"`       | ID of the environment containing the content types (typically 'master')                |

***

### `Contentful Get Content Type Snapshot`

Integration name: **CONTENTFUL\_GET\_CONTENT\_TYPE\_SNAPSHOT**

Tool to retrieve a snapshot of a content type by snapshot ID. Use when you need to view the state of a content type at a specific point in time. Snapshots are only available for content types in the master environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                     |
| ----------------- | ------ | :------: | -------------------------- | ----------------------------------------------- |
| `space_id`        | string |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the content type     |
| `snapshot_id`     | string |     ✅    | `"69D3tgO2qwAw6bPAX8jxn3"` | ID of the snapshot to retrieve                  |
| `content_type_id` | string |     ✅    | `"testArticle"`            | ID of the content type to retrieve snapshot for |

***

### `Contentful Get Content Type Snapshots`

Integration name: **CONTENTFUL\_GET\_CONTENT\_TYPE\_SNAPSHOTS**

Tool to get all snapshots of a content type in Contentful. Use when you need to retrieve the history of changes made to a content type structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example          | Description                                                     |
| ----------------- | ------- | :------: | ---------------- | --------------------------------------------------------------- |
| `skip`            | integer |          | —                | Number of snapshots to skip for pagination                      |
| `limit`           | integer |          | —                | Maximum number of snapshots to return (default: 100, max: 1000) |
| `space_id`        | string  |     ✅    | `"oducbj6n3pdj"` | ID of the space containing the content type                     |
| `environment_id`  | string  |     ✅    | `"master"`       | ID of the environment (typically 'master')                      |
| `content_type_id` | string  |     ✅    | `"testArticle"`  | ID of the content type to retrieve snapshots for                |

***

### `Contentful Get Editor Interface`

Integration name: **CONTENTFUL\_GET\_EDITOR\_INTERFACE**

Tool to retrieve the editor interface configuration for a content type. Use when you need to see how fields are configured in the Contentful UI. The editor interface is automatically created when a content type is first activated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example              | Description                                                            |
| ----------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------- |
| `space_id`        | string |     ✅    | `"example_space_id"` | ID of the space containing the content type                            |
| `environment_id`  | string |     ✅    | `"master"`           | ID of the environment containing the content type (typically 'master') |
| `content_type_id` | string |     ✅    | `"testArticle"`      | ID of the content type to get the editor interface for                 |

***

### `Contentful Get Entry Comment`

Integration name: **CONTENTFUL\_GET\_ENTRY\_COMMENT**

Tool to retrieve a specific comment from an entry in Contentful. Use when you need to get details of a comment including its body, status, author, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                     |
| ---------------- | ------ | :------: | -------------------------- | --------------------------------------------------------------- |
| `entry_id`       | string |     ✅    | `"36JqANELdH2eIkNdChgNlg"` | ID of the entry containing the comment                          |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the entry                            |
| `comment_id`     | string |     ✅    | `"7l6fAw5NDGXkdBOpqesW4X"` | ID of the comment to retrieve                                   |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the entry (typically 'master') |

***

### `Contentful Get Entry References`

Integration name: **CONTENTFUL\_GET\_ENTRY\_REFERENCES**

Tool to retrieve references to a specific entry in Contentful. Use when you need to find all entries that reference a particular entry. The include parameter controls how many levels of nested references are returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                    | Description                                                                                                  |
| ---------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `include`        | integer |     ✅    | `1`                        | Level of referenced content to include in the response (0-10). Higher values include more nested references. |
| `entry_id`       | string  |     ✅    | `"36JqANELdH2eIkNdChgNlg"` | ID of the entry to get references for                                                                        |
| `space_id`       | string  |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the entry                                                                         |
| `environment_id` | string  |     ✅    | `"master"`                 | ID of the environment containing the entry (typically 'master')                                              |

***

### `Contentful Get Entry Snapshots`

Integration name: **CONTENTFUL\_GET\_ENTRY\_SNAPSHOTS**

Tool to get all snapshots of an entry in Contentful. Use when you need to retrieve the history of changes made to an entry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                    | Description                                                     |
| ---------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------- |
| `skip`           | integer |          | —                          | Number of snapshots to skip for pagination                      |
| `limit`          | integer |          | —                          | Maximum number of snapshots to return (default: 100, max: 1000) |
| `entry_id`       | string  |     ✅    | `"36JqANELdH2eIkNdChgNlg"` | ID of the entry to retrieve snapshots for                       |
| `space_id`       | string  |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the entry                            |
| `environment_id` | string  |     ✅    | `"master"`                 | ID of the environment (typically 'master')                      |

***

### `Contentful Get Environment`

Integration name: **CONTENTFUL\_GET\_ENVIRONMENT**

Tool to retrieve details of a specific environment by its ID within a space. Use when you need information about a single environment in Contentful.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example              | Description                                |
| ---------------- | ------ | :------: | -------------------- | ------------------------------------------ |
| `space_id`       | string |     ✅    | `"example_space_id"` | ID of the space containing the environment |
| `environment_id` | string |     ✅    | `"master"`           | ID of the environment to retrieve          |

***

### `Contentful Get Organization`

Integration name: **CONTENTFUL\_GET\_ORGANIZATION**

Retrieves details of a specific organization by its ID. Use this when you need to get information about an organization that an admin or owner has access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                            |
| ----------------- | ------ | :------: | -------------------------- | -------------------------------------- |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve |

***

### `Contentful Get Organization Access Grant`

Integration name: **CONTENTFUL\_GET\_ORGANIZATION\_ACCESS\_GRANT**

Retrieves the access grant status for a specific organization. Use this to verify whether the authenticated user has access to a specific organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                      |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization to check access grant for |

***

### `Contentful Get Organizations`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS**

Tool to get all organizations an account has access to in Contentful. Use when you need to list available organizations for the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                         |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------- |
| `skip`    | integer |          | —       | Number of organizations to skip for pagination                      |
| `limit`   | integer |          | —       | Maximum number of organizations to return (default: 100, max: 1000) |

***

### `Contentful Get Organizations Ai Providers`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_AI\_PROVIDERS**

Retrieves all AI providers configured for an organization in Contentful. Use this to list AI service providers (OpenAI, AWS Bedrock, Google Gemini, etc.) that have been configured for the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                    |
| ----------------- | ------ | :------: | -------------------------- | ---------------------------------------------- |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization to get AI providers for |

***

### `Contentful Get Organizations App Actions Categories`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_ACTIONS\_CATEGORIES**

Retrieves app action categories for a Contentful organization. Use this to discover available app action categories and their parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                |
| ----------------- | ------ | :------: | -------------------------- | -------------------------- |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization |

***

### `Contentful Get Organizations App Def Event Subscription`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEF\_EVENT\_SUBSCRIPTION**

Tool to retrieve details of an app event subscription by organization and app definition ID. Use when you need to check the configuration of event subscriptions for an app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                      |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition             |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition to retrieve the event subscription from |

***

### `Contentful Get Organizations App Definitions`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS**

Retrieves all app definitions for a specific organization. Use when you need to list or discover apps owned by an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                            |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization to retrieve app definitions for |

***

### `Contentful Get Organizations App Definitions Access Grants`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_ACCESS\_GRANTS**

Get all app access grants for a specific app definition within an organization. Use when you need to list which organizations can install a specific app definition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                    | Description                                                         |
| ------------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------- |
| `skip`              | integer |          | —                          | Number of access grants to skip for pagination                      |
| `limit`             | integer |          | —                          | Maximum number of access grants to return (default: 100, max: 1000) |
| `organization_id`   | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization                                          |
| `app_definition_id` | string  |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The ID of the app definition                                        |

***

### `Contentful Get Organizations App Definitions Actions`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_ACTIONS**

Tool to get all actions of an app definition within an organization. Use when you need to retrieve the list of actions defined for a specific Contentful app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                  |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization   |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The ID of the app definition |

***

### `Contentful Get Organizations App Definitions Actions2`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_ACTIONS2**

Tool to read a specific app action from an app definition within an organization. Use when you need to retrieve details of a particular action defined for a Contentful app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                 |
| ------------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------- |
| `app_action_id`     | string |     ✅    | `"B6z8wRlwRlmZLiMTtYVGx"`  | The ID of the specific app action to retrieve               |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization that contains the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The ID of the app definition that contains the action       |

***

### `Contentful Get Organizations App Definitions App Bundles`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_APP\_BUNDLES**

Tool to get all app bundles for a specific app definition within an organization. Use when you need to list all uploaded bundles for a Contentful app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                          |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition to retrieve bundles for     |

***

### `Contentful Get Organizations App Definitions Functions`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_FUNCTIONS**

Tool to get all functions of an app definition within an organization. Use when you need to retrieve the list of functions defined for a specific Contentful app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                  |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization   |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The ID of the app definition |

***

### `Contentful Get Organizations App Definitions Keys`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_KEYS**

Tool to retrieve all app keys for a specific app definition in a Contentful organization. Use when you need to list cryptographic keys for app authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                          |
| ------------------- | ------ | :------: | -------------------------- | ---------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition to retrieve keys for        |

***

### `Contentful Get Organizations App Definitions Signing Secret`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_APP\_DEFINITIONS\_SIGNING\_SECRET**

Tool to retrieve the current app signing secret for an app definition. Use when you need to verify the existence or view the last 4 characters of a signing secret. Note: Full secret is only available at creation time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                       |
| ------------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition              |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | ID of the app definition whose signing secret should be retrieved |

***

### `Contentful Get Organizations Enablements`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_ENABLEMENTS**

Retrieves feature enablements for a specific organization in Contentful. Use this to check which AI and vectorization features are enabled for the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                            |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve enablements for |

***

### `Contentful Get Organizations Invitations`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_INVITATIONS**

Retrieves a single invitation for an organization (alpha). Use this to get details about a specific invitation including invitee information and status. Note: This endpoint is in alpha state and may be subject to breaking changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                          |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------ |
| `invitation_id`   | string |     ✅    | `"032rmb30jmBsZtn97YXWFZ"` | The ID of the invitation to retrieve |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization           |

***

### `Contentful Get Organizations Organization Periodic Usages`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_ORGANIZATION\_PERIODIC\_USAGES**

Tool to get organization periodic usage statistics. Use when you need to retrieve API usage metrics for an organization during a specific time period, with optional filtering by metric type and date range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                    | Description                                                            |
| --------------------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------------- |
| `order`               | string |          | `"usage"`                  | Order results by usage                                                 |
| `metric_in`           | string |          | `"cma,cpa,gql"`            | Filter by specific metrics (comma-separated values like 'cma,cpa,gql') |
| `organization_id`     | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization                                             |
| `date_range_end_at`   | string |          | `"2020-01-05"`             | End date for the date range filter (ISO 8601 format: YYYY-MM-DD)       |
| `date_range_start_at` | string |          | `"2020-01-01"`             | Start date for the date range filter (ISO 8601 format: YYYY-MM-DD)     |

***

### `Contentful Get Organizations Roles`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_ROLES**

Retrieves all space roles in an organization. Use this to list roles that define user permissions and access levels within an organization's spaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                       |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------- |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve roles from |

***

### `Contentful Get Organizations Security Contacts`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_SECURITY\_CONTACTS**

Retrieves security contacts for a specific organization that an admin or owner has access to. Use this to get the list of security contacts configured for an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                  |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve security contacts for |

***

### `Contentful Get Organizations Space Enablements`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_SPACE\_ENABLEMENTS**

Retrieves all space enablements for a specific organization. Use when you need to check which features are enabled for spaces within an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                  |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve space enablements for |

***

### `Contentful Get Organizations Space Periodic Usages`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_SPACE\_PERIODIC\_USAGES**

Tool to retrieve space periodic usage data for an organization. Use this when you need to analyze usage metrics, monitor API consumption, or track resource utilization over time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                             |
| ------------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------------- |
| `order`             | string |          | `"usage"`                  | Order results by usage. Example: 'usage' or '-usage'                    |
| `metric_in`         | string |          | `"cma,cpa,gql"`            | Comma-separated list of metrics to filter by (e.g., 'cma,cpa,gql')      |
| `dateRange.endAt`   | string |          | `"2020-01-05"`             | End date for the usage period in ISO 8601 format (e.g., '2020-01-05')   |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve space periodic usages for        |
| `dateRange.startAt` | string |          | `"2020-01-01"`             | Start date for the usage period in ISO 8601 format (e.g., '2020-01-01') |

***

### `Contentful Get Organizations Taxonomy Concepts`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPTS**

Retrieves all taxonomy concepts for an organization in Contentful. Use this to list concepts that can be used to classify and organize content within the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                    | Description                                                    |
| ----------------- | ------- | :------: | -------------------------- | -------------------------------------------------------------- |
| `skip`            | integer |          | —                          | Number of concepts to skip for pagination                      |
| `limit`           | integer |          | —                          | Maximum number of concepts to return (default: 100, max: 1000) |
| `organization_id` | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The organization ID to retrieve taxonomy concepts from         |

***

### `Contentful Get Organizations Taxonomy Concepts Ancestors`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPTS\_ANCESTORS**

Retrieves the list of ancestor concepts for a specific taxonomy concept. Use this when you need to understand the hierarchical lineage of a concept in the taxonomy structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                              |
| ----------------- | ------ | :------: | -------------------------- | -------------------------------------------------------- |
| `concept_id`      | string |     ✅    | `"3o7r74hE0hwugew3RYeHvf"` | The ID of the taxonomy concept to retrieve ancestors for |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization                               |

***

### `Contentful Get Organizations Taxonomy Concept Schemes`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPT\_SCHEMES**

Tool to retrieve all taxonomy concept schemes from an organization. Use when you need to list or discover the taxonomy structure and concept schemes available in an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                    | Description                                                           |
| ----------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------- |
| `skip`            | integer |          | —                          | Number of concept schemes to skip for pagination                      |
| `limit`           | integer |          | —                          | Maximum number of concept schemes to return (default: 100, max: 1000) |
| `organization_id` | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve concept schemes from           |

***

### `Contentful Get Organizations Taxonomy Concept Schemes2`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPT\_SCHEMES2**

Tool to retrieve a specific taxonomy concept scheme from an organization. Use when you need to get detailed information about a taxonomy concept scheme including its concepts, labels, and definitions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                                 |
| ------------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization that contains the concept scheme |
| `concept_scheme_id` | string |     ✅    | `"4WfLGnn49Iv4uBx6HJRFwo"` | The ID of the taxonomy concept scheme to retrieve           |

***

### `Contentful Get Organizations Taxonomy Concept Schemes Total`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPT\_SCHEMES\_TOTAL**

Retrieves the total count of taxonomy concept schemes for a specific organization. Use this when you need to get the number of concept schemes configured for an organization's taxonomy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                               |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------- |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve taxonomy concept schemes total for |

***

### `Contentful Get Organizations Taxonomy Concepts Total`

Integration name: **CONTENTFUL\_GET\_ORGANIZATIONS\_TAXONOMY\_CONCEPTS\_TOTAL**

Retrieves the total count of taxonomy concepts for a specific organization. Use this when you need to get the number of concepts configured for an organization's taxonomy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                        |
| ----------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------ |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to retrieve taxonomy concepts total for |

***

### `Contentful Get Release`

Integration name: **CONTENTFUL\_GET\_RELEASE**

Tool to get a single release by ID from Contentful. Use when you need to retrieve details about a specific release including its entities, metadata, and archive status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                    | Description                                                       |
| ---------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`           | ID of the space containing the release                            |
| `releases_id`    | string |     ✅    | `"6ycVQCaGvvpaO3OxlNCtfz"` | ID of the release to retrieve                                     |
| `environment_id` | string |     ✅    | `"master"`                 | ID of the environment containing the release (typically 'master') |

***

### `Contentful Get Space`

Integration name: **CONTENTFUL\_GET\_SPACE**

Retrieves metadata of a specific space by its ID. Returns space-level details only (name, locales, sys fields) — not entries, content types, or assets. The returned sys.version is required for subsequent CONTENTFUL\_UPDATE\_SPACE calls to avoid version conflict errors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example              | Description                 |
| ---------- | ------ | :------: | -------------------- | --------------------------- |
| `space_id` | string |     ✅    | `"example_space_id"` | ID of the space to retrieve |

***

### `Contentful Get Space Memberships`

Integration name: **CONTENTFUL\_GET\_SPACE\_MEMBERSHIPS**

Tool to get all space memberships in a Contentful space. Use when you need to list all users who have access to a space and their assigned roles. Returns paginated results with membership details including admin status and role assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example          | Description                                                      |
| ---------- | ------- | :------: | ---------------- | ---------------------------------------------------------------- |
| `skip`     | integer |          | —                | Number of memberships to skip for pagination                     |
| `limit`    | integer |          | —                | Maximum number of memberships to return (default: 25, max: 1000) |
| `space_id` | string  |     ✅    | `"5nvk6q4s3ttw"` | ID of the space to retrieve memberships from                     |

***

### `Contentful Get Spaces Api Keys`

Integration name: **CONTENTFUL\_GET\_SPACES\_API\_KEYS**

Tool to retrieve all Delivery API keys for a specific Contentful space. Use when you need to list all API keys configured for content delivery. This action returns key details including name, access token, policies, and associated environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example          | Description                                                    |
| ---------- | ------- | :------: | ---------------- | -------------------------------------------------------------- |
| `skip`     | integer |          | —                | Number of API keys to skip for pagination                      |
| `limit`    | integer |          | —                | Maximum number of API keys to return (default: 100, max: 1000) |
| `space_id` | string  |     ✅    | `"oducbj6n3pdj"` | ID of the space to retrieve API keys from                      |

***

### `Contentful Get Spaces Environments`

Integration name: **CONTENTFUL\_GET\_SPACES\_ENVIRONMENTS**

Retrieves all environments of a space in Contentful. Use this to list all environments (including the master environment) within a specific space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                              |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------- |
| `space_id` | string |     ✅    | `"oducbj6n3pdj"` | ID of the space to get environments from |

***

### `Contentful Get Spaces Environments App Installations`

Integration name: **CONTENTFUL\_GET\_SPACES\_ENVIRONMENTS\_APP\_INSTALLATIONS**

Lists all app installations in a specific Contentful environment. Use this to discover which apps are currently installed in an environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                                   |
| ---------------- | ------ | :------: | ---------------- | ----------------------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"` | ID of the space to retrieve app installations from                            |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment to retrieve app installations from (typically 'master') |

***

### `Contentful Get Spaces Environments Assets`

Integration name: **CONTENTFUL\_GET\_SPACES\_ENVIRONMENTS\_ASSETS**

Retrieves all assets from a specific environment in a Contentful space. Use this to list and browse assets like images, videos, and documents. Supports pagination and ordering for large asset collections.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example          | Description                                                                     |
| ---------------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------- |
| `skip`           | integer |          | —                | Number of assets to skip for pagination                                         |
| `limit`          | integer |          | —                | Maximum number of assets to return (default: 100, max: 1000)                    |
| `order`          | string  |          | —                | Order assets by field (e.g. 'sys.createdAt' or '-sys.createdAt' for descending) |
| `space_id`       | string  |     ✅    | `"oducbj6n3pdj"` | ID of the space containing the assets                                           |
| `environment_id` | string  |     ✅    | `"master"`       | ID of the environment containing the assets (typically 'master')                |

***

### `Contentful Get Spaces Environments Locales`

Integration name: **CONTENTFUL\_GET\_SPACES\_ENVIRONMENTS\_LOCALES**

Tool to retrieve all locales of a space environment in Contentful. Use when you need to list all available locales including their codes, names, default status, and fallback configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                    |
| ---------------- | ------ | :------: | ---------------- | -------------------------------------------------------------- |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"` | ID of the space to get locales from                            |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment to get locales from (typically 'master') |

***

### `Contentful Get Spaces Envs App Installations Functions`

Integration name: **CONTENTFUL\_GET\_SPACES\_ENVS\_APP\_INSTALLATIONS\_FUNCTIONS**

Tool to get all functions for an app installation in a Contentful environment. Use when you need to retrieve the list of functions defined for an installed app in a specific space and environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                    | Description                                |
| --------------------- | ------ | :------: | -------------------------- | ------------------------------------------ |
| `space_id`            | string |     ✅    | `"oducbj6n3pdj"`           | The ID of the Contentful space             |
| `environment_id`      | string |     ✅    | `"master"`                 | The ID of the environment (e.g., 'master') |
| `app_installation_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"` | The ID of the installed app                |

***

### `Contentful Get Users Me`

Integration name: **CONTENTFUL\_GET\_USERS\_ME**

Tool to retrieve information about the currently authenticated user. Use when you need to get details about the user making the API calls, such as their profile information, email, or account status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Contentful List Entries`

Integration name: **CONTENTFUL\_LIST\_ENTRIES**

Tool to retrieve all entries from a Contentful space environment. Use when you need to list, search, or filter content entries. Supports pagination, sorting, field selection, and filtering by content type or custom fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                 | Description                                                                                                          |
| ---------------- | ------- | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `skip`           | integer |          | —                       | Number of entries to skip for pagination                                                                             |
| `limit`          | integer |          | —                       | Maximum number of entries to return per page (default: 100, max: 1000)                                               |
| `order`          | string  |          | `"sys.createdAt"`       | Sort results by a specified field (e.g., 'sys.createdAt' or '-fields.name' for reverse order)                        |
| `query`          | string  |          | `"search term"`         | Full-text search query to filter entries                                                                             |
| `locale`         | string  |          | `"en-US"`               | Retrieve content in specified language/region code                                                                   |
| `select`         | string  |          | `"sys.id,fields.title"` | Comma-separated list of specific fields to return (e.g., 'sys.id,fields.title'). Supports depth of 2 levels maximum. |
| `include`        | integer |          | —                       | Number of levels to resolve linked entries and assets (0-10, default: 1)                                             |
| `space_id`       | string  |     ✅    | `"example_space_id"`    | ID of the space containing the entries                                                                               |
| `content_type`   | string  |          | `"product"`             | Filter entries by content type ID. Required when filtering by custom fields.                                         |
| `environment_id` | string  |     ✅    | `"master"`              | ID of the environment containing the entries (typically 'master')                                                    |

***

### `Contentful List Spaces`

Integration name: **CONTENTFUL\_LIST\_SPACES**

Lists all spaces that the authenticated user has access to in Contentful. This is a fundamental operation needed before performing any other content management actions since most operations require a space ID. To paginate, increment `skip` by `limit` across successive calls; stop when the returned count is less than `limit`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                      |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------------- |
| `skip`    | integer |          | —       | Number of spaces to skip for pagination                          |
| `limit`   | integer |          | —       | Maximum number of spaces to return (default: 100, max: 1000)     |
| `order`   | string  |          | —       | Order spaces by field (e.g. 'sys.createdAt' or '-sys.createdAt') |

***

### `Contentful List Spaces Roles`

Integration name: **CONTENTFUL\_LIST\_SPACES\_ROLES**

Tool to retrieve all roles from a Contentful space. Use this to list roles that define user permissions and access levels within a space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                            |
| ---------- | ------ | :------: | ---------------- | -------------------------------------- |
| `space_id` | string |     ✅    | `"oducbj6n3pdj"` | ID of the space to retrieve roles from |

***

### `Contentful Publish Entry`

Integration name: **CONTENTFUL\_PUBLISH\_ENTRY**

Tool to publish an entry in Contentful, making it available via the Content Delivery API. Use when you need to make an entry publicly accessible or move it from draft to published status. The entry must not be archived and should have all required fields completed. Publishing increments the entry version.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                   | Description                                                                                                 |
| ---------------------- | ------- | :------: | ------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `entry_id`             | string  |     ✅    | `"eVhywO1hQ7UHsFinvj4Uq"` | ID of the entry to publish                                                                                  |
| `space_id`             | string  |     ✅    | `"oducbj6n3pdj"`          | ID of the space containing the entry                                                                        |
| `environment_id`       | string  |     ✅    | `"master"`                | ID of the environment containing the entry (typically 'master')                                             |
| `X-Contentful-Version` | integer |          | `1`                       | Version of the entry to publish. Required for version control. Use the current version number of the entry. |

***

### `Contentful Query Asset Collection`

Integration name: **CONTENTFUL\_QUERY\_ASSET\_COLLECTION**

Tool to retrieve multiple assets with pagination and filtering via GraphQL API. Use when you need to query assets from Contentful with advanced filtering, sorting, and locale selection. Supports preview mode and fallback locale options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                 | Description                                                                                                                                                                                |
| --------------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `skip`                | integer |          | —                       | Zero-indexed offset in the collection from which items are fetched. Default is 0                                                                                                           |
| `limit`               | integer |          | —                       | Maximum number of items to fetch. Default is 100, maximum is 1000                                                                                                                          |
| `order`               | array   |          | —                       | Order specifications to apply on the collection query. Example: \['sys\_firstPublishedAt\_ASC', 'sys\_id\_DESC']                                                                           |
| `where`               | object  |          | —                       | Filter specifications to apply on the collection query (AssetFilter type). Example: {'contentType': 'image/jpeg'}                                                                          |
| `locale`              | string  |          | `"en-US"`               | Locale for the collection items. If not set, the default locale is used. Example: 'en-US'                                                                                                  |
| `preview`             | boolean |          | —                       | When set to true, returns non-published content. Default is false                                                                                                                          |
| `space_id`            | string  |     ✅    | `"oducbj6n3pdj"`        | ID of the space to query assets from                                                                                                                                                       |
| `access_token`        | string  |          | `"your_cda_token_here"` | Content Delivery API (CDA) access token. If not provided, will attempt to use token from metadata. Required for GraphQL Content API access. You can obtain this from the space's API keys. |
| `use_fallback_locale` | boolean |          | —                       | When set to false, fields without a value in the requested locale return null instead of the fallback locale. Default is true                                                              |

***

### `Contentful Query Graphql Content Type Collection`

Integration name: **CONTENTFUL\_QUERY\_GRAPHQL\_CONTENT\_TYPE\_COLLECTION**

Tool to query a collection of entries for a specific content type using GraphQL. Use when you need to fetch multiple entries with filtering, sorting, pagination, or preview mode. The query field name must be the camelCase content type ID with 'Collection' suffix (e.g., 'blogPostCollection').

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                                                  | Description                                                                                                                                                                                                                                                       |
| ---------------- | ------ | :------: | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`          | string |     ✅    | `"{ testArticleCollection { items { sys { id publishedAt } title } } }"` | GraphQL query string. Must be in the format: { contentTypeIdCollection { items { sys { id } fieldName } } }. The content type ID should be in camelCase with 'Collection' suffix. Example: '{ testArticleCollection { items { sys { id publishedAt } title } } }' |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"`                                                         | ID of the Contentful space                                                                                                                                                                                                                                        |
| `variables`      | object |          | `{"skip":0,"limit":10}`                                                  | Optional GraphQL variables for parameterized queries. Used to pass dynamic values to the query (e.g., filters, pagination parameters). Example: {'limit': 10, 'preview': true}                                                                                    |
| `access_token`   | string |          | `"your_cda_token_here"`                                                  | Content Delivery API (CDA) access token. If not provided, will attempt to use token from metadata. Required for GraphQL Content API access.                                                                                                                       |
| `environment_id` | string |          | `"master"`                                                               | ID of the environment (optional, omit for default environment). Use 'master' for production environment.                                                                                                                                                          |

***

### `Contentful Update App Definition`

Integration name: **CONTENTFUL\_UPDATE\_APP\_DEFINITION**

Tool to update an app definition by ID in a Contentful organization. Use when you need to modify an app's name, source URL, locations, or parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                          | Description                                                                                   |
| ------------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------- |
| `src`               | string |          | `"https://example.com/test-updated-app-v2.html"` | The source URL where the root HTML document of the app is hosted                              |
| `name`              | string |          | `"Test Updated App v2"`                          | The name of the app                                                                           |
| `locations`         | array  |          | —                                                | Array of location objects specifying where the app will be rendered in the Contentful web app |
| `parameters`        | object |          | —                                                | Model for app parameters.                                                                     |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                       | The organization ID that owns the app definition                                              |
| `app_definition_id` | string |     ✅    | `"2u73EcCRI8Tmhp7qrNQyFi"`                       | The app definition ID to update                                                               |

***

### `Contentful Update Editor Interface`

Integration name: **CONTENTFUL\_UPDATE\_EDITOR\_INTERFACE**

Tool to update the editor interface configuration for a content type. Use when you need to customize how fields are displayed and edited in the Contentful UI. The version number is required to prevent conflicts when multiple users update the same editor interface.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example              | Description                                                                                                                                                                            |
| ----------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `version`         | integer |     ✅    | `1`                  | Current version of the editor interface used for optimistic locking. Get this from the sys.version field when fetching the editor interface. Sent via the X-Contentful-Version header. |
| `controls`        | array   |     ✅    | —                    | Array of control objects defining how each field should be displayed and edited in the Contentful UI                                                                                   |
| `space_id`        | string  |     ✅    | `"example_space_id"` | ID of the space containing the content type                                                                                                                                            |
| `environment_id`  | string  |     ✅    | `"master"`           | ID of the environment containing the content type (typically 'master')                                                                                                                 |
| `content_type_id` | string  |     ✅    | `"testArticle"`      | ID of the content type to update the editor interface for                                                                                                                              |

***

### `Contentful Update Entry`

Integration name: **CONTENTFUL\_UPDATE\_ENTRY**

Tool to create or update an entry in a Contentful space environment. Use when you need to modify entry content or create a new entry with a specific ID. Requires the content type ID, entry version for updates, and field values organized by locale.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                               | Description                                                                                                                                                                                                                                          |
| ---------------- | ------- | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`         | object  |     ✅    | `{"title":{"en-US":"Hello, World!"}}` | Entry field values organized by field name and locale. Structure: {field\_name: {locale: value}}. Example: {'title': {'en-US': 'My Title'}, 'body': {'en-US': 'Content'}}. Available fields and their types depend on the `content_type` definition. |
| `version`        | integer |     ✅    | `5`                                   | Current entry version for optimistic locking. Provide the latest value from sys.version. This is sent via the X-Contentful-Version header to prevent conflicting updates.                                                                            |
| `entry_id`       | string  |     ✅    | `"36JqANELdH2eIkNdChgNlg"`            | ID of the entry to create or update                                                                                                                                                                                                                  |
| `metadata`       | object  |          | `{"tags":[]}`                         | Entry metadata including tags. Example: {'tags': \[]} or {'tags': \[{'sys': {'type': 'Link', 'linkType': 'Tag', 'id': 'tagId'}}]}                                                                                                                    |
| `space_id`       | string  |     ✅    | `"oducbj6n3pdj"`                      | ID of the space containing the entry                                                                                                                                                                                                                 |
| `content_type`   | string  |     ✅    | `"testArticle"`                       | Content type ID for this entry (e.g., 'testArticle', 'blogPost'). Must match an existing content type in the space.                                                                                                                                  |
| `environment_id` | string  |     ✅    | `"master"`                            | ID of the environment containing the entry (typically 'master')                                                                                                                                                                                      |

***

### `Contentful Update Organizations App Def Event Subscription`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_APP\_DEF\_EVENT\_SUBSCRIPTION**

Tool to update or create an app event subscription in a Contentful organization. Use when you need to configure event subscriptions for an app definition to receive webhooks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                           | Description                                                                                                                                              |
| ------------------- | ------ | :------: | --------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `topics`            | array  |     ✅    | `["Entry.create","Entry.update"]` | List of event topics to subscribe to (e.g., 'Entry.create', 'Entry.update', 'Asset.create'). Events matching these topics will be sent to the targetUrl. |
| `targetUrl`         | string |     ✅    | `"https://example.com/webhook"`   | Subscription URL that will receive events. Must be a valid HTTPS URL.                                                                                    |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`        | ID of the organization containing the app definition                                                                                                     |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"`        | ID of the app definition to update the event subscription for                                                                                            |

***

### `Contentful Update Organizations App Definitions Actions`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_APP\_DEFINITIONS\_ACTIONS**

Tool to update an action for a Contentful app definition. Use when you need to modify existing action properties such as name, URL, type, or category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                | Description                                                                                                                                                            |
| ------------------- | ------ | :------: | -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`               | string |     ✅    | `"https://example.com/updated-action"` | HTTPS URL for the endpoint (required when type is endpoint). Must be a valid HTTPS URL.                                                                                |
| `name`              | string |     ✅    | `"Updated Test Notification Action"`   | Updated name of the action                                                                                                                                             |
| `type`              | string |     ✅    | —                                      | Type of action - must be one of: endpoint (for HTTP endpoints), function (for Contentful functions), or function-invocation (for function invocations)                 |
| `category`          | string |     ✅    | `"Notification.v1.0"`                  | Category ID from available categories (e.g., Entries.v1.0, Notification.v1.0). Use get\_organizations\_app\_actions\_categories action to retrieve valid category IDs. |
| `app_action_id`     | string |     ✅    | `"4Y9TfktNPsiaG0cP0Ws2w1"`             | ID of the app action to update                                                                                                                                         |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`             | ID of the organization containing the app definition                                                                                                                   |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"`             | ID of the app definition containing the action                                                                                                                         |

***

### `Contentful Update Organizations App Definitions Details`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_APP\_DEFINITIONS\_DETAILS**

Tool to create or update app definition details for an organization in Contentful. Use when you need to initialize or modify app details such as icons or preview images. Note: This endpoint accepts an empty body to initialize details; properties like 'name' and 'src' are not accepted here and will cause validation errors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                    | Description                                              |
| ------------------- | ------ | :------: | -------------------------- | -------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | ID of the organization containing the app definition     |
| `app_definition_id` | string |     ✅    | `"2u73EcCRI8Tmhp7qrNQyFi"` | ID of the app definition whose details should be updated |

***

### `Contentful Update Organizations App Def Signing Secret`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_APP\_DEF\_SIGNING\_SECRET**

Tool to create or overwrite the app signing secret for an app definition. Use when you need to set up webhook signature verification or rotate an existing secret. Note: This operation overwrites any existing signing secret.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                              | Description                                                                                                            |
| ------------------- | ------ | :------: | -------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `value`             | string |     ✅    | `"abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789"` | The signing secret value. Must be a 64-character hexadecimal string used to verify webhook signatures from Contentful. |
| `organization_id`   | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                                           | ID of the organization containing the app definition                                                                   |
| `app_definition_id` | string |     ✅    | `"4m36R4p7HfjSiIzB61kxjS"`                                           | ID of the app definition for which to create or update the signing secret                                              |

***

### `Contentful Update Organizations Enablements`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_ENABLEMENTS**

Updates feature enablements for a specific organization in Contentful. Use this to enable or disable AI and vectorization features for the organization. Requires the current version number for optimistic locking to prevent conflicts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                    | Description                                                                                                                                                    |
| ------------------ | ------- | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `version`          | integer |     ✅    | `1`                        | Current version of the enablements document for optimistic locking. Provide the latest value from sys.version; it is sent via the X-Contentful-Version header. |
| `vectorization`    | object  |     ✅    | —                          | Vectorization configuration. All three enablement fields (builtInAiActions, customAiActions, vectorization) are required by the API.                           |
| `customAiActions`  | object  |     ✅    | —                          | Custom AI actions configuration. All three enablement fields (builtInAiActions, customAiActions, vectorization) are required by the API.                       |
| `organization_id`  | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"` | The ID of the organization to update enablements for                                                                                                           |
| `builtInAiActions` | object  |     ✅    | —                          | Built-in AI actions configuration. All three enablement fields (builtInAiActions, customAiActions, vectorization) are required by the API.                     |

***

### `Contentful Update Organizations Security Contacts`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_SECURITY\_CONTACTS**

Updates an organization security contact that an admin or owner has access to. Use this to change the email address of a security contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                          | Description                                        |
| ----------------- | ------ | :------: | -------------------------------- | -------------------------------------------------- |
| `email`           | string |     ✅    | `"updated-security@example.com"` | The updated email address for the security contact |
| `security_id`     | string |     ✅    | `"032rmbYRhRXzY4CVlKBOl8"`       | The ID of the security contact to update           |
| `organization_id` | string |     ✅    | `"3STdL5T2FArlo1qttULwUR"`       | The ID of the organization                         |

***

### `Contentful Update Organizations Taxonomy Concepts`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_TAXONOMY\_CONCEPTS**

Tool to create or update a taxonomy concept with a user-defined ID in a Contentful organization. Use when you need to create a concept with a specific ID or update an existing concept's properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                    | Description                                                                                                                                                                                                |
| ----------------- | ------- | :------: | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uri`             | string  |          | `"http://example.com/concepts/technology"` | Optional globally unique identifier (URI) for the concept                                                                                                                                                  |
| `version`         | integer |          | `1`                                        | Version number for updates (used for optimistic locking). Required when updating an existing concept, not needed when creating a new concept with a user-defined ID. Sent via X-Contentful-Version header. |
| `altLabels`       | object  |          | `{"en-US":["Tech","IT"]}`                  | Alternative labels for the concept with locale as key and array of strings as value (e.g., {'en-US': \['Tech', 'IT']})                                                                                     |
| `notations`       | array   |          | `["CODE-001","TECH-A"]`                    | Formal designations like classification codes                                                                                                                                                              |
| `prefLabel`       | object  |     ✅    | `{"en-US":"Test Concept"}`                 | The preferred label for the concept with locale as key (e.g., {'en-US': 'Technology'}). At least one locale is required.                                                                                   |
| `concept_id`      | string  |     ✅    | `"test-concept-001"`                       | User-defined ID for the taxonomy concept to create or update                                                                                                                                               |
| `hiddenLabels`    | object  |          | `{"en-US":["Internal Term"]}`              | Hidden labels for searching with locale as key and array of strings as value (e.g., {'en-US': \['Hidden1']})                                                                                               |
| `organization_id` | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                 | The organization ID containing the taxonomy concept                                                                                                                                                        |

***

### `Contentful Update Organizations Taxonomy Concept Schemes`

Integration name: **CONTENTFUL\_UPDATE\_ORGANIZATIONS\_TAXONOMY\_CONCEPT\_SCHEMES**

Tool to create or update a taxonomy concept scheme with a user-defined ID in an organization. Use when you need to create a new classification scheme or update an existing one with localized labels and definitions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                            | Description                                                                                                                                                                 |
| ------------------- | ------- | :------: | -------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uri`               | string  |          | `"http://example.com/schemes/products"`            | Optional URI identifier for the concept scheme                                                                                                                              |
| `version`           | integer |          | `1`                                                | Version number for updates (used for optimistic locking). Required when updating an existing concept scheme, not needed for creation. Sent via X-Contentful-Version header. |
| `prefLabel`         | object  |     ✅    | `{"en-US":"Product Categories"}`                   | Localized preferred label for the concept scheme. Keys are locale codes (e.g., 'en-US'), values are the labels in that locale.                                              |
| `definition`        | object  |          | `{"en-US":"A classification scheme for products"}` | Localized definition for the concept scheme. Keys are locale codes (e.g., 'en-US'), values are the definitions in that locale.                                              |
| `organization_id`   | string  |     ✅    | `"3STdL5T2FArlo1qttULwUR"`                         | The ID of the organization to create/update the concept scheme in                                                                                                           |
| `concept_scheme_id` | string  |     ✅    | `"test-scheme-composio-001"`                       | User-defined ID for the concept scheme. This will be used as the unique identifier for the concept scheme.                                                                  |

***

### `Contentful Update Space`

Integration name: **CONTENTFUL\_UPDATE\_SPACE**

Updates the name of a specific space. Notes: - The version number is required to ensure you're updating the latest version of the space. - You can get the current version from the sys.version field when fetching space details. - Only the name of the space can be updated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                        |
| ---------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`     | string  |     ✅    | —                    | New name for the space                                                                                                                                                                                                                                                             |
| `version`  | integer |     ✅    | `1`                  | Current space version used for optimistic locking. Provide the latest value from sys.version; it is sent via the X-Contentful-Version header. Must match the current sys.version exactly (retrieve via CONTENTFUL\_GET\_SPACE); an outdated value causes a version conflict error. |
| `space_id` | string  |     ✅    | `"example_space_id"` | ID of the space to update                                                                                                                                                                                                                                                          |

***

### `Contentful Update Spaces Environments Tags`

Integration name: **CONTENTFUL\_UPDATE\_SPACES\_ENVIRONMENTS\_TAGS**

Creates or updates a tag in a Contentful environment. Use this when you need to modify an existing tag's name or create a new one.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                  | Description                                                                                              |
| ---------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------- |
| `sys`                  | object  |     ✅    | —                        | System metadata for the tag (must include id and type fields)                                            |
| `name`                 | string  |     ✅    | `"Updated API Test Tag"` | Display name for the tag                                                                                 |
| `tag_id`               | string  |     ✅    | `"api-test-tag"`         | ID of the tag to update                                                                                  |
| `space_id`             | string  |     ✅    | `"oducbj6n3pdj"`         | ID of the space containing the tag                                                                       |
| `environment_id`       | string  |     ✅    | `"master"`               | ID of the environment containing the tag (typically 'master')                                            |
| `x_contentful_version` | integer |          | `1`                      | Version of the tag to update (used for optimistic locking). If not provided, the API will use version 1. |

***

### `Contentful Validate Bulk Action`

Integration name: **CONTENTFUL\_VALIDATE\_BULK\_ACTION**

Tool to validate a bulk action before executing it. Use when you need to check if multiple entries or assets can be published in bulk without actually publishing them. This helps identify potential issues before attempting the actual bulk operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                                          |
| ---------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------ |
| `action`         | string |          | —                | Enum for bulk action types.                                                          |
| `entities`       | object |     ✅    | —                | Collection of entities (entries or assets) to validate for bulk action               |
| `space_id`       | string |     ✅    | `"oducbj6n3pdj"` | ID of the space containing the entries/assets to validate                            |
| `environment_id` | string |     ✅    | `"master"`       | ID of the environment containing the entries/assets to validate (typically 'master') |

***


# Crowdin

Your Toolhouse AI Worker can connect to Crowdin using 231 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](https://toolhouse.app/auth-connections?authkit_slugs=crowdin).

## Tools (231)

### `Crowdin Add Branch`

Integration name: **CROWDIN\_ADD\_BRANCH**

Tool to create a new branch in a Crowdin project. Use when you need to isolate translations for a new feature or release.

#### Parameters

| Parameter       | Type   | Required | Example                                        | Description                                                                                              |
| --------------- | ------ | :------: | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `name`          | string |     ✅    | `"feature-login"`                              | Name of the branch                                                                                       |
| `title`         | string |          | `"Login Feature"`                              | Displayed name of the branch                                                                             |
| `priority`      | string |          | `"normal"`                                     | Priority of the branch (low, normal, high). Helps translators focus on the most important content first. |
| `projectId`     | string |     ✅    | `"12345"`                                      | Identifier of the Crowdin project                                                                        |
| `exportPattern` | string |          | `"/downloads/{locale}/{project}/{branch}.zip"` | Export pattern for the branch                                                                            |

### `Crowdin Add Directory`

Integration name: **CROWDIN\_ADD\_DIRECTORY**

Tool to create a new directory in a Crowdin project. Use when you need to organize files into directories before uploading.

#### Parameters

| Parameter       | Type    | Required | Example                                           | Description                                                                                                 |
| --------------- | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `name`          | string  |     ✅    | `"docs"`                                          | Name of the directory                                                                                       |
| `title`         | string  |          | `"Documentation"`                                 | Displayed title of the directory for translators                                                            |
| `branchId`      | integer |          | `4321`                                            | Branch identifier if adding directory to a specific branch                                                  |
| `priority`      | string  |          | `"normal"`                                        | Priority of the directory (low, normal, high). Helps translators focus on the most important content first. |
| `projectId`     | integer |     ✅    | `12345`                                           | Identifier of the Crowdin project                                                                           |
| `directoryId`   | integer |          | `8765`                                            | Parent directory identifier. If not specified, directory will be created at root level                      |
| `exportPattern` | string  |          | `"/downloads/{locale}/{project}/{directory}.zip"` | Export pattern for translations in this directory                                                           |

### `Crowdin Add File`

Integration name: **CROWDIN\_ADD\_FILE**

Tool to add a new file to a Crowdin project. Use after uploading the file to storage to place it under the specified project, branch, or directory.

#### Parameters

| Parameter       | Type    | Required | Example                            | Description                                                              |
| --------------- | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------ |
| `name`          | string  |     ✅    | `"strings.xml"`                    | Target file name in the project, including extension                     |
| `type`          | string  |          | `"android"`                        | File format, e.g., 'android', 'ios'. If omitted, inferred from extension |
| `branchId`      | integer |          | `4321`                             | Branch identifier if adding to a specific branch                         |
| `projectId`     | integer |     ✅    | `1234`                             | Unique identifier of the Crowdin project                                 |
| `storageId`     | integer |     ✅    | `5678`                             | Identifier of the previously uploaded file in Crowdin storage            |
| `directoryId`   | integer |          | `8765`                             | Directory identifier if adding under a specific directory                |
| `exportOptions` | object  |          | `{"includeOriginalStrings":false}` | Export options specific to the file type                                 |
| `importOptions` | object  |          | `{"xliffVersion":"1.2"}`           | Import options specific to the file type                                 |

### `Crowdin Add Glossary Term`

Integration name: **CROWDIN\_ADD\_GLOSSARY\_TERM**

Tool to add a new term to a Crowdin glossary. Use when you need to create terminology entries for consistent translations across projects.

#### Parameters

| Parameter             | Type    | Required | Example                                                   | Description                                                                                                                                       |
| --------------------- | ------- | :------: | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                 | string  |          | —                                                         | Base URL or reference link providing additional context or documentation for the term.                                                            |
| `note`                | string  |          | —                                                         | Additional note such as usage instructions, explanations, or special considerations for translators.                                              |
| `text`                | string  |     ✅    | `"API Test Term"`                                         | The term text to add to the glossary.                                                                                                             |
| `type`                | string  |          | `"abbreviation"`                                          | Type options for glossary terms.                                                                                                                  |
| `gender`              | string  |          | `"masculine"`                                             | Gender options for glossary terms.                                                                                                                |
| `status`              | string  |          | `"preferred"`                                             | Status options for glossary terms.                                                                                                                |
| `conceptId`           | integer |          | —                                                         | Concept identifier to add this term as a translation to an existing concept. Get concept\_id via CROWDIN\_LIST\_TERMS or CROWDIN\_LIST\_CONCEPTS. |
| `glossaryId`          | integer |     ✅    | `607376`                                                  | Glossary identifier where the term will be added. Use CROWDIN\_LIST\_GLOSSARIES to get available glossary IDs.                                    |
| `languageId`          | string  |     ✅    | `"en"`                                                    | Language identifier for the term (ISO 639-1 code, e.g., 'en', 'fr', 'de'). Use CROWDIN\_LIST\_LANGUAGES to get supported language codes.          |
| `description`         | string  |          | `"A test term created via API for verification purposes"` | Description or definition of the term. Use this to explain the meaning or provide context.                                                        |
| `partOfSpeech`        | string  |          | `"noun"`                                                  | Part of speech options for glossary terms.                                                                                                        |
| `translationOfTermId` | integer |          | —                                                         | Term identifier to add this as a translation of an existing term. Get term id via CROWDIN\_LIST\_TERMS.                                           |

### `Crowdin Add Label`

Integration name: **CROWDIN\_ADD\_LABEL**

Tool to create a new label in a Crowdin project. Use when you need to tag resources with a custom identifier, such as 'Sprint-5'.

#### Parameters

| Parameter    | Type    | Required | Example         | Description                                                                                                                   |
| ------------ | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `title`      | string  |     ✅    | `"Release-1.0"` | Title of the label to create. Must be 2-50 characters. Label names are case-insensitive and cannot contain commas.            |
| `project_id` | integer |     ✅    | `813954`        | Numeric ID of the Crowdin project where the label will be created. Use CROWDIN\_LIST\_PROJECTS to find available project IDs. |

### `Crowdin Add Project`

Integration name: **CROWDIN\_ADD\_PROJECT**

Tool to create a new project in Crowdin. Use before uploading source files to initialize translation workflows.

#### Parameters

| Parameter               | Type    | Required | Example                          | Description                                                                                                                                                           |
| ----------------------- | ------- | :------: | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `logo`                  | string  |          | —                                | Logo file name within Enterprise organization.                                                                                                                        |
| `name`                  | string  |     ✅    | `"Website Localization Project"` | Display name for the project. Should be descriptive and unique within your organization.                                                                              |
| `type`                  | integer |          | `0`                              | Project type: 0 = file-based (default, supports uploaded files), 1 = strings-based (manages strings directly without files).                                          |
| `cname`                 | string  |          | —                                | Custom domain name for Enterprise projects.                                                                                                                           |
| `identifier`            | string  |          | `"my-project"`                   | Unique project identifier string used in URLs. If not provided, auto-generated from project name.                                                                     |
| `visibility`            | string  |          | `"private"`                      | Project visibility: 'private' (only invited members can access) or 'open' (publicly visible). Default: 'private'.                                                     |
| `description`           | string  |          | —                                | Optional human-readable project description.                                                                                                                          |
| `sourceLanguageId`      | string  |     ✅    | `"en"`                           | Source language code (ISO 639-1 two-letter code, e.g., 'en' for English, 'de' for German, 'fr' for French). Use CROWDIN\_LIST\_LANGUAGES to get valid language codes. |
| `targetLanguageIds`     | array   |     ✅    | `["fr","de"]`                    | List of target language codes (ISO 639-1 two-letter codes) for translation. At least one target language required. Use CROWDIN\_LIST\_LANGUAGES to get valid codes.   |
| `languageAccessPolicy`  | string  |          | —                                | Language access policy: 'open' (any user can translate) or 'moderate' (restricted access). Default: 'moderate'.                                                       |
| `normalizePlaceholder`  | boolean |          | —                                | Enable placeholder normalization across languages.                                                                                                                    |
| `notificationSettings`  | object  |          | —                                | Notification settings object specifying email triggers.                                                                                                               |
| `sourceLanguageMapping` | object  |          | —                                | Mapping of directory names to language identifiers.                                                                                                                   |

### `Crowdin Add Project File Format Settings`

Integration name: **CROWDIN\_ADD\_PROJECT\_FILE\_FORMAT\_SETTINGS**

Tool to add file format settings to a Crowdin project. Use when configuring how specific file formats should be processed during import/export. Allows customization of segmentation, export paths, and format-specific options.

#### Parameters

| Parameter   | Type    | Required | Example     | Description                                                                                                                                              |
| ----------- | ------- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `format`    | string  |     ✅    | `"android"` | File format identifier. Examples: 'android', 'xml', 'json', 'md', 'html', 'docx', 'xlsx', 'csv', 'txt', etc. Must match a supported Crowdin file format. |
| `settings`  | object  |     ✅    | —           | File format settings object. Available settings depend on the format type. Common settings include contentSegmentation, exportPattern, srxStorageId.     |
| `projectId` | integer |     ✅    | `813524`    | Project identifier. Use CROWDIN\_LIST\_PROJECTS to get valid project IDs.                                                                                |

### `Crowdin Add Webhook`

Integration name: **CROWDIN\_ADD\_WEBHOOK**

Tool to create a new webhook in a Crowdin project. Use after confirming the project ID and desired event triggers.

#### Parameters

| Parameter         | Type    | Required | Example                                             | Description                                                                                                                                                                                                                                                                                            |
| ----------------- | ------- | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `url`             | string  |     ✅    | `"https://example.com/webhooks/crowdin"`            | HTTPS endpoint URL that will receive webhook notifications                                                                                                                                                                                                                                             |
| `name`            | string  |     ✅    | `"translation_complete_notifier"`                   | Unique name for the webhook within this project                                                                                                                                                                                                                                                        |
| `events`          | array   |     ✅    | `["file.translated","file.approved"]`               | Event types that trigger this webhook. Common events: file.translated, file.approved, project.translated, project.approved, string.added, string.updated, string.deleted, suggestion.added, suggestion.approved, task.added, task.status\_changed. Note: string.\* events require batchingEnabled=true |
| `headers`         | object  |          | `{"X-Custom-Header":"value"}`                       | Custom HTTP headers to include with each webhook request                                                                                                                                                                                                                                               |
| `payload`         | object  |          | `{"event":"{{event}}","projectId":"{{projectId}}"}` | Custom payload template using Crowdin placeholders like {{event}}, {{projectId}}, {{fileId}}                                                                                                                                                                                                           |
| `isActive`        | boolean |          | `true`                                              | Set to false to create webhook in disabled state                                                                                                                                                                                                                                                       |
| `projectId`       | string  |     ✅    | `"123456"`                                          | Numeric project identifier from Crowdin                                                                                                                                                                                                                                                                |
| `contentType`     | string  |          | `"application/json"`                                | Content-Type header for POST requests. Defaults to application/json                                                                                                                                                                                                                                    |
| `requestType`     | string  |          | `"post"`                                            | HTTP method for webhook delivery. Use 'post' for payloads, 'get' for simple notifications                                                                                                                                                                                                              |
| `batchingEnabled` | boolean |          | `true`                                              | Enable batching for high-frequency events. Required for string.added, string.updated, string.deleted events                                                                                                                                                                                            |

### `Crowdin Assign Label To Strings`

Integration name: **CROWDIN\_ASSIGN\_LABEL\_TO\_STRINGS**

Assign a label to one or more source strings in a Crowdin project. Labels help organize and categorize strings for easier filtering and management. The label and strings must exist in the same project. Returns the updated string details with their assigned label IDs.

#### Parameters

| Parameter   | Type    | Required | Example   | Description                                                                                                                                      |
| ----------- | ------- | :------: | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `labelId`   | integer |     ✅    | `14`      | Numeric ID of the label to assign. Obtain from Add Label or List Labels action.                                                                  |
| `projectId` | integer |     ✅    | `813524`  | Numeric ID of the Crowdin project. Obtain from List Projects action or project settings.                                                         |
| `stringIds` | array   |     ✅    | `[2,4,6]` | List of source string IDs to assign the label to. At least one string ID is required. Obtain string IDs from List Strings or Get String actions. |

### `Crowdin Build Project Directory Translation`

Integration name: **CROWDIN\_BUILD\_PROJECT\_DIRECTORY\_TRANSLATION**

Tool to build translations for a specific directory in a Crowdin project. Use when you need to export translations for a directory. Returns build details after successfully initiating the build process.

#### Parameters

| Parameter                 | Type    | Required | Example  | Description                                                                                                |
| ------------------------- | ------- | :------: | -------- | ---------------------------------------------------------------------------------------------------------- |
| `projectId`               | integer |     ✅    | `813524` | Project identifier. Use CROWDIN\_LIST\_PROJECTS to get available project IDs.                              |
| `directoryId`             | integer |     ✅    | `60`     | Directory identifier. Use CROWDIN\_LIST\_DIRECTORIES to get available directory IDs.                       |
| `targetLanguageIds`       | array   |          | `["de"]` | Specify target languages for build (e.g., \['de', 'fr', 'uk']). Leave empty to build all target languages. |
| `exportApprovedOnly`      | boolean |          | `false`  | Defines whether to export only approved strings.                                                           |
| `skipUntranslatedFiles`   | boolean |          | `false`  | Defines whether to export only translated files. Note: Cannot be true if skipUntranslatedStrings is true.  |
| `preserveFolderHierarchy` | boolean |          | `false`  | Preserve folder hierarchy in the exported translation build.                                               |
| `skipUntranslatedStrings` | boolean |          | `false`  | Defines whether to export only translated strings. Note: Cannot be true if skipUntranslatedFiles is true.  |

### `Crowdin Build Project File Translation`

Integration name: **CROWDIN\_BUILD\_PROJECT\_FILE\_TRANSLATION**

Tool to build a project file translation in Crowdin. Use when you need to generate a translated version of a specific file for a target language. Returns a download URL for the translated file. May return 304 (Not Modified) if the file hasn't changed and If-None-Match header is provided.

#### Parameters

| Parameter                 | Type    | Required | Example                | Description                                                                                                            |
| ------------------------- | ------- | :------: | ---------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `fileId`                  | integer |     ✅    | `10`                   | File Identifier. Get via List Files action.                                                                            |
| `projectId`               | integer |     ✅    | `813524`               | Project Identifier. Get via List Projects action.                                                                      |
| `If_None_Match`           | string  |          | `"W/\"abc123def456\""` | Add Etag identifier to see whether any changes were applied to the file. Returns 304 (Not Modified) if file unchanged. |
| `exportAsXliff`           | boolean |          | `false`                | Defines whether to export file in XLIFF format. Use Export Project Translation instead. Default: false.                |
| `targetLanguageId`        | string  |     ✅    | `"de"`                 | Target Language Identifier (e.g., 'de', 'fr', 'uk'). Get via Project Target Languages.                                 |
| `exportApprovedOnly`      | boolean |          | `false`                | Defines whether to export only approved strings. Default: false.                                                       |
| `skipUntranslatedFiles`   | boolean |          | `false`                | Defines whether to export only translated file. Cannot be true when skipUntranslatedStrings is true. Default: false.   |
| `skipUntranslatedStrings` | boolean |          | `false`                | Defines whether to export only translated strings. Cannot be true when skipUntranslatedFiles is true. Default: false.  |

### `Crowdin Build Project Translation`

Integration name: **CROWDIN\_BUILD\_PROJECT\_TRANSLATION**

Tool to build project translation in Crowdin, generating downloadable translation files. Use to create translation builds before downloading. This is an asynchronous operation - use CROWDIN\_CHECK\_PROJECT\_BUILD\_STATUS to monitor progress.

#### Parameters

| Parameter                     | Type    | Required | Example       | Description                                                                                                                                                   |
| ----------------------------- | ------- | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `branchId`                    | integer |          | `12`          | Branch identifier to build translations for. If not specified, builds the main branch.                                                                        |
| `projectId`                   | integer |     ✅    | `813524`      | Project Identifier. Use CROWDIN\_LIST\_PROJECTS or CROWDIN\_GET\_PROJECT to get valid project IDs.                                                            |
| `targetLanguageIds`           | array   |          | `["uk","de"]` | List of target language codes to build (e.g., \['de', 'fr']). If not specified, builds all target languages. Use CROWDIN\_LIST\_LANGUAGES to get valid codes. |
| `exportApprovedOnly`          | boolean |          | —             | Export only approved translations. Useful for quality control workflows.                                                                                      |
| `skipUntranslatedFiles`       | boolean |          | —             | Skip untranslated files in the build. Cannot be used with skipUntranslatedStrings=true in the same request.                                                   |
| `skipUntranslatedStrings`     | boolean |          | —             | Skip untranslated strings in the build. Cannot be used with skipUntranslatedFiles=true in the same request.                                                   |
| `exportWithMinApprovalsCount` | integer |          | —             | Minimum number of approvals required for a translation to be exported. Applicable for Enterprise plans.                                                       |

### `Crowdin Cancel Project Translation Build`

Integration name: **CROWDIN\_CANCEL\_PROJECT\_TRANSLATION\_BUILD**

Tool to cancel a project translation build in Crowdin. Use when you need to stop an ongoing or queued translation build.

#### Parameters

| Parameter   | Type    | Required | Example  | Description                                           |
| ----------- | ------- | :------: | -------- | ----------------------------------------------------- |
| `buildId`   | integer |     ✅    | `2`      | Project Build Identifier. Get via List Project Builds |
| `projectId` | integer |     ✅    | `813524` | Project Identifier. Get via List Projects             |

### `Crowdin Check Bundle Export Status`

Integration name: **CROWDIN\_CHECK\_BUNDLE\_EXPORT\_STATUS**

Tool to check the status of a bundle export operation in Crowdin. Use when you need to monitor the progress of a bundle export initiated earlier. Returns the current export status, completion percentage, and download URL when the export finishes successfully.

#### Parameters

| Parameter   | Type    | Required | Example                                  | Description                                                                     |
| ----------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `bundleId`  | integer |     ✅    | `2`                                      | Bundle Identifier. Get via bundle creation or list bundles endpoint.            |
| `exportId`  | string  |     ✅    | `"223619eb-c7ff-4170-8905-ceb6878b2f18"` | Export Identifier in UUID format. Obtained from the export initiation response. |
| `projectId` | integer |     ✅    | `813524`                                 | Project Identifier. Get via List Projects action.                               |

### `Crowdin Check Glossary Export Status`

Integration name: **CROWDIN\_CHECK\_GLOSSARY\_EXPORT\_STATUS**

Tool to check the status of a glossary export operation. Use after initiating a glossary export to monitor progress and retrieve download URL.

#### Parameters

| Parameter    | Type    | Required | Example                                  | Description                                                                     |
| ------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `exportId`   | string  |     ✅    | `"f58bbc35-8124-4d00-8aa9-1158fc09550d"` | Export Identifier, consists of 36 characters. Get via Export Glossary endpoint. |
| `glossaryId` | integer |     ✅    | `607376`                                 | Glossary Identifier. Get via List Glossaries endpoint.                          |

### `Crowdin Check Glossary Import Status`

Integration name: **CROWDIN\_CHECK\_GLOSSARY\_IMPORT\_STATUS**

Tool to check the status of a glossary import operation. Use after initiating a glossary import to monitor progress and verify completion.

#### Parameters

| Parameter    | Type    | Required | Example                                  | Description                                                                     |
| ------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `importId`   | string  |     ✅    | `"d1882415-3396-4194-89a0-d91651db27de"` | Import Identifier, consists of 36 characters. Get via Import Glossary endpoint. |
| `glossaryId` | integer |     ✅    | `607376`                                 | Glossary Identifier. Get via List Glossaries endpoint.                          |

### `Crowdin Check Graphql Rate Limit`

Integration name: **CROWDIN\_CHECK\_GRAPHQL\_RATE\_LIMIT**

Tool to check GraphQL API rate limit status for Crowdin. Use to monitor remaining API quota and avoid rate limit errors. Returns maximum allowed points per hour, current call cost, remaining points in the window, and reset timestamp. The Crowdin GraphQL API enforces a 5000 points per hour rate limit using a normalized point scale.

#### Parameters

*No parameters required.*

### `Crowdin Check Project Report`

Integration name: **CROWDIN\_CHECK\_PROJECT\_REPORT**

Tool to check report generation status in a Crowdin project. Use when monitoring asynchronous report generation operations. Poll this endpoint until status is 'finished' or 'failed'.

#### Parameters

| Parameter   | Type    | Required | Example                                  | Description                                                 |
| ----------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------- |
| `reportId`  | string  |     ✅    | `"c5538669-678e-42b1-b39d-8cd5d7ec76fa"` | Report identifier, consists of 36 characters (UUID format). |
| `projectId` | integer |     ✅    | `813524`                                 | Project identifier. Get via List Projects action.           |

### `Crowdin Check Projects Translations Builds`

Integration name: **CROWDIN\_CHECK\_PROJECTS\_TRANSLATIONS\_BUILDS**

Tool to check the status of a project translation build in Crowdin. Use when you need to monitor the progress of a translation build operation. Returns build details including status (created, inProgress, finished, failed, canceled), progress percentage, and timestamps.

#### Parameters

| Parameter   | Type    | Required | Example  | Description                                           |
| ----------- | ------- | :------: | -------- | ----------------------------------------------------- |
| `buildId`   | integer |     ✅    | `2`      | Project Build Identifier. Get via List Project Builds |
| `projectId` | integer |     ✅    | `813524` | Project Identifier. Get via List Projects             |

### `Crowdin Check Tm Export Status`

Integration name: **CROWDIN\_CHECK\_TM\_EXPORT\_STATUS**

Tool to check Translation Memory export status in Crowdin. Use when you need to monitor the progress of an asynchronous TM export operation.

#### Parameters

| Parameter  | Type    | Required | Example                                  | Description                                                             |
| ---------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------- |
| `tmId`     | integer |     ✅    | `628628`                                 | TM Identifier. Get via List TMs action.                                 |
| `exportId` | string  |     ✅    | `"d3b87b69-13a4-4d84-b98d-336044f854f7"` | Export Identifier, consists of 36 characters. Get via Export TM action. |

### `Crowdin Check Tm Import Status`

Integration name: **CROWDIN\_CHECK\_TM\_IMPORT\_STATUS**

Tool to check Translation Memory import status in Crowdin. Use when you need to monitor the progress of an asynchronous TM import operation.

#### Parameters

| Parameter  | Type    | Required | Example                                  | Description                                                             |
| ---------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------- |
| `tmId`     | integer |     ✅    | `628628`                                 | TM Identifier. Get via List TMs action.                                 |
| `importId` | string  |     ✅    | `"fb7c1284-7287-4f1e-a829-740f554f26a4"` | Import Identifier, consists of 36 characters. Get via Import TM action. |

### `Crowdin Check Users Ai Reports`

Integration name: **CROWDIN\_CHECK\_USERS\_AI\_REPORTS**

Tool to check the generation status of an AI report for a Crowdin user. Use this to poll for completion status after generating an AI report. Returns current status, progress percentage, and timestamps.

#### Parameters

| Parameter    | Type    | Required | Example                                  | Description                                                                                                    |
| ------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `userId`     | integer |     ✅    | `17234082`                               | User Identifier. Must be a valid Crowdin user ID.                                                              |
| `aiReportId` | string  |     ✅    | `"bd7dbb8d-c5d3-423d-91b1-d5885f0ceb3f"` | AI Report Identifier, consists of 36 characters in UUID format (e.g., 'bd7dbb8d-c5d3-423d-91b1-d5885f0ceb3f'). |

### `Crowdin Clone Users Ai Prompts Clones`

Integration name: **CROWDIN\_CLONE\_USERS\_AI\_PROMPTS\_CLONES**

Tool to clone an existing AI prompt in Crowdin. Use when you need to duplicate an AI prompt with a new name or configuration.

#### Parameters

| Parameter    | Type    | Required | Example                         | Description                                                                                              |
| ------------ | ------- | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `name`       | string  |          | `"Cloned Pre-translate prompt"` | AI prompt name for the cloned prompt. If not provided, a default name will be generated.                 |
| `userId`     | integer |     ✅    | `17234082`                      | User Identifier. This is the ID of the user who owns the AI prompt to be cloned.                         |
| `aiPromptId` | integer |     ✅    | `245488`                        | AI Prompt identifier. Get via List AI Prompts action. This is the ID of the AI prompt you want to clone. |

### `Crowdin Create Glossary`

Integration name: **CROWDIN\_CREATE\_GLOSSARY**

Tool to create a new glossary in Crowdin. Use when you need to establish terminology standards for translation projects.

#### Parameters

| Parameter    | Type    | Required | Example                 | Description                                                                                                                                                                           |
| ------------ | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string  |     ✅    | `"Product Terminology"` | Name of the glossary. Should be descriptive and unique within your organization.                                                                                                      |
| `groupId`    | integer |          | `1`                     | Group ID to associate the glossary with (Enterprise only). If not provided, glossary will be created at organization level.                                                           |
| `languageId` | string  |     ✅    | `"en"`                  | Default language ID for the glossary (ISO 639-1 two-letter code, e.g., 'en' for English, 'de' for German, 'fr' for French). Use CROWDIN\_LIST\_LANGUAGES to get valid language codes. |

### `Crowdin Create Glossary Import`

Integration name: **CROWDIN\_CREATE\_GLOSSARY\_IMPORT**

Tool to import glossary terms from a file into a Crowdin glossary. Use when you need to bulk import glossary terms from TBX, CSV, or XLS/XLSX files. This is an asynchronous operation - use Check Glossary Import Status action to monitor completion.

#### Parameters

| Parameter                 | Type    | Required | Example                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------- | ------- | :------: | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scheme`                  | object  |          | `{"term_en":0,"description_en":1}` | Defines data columns mapping. Acceptable keys are: term\_{language\_code}, description\_{language\_code}, partOfSpeech\_{language\_code}, status\_{language\_code}, type\_{language\_code}, gender\_{language\_code}, url\_{language\_code}, note\_{language\_code}, conceptDefinition, conceptSubject, conceptNote, conceptUrl, conceptFigure. Values are column indices (0-based). Used for upload of CSV or XLS/XLSX files only. |
| `storageId`               | integer |     ✅    | `2645199192`                       | Storage Identifier of the uploaded glossary file. Upload file via Upload Storage action first. Supported file formats: TBX, CSV, XLS/XLSX.                                                                                                                                                                                                                                                                                          |
| `glossaryId`              | integer |     ✅    | `607376`                           | Glossary Identifier. Get via List Glossaries endpoint.                                                                                                                                                                                                                                                                                                                                                                              |
| `firstLineContainsHeader` | boolean |          | `false`                            | Defines whether file includes first row header that should not be imported. Used for upload of CSV or XLS/XLSX files only.                                                                                                                                                                                                                                                                                                          |

### `Crowdin Create Language`

Integration name: **CROWDIN\_CREATE\_LANGUAGE**

Tool to create a custom language in Crowdin. Use when standard languages don't meet needs and you require a custom language with specific codes and plural rules.

#### Parameters

| Parameter             | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                  |
| --------------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`                | string |     ✅    | `"tst2026"`          | Custom language code identifier (e.g., 'tst2026', 'custom'). Must be unique.                                                                                                                                                                                                 |
| `name`                | string |     ✅    | `"TestLanguage2026"` | Custom language name (e.g., 'TestLanguage2026', 'CustomDialect').                                                                                                                                                                                                            |
| `dialectOf`           | string |          | `"uk"`               | Use if custom language is a dialect of another language. Provide the parent language ID (e.g., 'uk', 'en'). Get ID via CROWDIN\_LIST\_LANGUAGES.                                                                                                                             |
| `localeCode`          | string |     ✅    | `"tst2026-UK"`       | Custom language locale code (e.g., 'tst2026-UK', 'custom-Uk'). Format: {code}-{region}.                                                                                                                                                                                      |
| `textDirection`       | string |     ✅    | `"ltr"`              | Text direction in custom language: 'ltr' (left-to-right) or 'rtl' (right-to-left).                                                                                                                                                                                           |
| `twoLettersCode`      | string |          | `"cu"`               | Custom language 2-letter code following ISO 639-1 format (e.g., 'cu', 'ts'). Optional.                                                                                                                                                                                       |
| `threeLettersCode`    | string |     ✅    | `"tsl"`              | Custom language 3-letter code following ISO 639-3 format (e.g., 'tsl', 'cus').                                                                                                                                                                                               |
| `pluralCategoryNames` | string |     ✅    | `"one,other"`        | Plural categories for the language. Select from predefined category combinations: 'one,other' (English-style), 'one,few,other' (Slavic), 'one,few,many,other' (Russian), 'zero,one,other' (Arabic-style), 'zero,one,two,few,many,other' (Arabic full), 'other' (no plurals). |

### `Crowdin Create Mts Translations`

Integration name: **CROWDIN\_CREATE\_MTS\_TRANSLATIONS**

Tool to translate strings using Crowdin's Machine Translation engine. Use when you need to quickly translate text strings programmatically.

#### Parameters

| Parameter                     | Type    | Required | Example                             | Description                                                                                                                                                    |
| ----------------------------- | ------- | :------: | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mtId`                        | integer |     ✅    | `605136`                            | Machine Translation engine identifier. Get this from your Crowdin MT settings.                                                                                 |
| `strings`                     | array   |     ✅    | `["Welcome!","Hello","Save as..."]` | List of strings to translate. Maximum 100 strings per request. At least one string is required.                                                                |
| `sourceLanguageId`            | string  |          | `"en"`                              | Source language identifier (ISO 639-1 code like 'en', 'de'). Required if languageRecognitionProvider is not set. Get valid codes via CROWDIN\_LIST\_LANGUAGES. |
| `targetLanguageId`            | string  |     ✅    | `"de"`                              | Target language identifier (ISO 639-1 code like 'de', 'fr', 'es'). Get valid codes via CROWDIN\_LIST\_LANGUAGES.                                               |
| `languageRecognitionProvider` | string  |          | `"crowdin"`                         | Provider for language recognition                                                                                                                              |

### `Crowdin Create Project Comment`

Integration name: **CROWDIN\_CREATE\_PROJECT\_COMMENT**

Tool to add a comment or issue to a string or file (asset) in a Crowdin project. Use when you need to provide feedback, ask questions, or report issues on specific translation strings or asset files. Either stringId or fileId must be provided.

#### Parameters

| Parameter          | Type    | Required | Example                                  | Description                                                                                                          |
| ------------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `text`             | string  |     ✅    | `"This is a test comment on the string"` | The comment text content. Must not be empty.                                                                         |
| `type`             | string  |     ✅    | `"comment"`                              | Comment type: 'comment' for regular comments, 'issue' for issue reports.                                             |
| `fileId`           | integer |          | `123`                                    | The numeric ID of the file (asset) to comment on. Required if stringId is not provided. Use for asset file comments. |
| `stringId`         | integer |          | `2`                                      | The numeric ID of the string to comment on. Required if fileId is not provided. Use for text string comments.        |
| `issueType`        | string  |          | `"general_question"`                     | Issue type when type='issue'. Only applicable for issue-type comments.                                               |
| `projectId`        | integer |     ✅    | `813524`                                 | The numeric ID of the Crowdin project. Obtain from List Projects action.                                             |
| `attachments`      | array   |          | —                                        | Optional list of attachment objects to include with the comment.                                                     |
| `targetLanguageId` | string  |          | `"es"`                                   | Target language code (ISO 639-1) if commenting on a specific translation. Optional.                                  |

### `Crowdin Create Project Member`

Integration name: **CROWDIN\_CREATE\_PROJECT\_MEMBER**

Tool to add members to a Crowdin project. Use when you need to grant project access to users by their IDs, usernames, or email addresses. Supports assigning roles and permissions.

#### Parameters

| Parameter         | Type    | Required | Example                                   | Description                                                                                                                                                                                          |
| ----------------- | ------- | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `roles`           | array   |          | —                                         | Array of role assignments with language permissions. For creating user with 'member' role leave this field empty. Note: managerAccess, developerAccess, and roles parameters are mutually exclusive. |
| `emails`          | array   |          | `["john@example.com","jane@example.com"]` | List of user email addresses to add as project members. Note: One of userIds, usernames, or emails is required.                                                                                      |
| `userIds`         | array   |          | `[1,2,3]`                                 | List of user identifiers to add as project members. Get via List Users action. Note: One of userIds, usernames, or emails is required.                                                               |
| `projectId`       | integer |     ✅    | `813524`                                  | Unique identifier of the Crowdin project. Get via List Projects action.                                                                                                                              |
| `usernames`       | array   |          | `["john_smith","jane_doe"]`               | List of Crowdin usernames to add as project members. Get via List Users action. Note: One of userIds, usernames, or emails is required.                                                              |
| `managerAccess`   | boolean |          | —                                         | Grant manager access to the project. Note: managerAccess, developerAccess, and roles parameters are mutually exclusive.                                                                              |
| `developerAccess` | boolean |          | —                                         | Grant developer access to the project. Note: managerAccess, developerAccess, and roles parameters are mutually exclusive.                                                                            |

### `Crowdin Create Projects Bundles`

Integration name: **CROWDIN\_CREATE\_PROJECTS\_BUNDLES**

Tool to add a new bundle to a Crowdin project. Bundles allow exporting sets of strings or files in specified formats regardless of original file format.

#### Parameters

| Parameter                      | Type    | Required | Example                           | Description                                                                                                               |
| ------------------------------ | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `name`                         | string  |     ✅    | `"test-bundle"`                   | Bundle name                                                                                                               |
| `format`                       | string  |     ✅    | `"xliff"`                         | Bundle file format (e.g., xliff, android, ios, macosx, java, etc.)                                                        |
| `labelIds`                     | array   |          | `[1,2,3]`                         | Array of label IDs to filter strings included in the bundle                                                               |
| `projectId`                    | integer |     ✅    | `813878`                          | Project Identifier                                                                                                        |
| `exportPattern`                | string  |     ✅    | `"/%file_name%.%file_extension%"` | Export pattern for the bundle files. Use placeholders like %file\_name%, %file\_extension%, %locale%, etc.                |
| `isMultilingual`               | boolean |          | —                                 | Whether the bundle should include all languages in a single file (for formats that support it)                            |
| `sourcePatterns`               | array   |     ✅    | `["/"]`                           | Array of source file patterns to include in the bundle. Use '/' for all files in root, or specify specific paths/patterns |
| `excludeLabelIds`              | array   |          | —                                 | Array of label IDs to exclude strings from the bundle                                                                     |
| `includeProjectSourceLanguage` | boolean |          | —                                 | Whether to include the project source language in the bundle export                                                       |

### `Crowdin Create Projects Distributions`

Integration name: **CROWDIN\_CREATE\_PROJECTS\_DISTRIBUTIONS**

Tool to create a new distribution in a Crowdin project. Use to package translated files or bundles for distribution.

#### Parameters

| Parameter    | Type    | Required | Example               | Description                                                                  |
| ------------ | ------- | :------: | --------------------- | ---------------------------------------------------------------------------- |
| `name`       | string  |     ✅    | `"Test Distribution"` | Distribution name                                                            |
| `fileIds`    | array   |          | `[10,14,24]`          | Files ids. Required for 'default' export mode. Get via CROWDIN\_LIST\_FILES. |
| `bundleIds`  | array   |          | `[45,62]`             | Bundles ids. Required for 'bundle' export mode. Get via List Bundles.        |
| `projectId`  | integer |     ✅    | `813524`              | Project Identifier. Get via CROWDIN\_LIST\_PROJECTS.                         |
| `exportMode` | string  |          | `"default"`           | Export mode: 'default' (file-based export) or 'bundle' (bundle-based export) |

### `Crowdin Create Projects Reports Settings Templates`

Integration name: **CROWDIN\_CREATE\_PROJECTS\_REPORTS\_SETTINGS\_TEMPLATES**

Tool to create a report settings template in Crowdin. Use when setting up cost estimation and translation pricing templates for projects.

#### Parameters

| Parameter   | Type    | Required | Example                  | Description                                                                            |
| ----------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------- |
| `name`      | string  |     ✅    | `"Test Report Template"` | Name of the report settings template.                                                  |
| `unit`      | string  |     ✅    | `"words"`                | Unit for calculating costs (e.g., 'words', 'strings', 'chars', 'chars\_with\_spaces'). |
| `config`    | object  |     ✅    | —                        | Configuration object containing base rates, individual rates, and net rate schemes.    |
| `currency`  | string  |     ✅    | `"USD"`                  | Currency code for the report (e.g., 'USD', 'EUR', 'GBP').                              |
| `isGlobal`  | boolean |          | —                        | Whether this template is global (organization-wide). Enterprise plans only.            |
| `isPublic`  | boolean |          | —                        | Whether this template is publicly accessible.                                          |
| `projectId` | integer |     ✅    | `813524`                 | Project ID to create the report settings template for. Get via List Projects action.   |

### `Crowdin Create Projects Strings Exporter Settings`

Integration name: **CROWDIN\_CREATE\_PROJECTS\_STRINGS\_EXPORTER\_SETTINGS**

Tool to add project strings exporter settings in Crowdin. Use when configuring how strings should be exported from a project in specific formats (Android XML, macOS Strings, or XLIFF).

#### Parameters

| Parameter   | Type    | Required | Example     | Description                                                                                                                                                                                                                                                                                                                          |
| ----------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `format`    | string  |     ✅    | `"android"` | Format for the strings exporter. Options: 'android' for Android XML files, 'macosx' for iOS/macOS strings files, 'xliff' for XLIFF format.                                                                                                                                                                                           |
| `settings`  | object  |          | `{}`        | Format-specific settings object. Each format accepts different configuration properties. For Android: may include convertPlaceholders, exportPattern, etc. For macOS: may include exportPattern, convertPlaceholders, etc. For XLIFF: may include exportPattern, convertPlaceholders, etc. Use empty object {} for default settings. |
| `projectId` | integer |     ✅    | `813524`    | Project identifier. Get via CROWDIN\_LIST\_PROJECTS action.                                                                                                                                                                                                                                                                          |

### `Crowdin Create Project Task`

Integration name: **CROWDIN\_CREATE\_PROJECT\_TASK**

Tool to create a new task in a Crowdin project. Use when you need to assign translation or proofreading work to team members.

#### Parameters

| Parameter    | Type    | Required | Example                            | Description                                                                                                                                    |
| ------------ | ------- | :------: | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`       | string  |     ✅    | `"translate"`                      | Task type: 'translate' for translation tasks or 'proofread' for proofreading tasks.                                                            |
| `title`      | string  |     ✅    | `"Translate product descriptions"` | Task title. A descriptive name for the task.                                                                                                   |
| `status`     | string  |     ✅    | `"todo"`                           | Task status. Common values include 'todo', 'in\_progress', 'done'.                                                                             |
| `fileIds`    | array   |          | `[10,20,30]`                       | Array of file IDs to include in the task. Either fileIds or stringIds must be provided.                                                        |
| `projectId`  | integer |     ✅    | `813524`                           | Project identifier. Use CROWDIN\_LIST\_PROJECTS to find available project IDs.                                                                 |
| `stringIds`  | array   |          | `[100,200,300]`                    | Array of string IDs to include in the task. Either fileIds or stringIds must be provided.                                                      |
| `languageId` | string  |     ✅    | `"de"`                             | Target language ID for the task (e.g., 'de', 'fr', 'en'). Use CROWDIN\_GET\_LANGUAGE or CROWDIN\_LIST\_LANGUAGES to find valid language codes. |

### `Crowdin Create String`

Integration name: **CROWDIN\_CREATE\_STRING**

Tool to add a new source string to a Crowdin project. Use when you need to create translatable content programmatically or add strings that are not part of uploaded files.

#### Parameters

| Parameter    | Type    | Required | Example                               | Description                                                                                                              |
| ------------ | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `text`       | string  |     ✅    | `"Welcome to our application"`        | Source string text content to be translated.                                                                             |
| `fileId`     | integer |          | `14`                                  | File identifier to associate the string with a specific file. Required for file-based projects.                          |
| `context`    | string  |          | `"Displayed on the home page header"` | Contextual information for translators to understand the string usage.                                                   |
| `isHidden`   | boolean |          | `false`                               | Hide string from contributors if true. Defaults to false.                                                                |
| `labelIds`   | array   |          | `[1,2,3]`                             | Array of label IDs to assign to the string for organization. Label IDs must exist in the same project.                   |
| `maxLength`  | integer |          | `100`                                 | Maximum allowed length of the translated string. 0 or omit for unlimited.                                                |
| `projectId`  | integer |     ✅    | `813524`                              | Unique identifier of the Crowdin project. Get from list\_projects or get\_project.                                       |
| `identifier` | string  |          | `"app.welcome.title"`                 | Custom key identifier for the string. Required for file-based projects. Useful for referencing strings programmatically. |

### `Crowdin Create Tm Import`

Integration name: **CROWDIN\_CREATE\_TM\_IMPORT**

Tool to import a Translation Memory file into Crowdin. Use when you need to import TM data from TMX, CSV, or XLS/XLSX files. This is an asynchronous operation - use Check TM Import Status action to monitor progress.

#### Parameters

| Parameter                 | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                 |
| ------------------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tmId`                    | integer |     ✅    | `628628`                        | TM Identifier. Get via List TMs action.                                                                                                                                                                                                                     |
| `scheme`                  | object  |          | `{"de":1,"en":0,"pl":2,"uk":4}` | Defines data columns mapping for CSV or XLS/XLSX files. The value should be a dictionary containing language ID as key and column number as value (column numbering starts at 0). Example: {'en': 0, 'de': 1, 'pl': 2}. Required for CSV or XLS/XLSX files. |
| `storageId`               | integer |     ✅    | `2645199046`                    | Storage Identifier of the uploaded TM file. Upload file first using Upload Storage action. Supported formats: TMX, CSV, XLS/XLSX.                                                                                                                           |
| `firstLineContainsHeader` | boolean |          | `false`                         | Defines whether file includes first row header that should not be imported. Only used for CSV or XLS/XLSX files. Defaults to false.                                                                                                                         |

### `Crowdin Create Tms`

Integration name: **CROWDIN\_CREATE\_TMS**

Tool to create a new Translation Memory (TM) in Crowdin. Use when you need to establish a centralized repository of translations for reuse across projects.

#### Parameters

| Parameter    | Type    | Required | Example                 | Description                                                                                                                                                                             |
| ------------ | ------- | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string  |     ✅    | `"Knowledge Base's TM"` | Translation Memory name. Should be descriptive and unique within your organization.                                                                                                     |
| `groupId`    | integer |          | `1`                     | Group ID to associate the TM with (Enterprise only). If not provided, TM will be created at organization level.                                                                         |
| `languageId` | string  |     ✅    | `"en"`                  | Translation Memory Language Identifier (ISO 639-1 two-letter code, e.g., 'en' for English, 'fr' for French, 'de' for German). Use CROWDIN\_LIST\_LANGUAGES to get valid language codes. |

### `Crowdin Create Tms Segments`

Integration name: **CROWDIN\_CREATE\_TMS\_SEGMENTS**

Tool to create translation memory segments in Crowdin. Use when you need to add new translation pairs to a translation memory for future reuse.

#### Parameters

| Parameter | Type    | Required | Example                                                                              | Description                                                                                                                                              |
| --------- | ------- | :------: | ------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tmId`    | integer |     ✅    | `628628`                                                                             | Translation Memory Identifier. Get via List TMs action.                                                                                                  |
| `records` | array   |     ✅    | `[{"text":"Hello World","languageId":"en"},{"text":"Hallo Welt","languageId":"de"}]` | List of translation memory segment records. Each record contains a language ID and corresponding text segment. Include source and target language pairs. |

### `Crowdin Create Tms Segments Records`

Integration name: **CROWDIN\_CREATE\_TMS\_SEGMENTS\_RECORDS**

Tool to create translation memory segment records in Crowdin. Use when you need to add additional language translations to an existing TM segment.

#### Parameters

| Parameter   | Type    | Required | Example                                   | Description                                                                                                                             |
| ----------- | ------- | :------: | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `tmId`      | integer |     ✅    | `628628`                                  | Translation Memory Identifier. Get via List TMs action.                                                                                 |
| `records`   | array   |     ✅    | `[{"text":"Hi there","languageId":"en"}]` | List of translation memory segment records to add. Each record contains a language ID and corresponding text for that specific segment. |
| `segmentId` | integer |     ✅    | `4`                                       | TM Segment Identifier. Get via List TM Segments action.                                                                                 |

### `Crowdin Create Translation Alignment`

Integration name: **CROWDIN\_CREATE\_TRANSLATION\_ALIGNMENT**

Tool to create translation alignment for a project. Use when aligning translations between source and target languages.

#### Parameters

| Parameter          | Type    | Required | Example                                        | Description                                                                                           |
| ------------------ | ------- | :------: | ---------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `text`             | string  |     ✅    | `"Your password has been reset successfully!"` | Text for alignment between source and target languages.                                               |
| `projectId`        | integer |     ✅    | `813524`                                       | Project Identifier. Get via list\_projects action.                                                    |
| `sourceLanguageId` | string  |     ✅    | `"en"`                                         | Source Language Identifier (e.g., 'en' for English, 'de' for German). Get via list\_languages action. |
| `targetLanguageId` | string  |     ✅    | `"de"`                                         | Target Language Identifier (e.g., 'de' for German, 'fr' for French). Get via list\_languages action.  |

### `Crowdin Create Users Ai Prompts`

Integration name: **CROWDIN\_CREATE\_USERS\_AI\_PROMPTS**

Tool to create a new AI prompt in Crowdin. Use when you need to configure AI-assisted translation, translation assistance, or quality assurance checks with specific context and settings.

#### Parameters

| Parameter           | Type    | Required | Example                           | Description                                                                                                                                       |
| ------------------- | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`              | string  |     ✅    | `"Product Translation Assistant"` | AI prompt name. Should be descriptive and indicate the prompt's purpose.                                                                          |
| `action`            | string  |     ✅    | `"pre_translate"`                 | AI prompt action type: 'pre\_translate' for automatic translation, 'assist' for translation assistance, 'qa\_check' for quality assurance checks. |
| `config`            | object  |     ✅    | —                                 | Configuration object containing prompt settings, context options, and behavior parameters.                                                        |
| `userId`            | integer |     ✅    | `17234082`                        | User Identifier. This is the ID of the user who will own the AI prompt.                                                                           |
| `aiModelId`         | string  |          | `"gpt-4"`                         | AI Model ID to use for this prompt. If not specified, default model for the provider will be used.                                                |
| `isEnabled`         | boolean |          | —                                 | Whether the prompt is enabled immediately upon creation. Default: false.                                                                          |
| `aiProviderId`      | integer |          | `1`                               | AI Provider ID to use for this prompt. If not specified, default provider will be used.                                                           |
| `enabledProjectIds` | array   |          | `[123,456]`                       | List of project IDs where this prompt should be enabled. If null or not provided, prompt is available for all projects.                           |

### `Crowdin Create Users Ai Settings Snippets`

Integration name: **CROWDIN\_CREATE\_USERS\_AI\_SETTINGS\_SNIPPETS**

Tool to create an AI snippet in Crowdin. Use when you need to add a custom placeholder for AI prompts that will be used across translations.

#### Parameters

| Parameter     | Type    | Required | Example                                                                                                                 | Description                                                                                                                                                                             |
| ------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `value`       | string  |     ✅    | `"This product represents an innovative solution designed to streamline business operations and enhance productivity."` | The text content that will be utilized in the AI prompt. Must not exceed 4000 characters.                                                                                               |
| `userId`      | integer |     ✅    | `17234082`                                                                                                              | User Identifier. This is the ID of the user who will own the AI snippet.                                                                                                                |
| `description` | string  |     ✅    | `"Product marketing description"`                                                                                       | Description of the AI snippet. Must be unique and between 3 and 255 characters.                                                                                                         |
| `placeholder` | string  |     ✅    | `"%custom:productMarketing2026%"`                                                                                       | Placeholder text for the AI snippet. Must be unique, start with '%custom:' and end with '%'. Allowed characters: a-z, A-Z, 0-9, hyphen. The full length must not exceed 255 characters. |

### `Crowdin Create Users Reports Settings Templates`

Integration name: **CROWDIN\_CREATE\_USERS\_REPORTS\_SETTINGS\_TEMPLATES**

Tool to create a user report settings template in Crowdin. Use when setting up cost estimation and translation pricing templates for specific users.

#### Parameters

| Parameter  | Type    | Required | Example                  | Description                                                                                |
| ---------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------ |
| `name`     | string  |     ✅    | `"Test Report Template"` | Name of the report settings template.                                                      |
| `unit`     | string  |     ✅    | `"words"`                | Unit for calculating costs (e.g., 'words', 'strings', 'chars', 'chars\_with\_spaces').     |
| `config`   | object  |     ✅    | —                        | Configuration object containing base rates, individual rates, and net rate schemes.        |
| `userId`   | integer |     ✅    | `17234082`               | User ID to create the report settings template for. Get via Get Authenticated User action. |
| `currency` | string  |     ✅    | `"USD"`                  | Currency code for the report (e.g., 'USD', 'EUR', 'GBP').                                  |

### `Crowdin Delete Branch`

Integration name: **CROWDIN\_DELETE\_BRANCH**

Tool to delete a specific branch from a Crowdin project. Use when you need to remove an obsolete branch after it's fully merged.

#### Parameters

| Parameter   | Type    | Required | Example | Description                               |
| ----------- | ------- | :------: | ------- | ----------------------------------------- |
| `branchId`  | integer |     ✅    | `10`    | Unique identifier of the branch to delete |
| `projectId` | integer |     ✅    | `12345` | Unique identifier of the Crowdin project  |

### `Crowdin Delete Directory`

Integration name: **CROWDIN\_DELETE\_DIRECTORY**

Tool to delete a specific directory from a Crowdin project. Use when you need to remove an obsolete directory and its contents.

#### Parameters

| Parameter     | Type    | Required | Example  | Description                                  |
| ------------- | ------- | :------: | -------- | -------------------------------------------- |
| `projectId`   | integer |     ✅    | `813878` | Unique identifier of the Crowdin project     |
| `directoryId` | integer |     ✅    | `74`     | Unique identifier of the directory to delete |

### `Crowdin Delete File`

Integration name: **CROWDIN\_DELETE\_FILE**

Tool to delete a specific file from a Crowdin project. Use when you need to remove an obsolete or incorrect file from the project.

#### Parameters

| Parameter   | Type    | Required | Example  | Description                               |
| ----------- | ------- | :------: | -------- | ----------------------------------------- |
| `fileId`    | integer |     ✅    | `70`     | File Identifier. Get via List Files       |
| `projectId` | integer |     ✅    | `813878` | Project Identifier. Get via List Projects |

### `Crowdin Delete Glossary`

Integration name: **CROWDIN\_DELETE\_GLOSSARY**

Tool to delete a glossary from Crowdin. Use when you need to permanently remove a glossary that is no longer needed.

#### Parameters

| Parameter    | Type    | Required | Example  | Description                                                                                             |
| ------------ | ------- | :------: | -------- | ------------------------------------------------------------------------------------------------------- |
| `glossaryId` | integer |     ✅    | `668800` | Unique identifier of the glossary to delete. Use List Glossaries action to find available glossary IDs. |

### `Crowdin Delete Glossary Concept`

Integration name: **CROWDIN\_DELETE\_GLOSSARY\_CONCEPT**

Tool to delete a concept from a Crowdin glossary. Use when you need to remove obsolete or incorrect concepts from your glossary.

#### Parameters

| Parameter    | Type    | Required | Example  | Description                                                                           |
| ------------ | ------- | :------: | -------- | ------------------------------------------------------------------------------------- |
| `conceptId`  | integer |     ✅    | `4`      | Concept identifier to delete. Get via List Concepts action.                           |
| `glossaryId` | integer |     ✅    | `607376` | Glossary identifier containing the concept to delete. Get via List Glossaries action. |

### `Crowdin Delete Glossary Term`

Integration name: **CROWDIN\_DELETE\_GLOSSARY\_TERM**

Tool to delete a term from a Crowdin glossary. Use when you need to remove obsolete or incorrect terminology entries. This operation is permanent and cannot be undone.

#### Parameters

| Parameter    | Type    | Required | Example  | Description                                                                                  |
| ------------ | ------- | :------: | -------- | -------------------------------------------------------------------------------------------- |
| `termId`     | integer |     ✅    | `4`      | Term identifier to delete. Get via CROWDIN\_LIST\_TERMS action.                              |
| `glossaryId` | integer |     ✅    | `607376` | Glossary identifier containing the term to delete. Get via CROWDIN\_LIST\_GLOSSARIES action. |

### `Crowdin Delete Glossary Terms`

Integration name: **CROWDIN\_DELETE\_GLOSSARY\_TERMS**

Tool to clear terms from a Crowdin glossary. Use when you need to remove all terms or specific terms based on language, concept, or term ID. Without optional filters, this action deletes all terms in the glossary.

#### Parameters

| Parameter             | Type    | Required | Example  | Description                                                                                                                                              |
| --------------------- | ------- | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `conceptId`           | integer |          | `123456` | Concept identifier to delete a specific term along with its translations. Use CROWDIN\_LIST\_TERMS or CROWDIN\_LIST\_CONCEPTS to get concept IDs.        |
| `glossaryId`          | integer |     ✅    | `607376` | Glossary identifier. Use CROWDIN\_LIST\_GLOSSARIES to get available glossary IDs.                                                                        |
| `languageId`          | string  |          | `"en"`   | Language identifier to delete terms for a specific language only. Use CROWDIN\_LIST\_LANGUAGES to get supported language codes (e.g., 'en', 'fr', 'de'). |
| `translationOfTermId` | integer |          | `789012` | Term identifier to delete a specific term along with its translations. Use CROWDIN\_LIST\_TERMS to get term IDs.                                         |

### `Crowdin Delete Label`

Integration name: **CROWDIN\_DELETE\_LABEL**

Tool to delete the label identified by the specified label ID in a project. Use when you need to remove outdated or incorrect labels. Ensure no resources reference the label before deletion.

#### Parameters

| Parameter    | Type    | Required | Example  | Description                                                                                                                              |
| ------------ | ------- | :------: | -------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `label_id`   | integer |     ✅    | `42`     | Numeric ID of the label to permanently delete from the project. Use the List Labels action to find available label IDs within a project. |
| `project_id` | integer |     ✅    | `813954` | Numeric ID of the Crowdin project containing the label to delete. Use the List Projects action to find available project IDs.            |

### `Crowdin Delete Language`

Integration name: **CROWDIN\_DELETE\_LANGUAGE**

Tool to delete a custom language from Crowdin. Use when you need to remove a custom language that is no longer needed. Note: Only custom languages can be deleted, not standard built-in languages.

#### Parameters

| Parameter    | Type   | Required | Example      | Description                                                                                                                                             |
| ------------ | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `languageId` | string |     ✅    | `"testcust"` | Language identifier of the custom language to delete. Get via List Supported Languages endpoint. Must be a custom language ID, not a standard language. |

### `Crowdin Delete Project`

Integration name: **CROWDIN\_DELETE\_PROJECT**

Tool to delete a Crowdin project by its ID. Use when you need to permanently remove a project after confirming no further usage. Ensure all resources are no longer needed before deletion.

#### Parameters

| Parameter    | Type    | Required | Example | Description                         |
| ------------ | ------- | :------: | ------- | ----------------------------------- |
| `project_id` | integer |     ✅    | `1`     | ID of the Crowdin project to delete |

### `Crowdin Delete Project Comment Attachment`

Integration name: **CROWDIN\_DELETE\_PROJECT\_COMMENT\_ATTACHMENT**

Tool to delete an attachment from a string or asset comment in a Crowdin project. Use when you need to remove a file attachment from a comment. This operation is permanent.

#### Parameters

| Parameter      | Type    | Required | Example  | Description                                                                                                          |
| -------------- | ------- | :------: | -------- | -------------------------------------------------------------------------------------------------------------------- |
| `commentId`    | integer |     ✅    | `6`      | String/asset comment identifier. Get via CROWDIN\_LIST\_STRING\_COMMENTS or CROWDIN\_LIST\_PROJECT\_COMMENTS action. |
| `projectId`    | integer |     ✅    | `813878` | Project identifier. Get via CROWDIN\_LIST\_PROJECTS action.                                                          |
| `attachmentId` | integer |     ✅    | `2`      | Attachment identifier to delete from the comment.                                                                    |

### `Crowdin Delete Project Member`

Integration name: **CROWDIN\_DELETE\_PROJECT\_MEMBER**

Tool to delete a member from a Crowdin project. Use when you need to remove a user's access to a specific project.

#### Parameters

| Parameter   | Type    | Required | Example    | Description                                                               |
| ----------- | ------- | :------: | ---------- | ------------------------------------------------------------------------- |
| `memberId`  | integer |     ✅    | `17234082` | Project member identifier to delete. Get via List Project Members action. |
| `projectId` | integer |     ✅    | `813878`   | Unique identifier of the Crowdin project. Get via List Projects action.   |

### `Crowdin Delete Projects Bundles`

Integration name: **CROWDIN\_DELETE\_PROJECTS\_BUNDLES**

Tool to delete a bundle from a Crowdin project. Use when you need to remove a bundle that is no longer needed.

#### Parameters

| Parameter   | Type    | Required | Example  | Description        |
| ----------- | ------- | :------: | -------- | ------------------ |
| `bundleId`  | integer |     ✅    | `4`      | Bundle Identifier  |
| `projectId` | integer |     ✅    | `813878` | Project Identifier |

### `Crowdin Delete Storage`

Integration name: **CROWDIN\_DELETE\_STORAGE**

Tool to delete a storage from Crowdin. Use when you need to remove a storage that is no longer needed or was uploaded incorrectly.

#### Parameters

| Parameter   | Type    | Required | Example      | Description                                                                |
| ----------- | ------- | :------: | ------------ | -------------------------------------------------------------------------- |
| `storageId` | integer |     ✅    | `2645203002` | Storage Identifier. Get via List Storages or from Upload Storage response. |

### `Crowdin Delete String`

Integration name: **CROWDIN\_DELETE\_STRING**

Tool to delete a specific source string from a Crowdin project. Use when you need to remove obsolete or incorrect strings that are no longer needed.

#### Parameters

| Parameter   | Type    | Required | Example  | Description                                                                                                                              |
| ----------- | ------- | :------: | -------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `stringId`  | integer |     ✅    | `48`     | Numeric ID of the string to permanently delete from the project. Use the List Strings or Get String action to find available string IDs. |
| `projectId` | integer |     ✅    | `813942` | Numeric ID of the Crowdin project containing the string. Use the List Projects action to find available project IDs.                     |

### `Crowdin Delete Tms`

Integration name: **CROWDIN\_DELETE\_TMS**

Tool to delete a Translation Memory (TM) from Crowdin. Use when you need to permanently remove a TM that is no longer needed.

#### Parameters

| Parameter | Type    | Required | Example  | Description                             |
| --------- | ------- | :------: | -------- | --------------------------------------- |
| `tmId`    | integer |     ✅    | `628628` | TM Identifier. Get via List TMs action. |

### `Crowdin Get String`

Integration name: **CROWDIN\_GET\_STRING**

Retrieves detailed information about a specific source string in a Crowdin project. Returns the string's text content, metadata (type, context, maxLength), translation status flags (isHidden, isDuplicate, hasPlurals, isIcu), associated labels, timestamps, and editor URL. Use this to inspect individual strings before editing or to verify string properties.

#### Parameters

| Parameter   | Type    | Required | Example | Description                                                                                                |
| ----------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `stringId`  | integer |     ✅    | `6789`  | The numeric ID of the source string to retrieve. Obtain from List Strings or other string-related actions. |
| `projectId` | integer |     ✅    | `12345` | The numeric ID of the Crowdin project containing the string. Obtain from List Projects action.             |

### `Crowdin Validate Qa Checks`

Integration name: **CROWDIN\_VALIDATE\_QA\_CHECKS**

Tool to validate translation text by QA checks in a Crowdin project. Use to check if translations meet quality requirements before submitting.

#### Parameters

| Parameter      | Type    | Required | Example                                                       | Description                                                                                                                   |
| -------------- | ------- | :------: | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `projectId`    | integer |     ✅    | `813524`                                                      | Project identifier. Get via List Projects endpoint.                                                                           |
| `translations` | array   |     ✅    | `[{"text":"Hallo, Crowdin!","stringId":2,"languageId":"de"}]` | Array of translation items to validate. Each item must include stringId, languageId, and text. At least one item is required. |

***

This page continues with the remaining Crowdin tools in the same format.


# Dart

Your Toolhouse AI Worker can connect to Dart using 18 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](https://toolhouse.app/auth-connections?authkit_slugs=dart).

## Tools (18)

### `Dart Add Task Attachment From Url`

Integration name: **DART\_ADD\_TASK\_ATTACHMENT\_FROM\_URL**

Tool to attach a file from a provided URL to a task. The file will be downloaded and attached asynchronously. Use when you need to add a file attachment to a task from a URL source.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                           | Description                                           |
| --------- | ------ | :------: | --------------------------------- | ----------------------------------------------------- |
| `id`      | string |     ✅    | `"uomr9LySipco"`                  | Universal unique task ID (12 alphanumeric characters) |
| `url`     | string |     ✅    | `"https://picsum.photos/200/300"` | The URL of the file to upload (must be a valid URI)   |
| `name`    | string |     ✅    | `"test-image.png"`                | The name of the file to upload                        |

***

### `Dart Add Task Comment`

Integration name: **DART\_ADD\_TASK\_COMMENT**

Tool to create a new comment on a DART task. Use when you need to add feedback, notes, or discussion to a specific task. Supports markdown formatting and threaded replies via parentId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                        | Description                                                               |
| ----------- | ------ | :------: | ---------------------------------------------- | ------------------------------------------------------------------------- |
| `text`      | string |     ✅    | `"This is a test comment created via the API"` | The full comment content, supporting markdown formatting                  |
| `task_id`   | string |     ✅    | `"SmkpXInBpO1k"`                               | The unique 12-character alphanumeric ID of the task receiving the comment |
| `parent_id` | string |          | `"AbC123XyZ456"`                               | Optional ID of a parent comment for creating threaded replies             |

***

### `Dart Add Task Time Tracking`

Integration name: **DART\_ADD\_TASK\_TIME\_TRACKING**

Tool to add a time tracking entry to a DART task. Use when you need to record time spent on a specific task. The finishedAt timestamp must be after startedAt.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                       | Description                                                                                                                |
| ------------ | ------ | :------: | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"vhEe6Snc5enx"`              | The task ID (12-character alphanumeric identifier)                                                                         |
| `user`       | string |          | `"partnerships@composio.dev"` | The name or email of the user to attribute the tracked time to. Use null or omit to use the current user                   |
| `startedAt`  | string |     ✅    | `"2025-12-15T10:00:00Z"`      | The start timestamp for the tracked time entry in ISO 8601 format (e.g., 2025-12-15T10:00:00Z)                             |
| `finishedAt` | string |     ✅    | `"2025-12-15T11:00:00Z"`      | The end timestamp for the tracked time entry in ISO 8601 format (e.g., 2025-12-15T11:00:00Z). Must be after the start time |

***

### `Dart Create Doc`

Integration name: **DART\_CREATE\_DOC**

Tool to create a new doc in Dart. Use when you need to record a new document that the user intends to write down. By default, the created doc will be in the Docs folder unless a specific folder is specified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `item`    | object |     ✅    | —       | Container for doc creation data including title, optional folder, and optional text content |

***

### `Dart Create Task`

Integration name: **DART\_CREATE\_TASK**

Tool to create a new task in DART with title and optional metadata. Use when you need to add a task to a workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                          |
| --------- | ------ | :------: | ------- | ------------------------------------ |
| `item`    | object |     ✅    | —       | Task details wrapped in item object. |

***

### `Dart Delete Doc`

Integration name: **DART\_DELETE\_DOC**

Tool to move an existing doc to the trash where it can be recovered if needed. Use when you need to delete a doc without permanently removing it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                     |
| --------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"pYR2Uue76hQ7"` | Universal, unique identifier for the doc. Must match pattern ^\[a-zA-Z0-9]{12}$ |

***

### `Dart Delete Task`

Integration name: **DART\_DELETE\_TASK**

Tool to delete an existing task in Dart by moving it to trash. Use when a task needs to be removed but can be recovered later.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                        |
| --------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"zwWzzgbdyopy"` | The universal, unique identifier for the task. Must be 12 alphanumeric characters. |

***

### `Dart Get Config`

Integration name: **DART\_GET\_CONFIG**

Tool to retrieve workspace configuration including dartboards, folders, types, statuses, and more. Use when you need to understand available options in the workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dart Get Doc`

Integration name: **DART\_GET\_DOC**

Tool to retrieve an existing doc with metadata and content. Use when you need to access a specific document's details including title, folder, and text content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                                                                 |
| --------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"zCpfUGTlT7Ur"` | The universal, unique identifier of the document. Must be a 12-character alphanumeric string (pattern: ^\[a-zA-Z0-9]{12}$). |

***

### `Dart Get Task`

Integration name: **DART\_GET\_TASK**

Tool to retrieve an existing task with full details including title, dartboard, status, and description. Use when you need to fetch complete information about a specific task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                           |
| --------- | ------ | :------: | ---------------- | ----------------------------------------------------- |
| `id`      | string |     ✅    | `"SmkpXInBpO1k"` | Universal unique task ID (12 alphanumeric characters) |

***

### `Dart List Comments`

Integration name: **DART\_LIST\_COMMENTS**

Tool to list comments for a task with filtering options. Use when you need to retrieve comments on a specific task. Supports filtering by author, text content, date range, and pagination. Can be ordered by date or hierarchical thread structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
| `o`                   | array   |          | `["published_at"]`       | Ordering options for results. Valid values: 'published\_at' (ascending), '-published\_at' (descending), 'hierarchical' (thread order). |
| `ids`                 | string  |          | `"comment1,comment2"`    | Filter by specific comment IDs (comma-separated).                                                                                      |
| `text`                | string  |          | `"important"`            | Filter by comment text content. Searches for text within comments.                                                                     |
| `limit`               | integer |          | `10`                     | Number of results per page for pagination.                                                                                             |
| `author`              | string  |          | `"john@example.com"`     | Filter by comment author name or email.                                                                                                |
| `offset`              | integer |          | `0`                      | Starting index for pagination results.                                                                                                 |
| `task_id`             | string  |     ✅    | `"SmkpXInBpO1k"`         | The task identifier to retrieve associated comments. This parameter is required.                                                       |
| `author_id`           | string  |          | `"auth123"`              | Filter by author's unique identifier.                                                                                                  |
| `parent_id`           | string  |          | `"parent123"`            | Filter comments by parent comment identifier to get replies.                                                                           |
| `published_at`        | string  |          | `"2024-01-15T10:30:00Z"` | Filter by exact publication timestamp (ISO 8601 format).                                                                               |
| `published_at_after`  | string  |          | `"2024-01-01T00:00:00Z"` | Filter for comments published after this date (ISO 8601 format).                                                                       |
| `published_at_before` | string  |          | `"2024-12-31T23:59:59Z"` | Filter for comments published before this date (ISO 8601 format).                                                                      |

***

### `Dart List Docs`

Integration name: **DART\_LIST\_DOCS**

Tool to list docs with filtering and search capabilities. Use when you need to retrieve documents from DART with filters like folder, title, text content, or full-text search. Supports pagination and custom ordering by creation date, update date, or title.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                    | Description                                                                                                                                                                  |
| ------------- | ------- | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `o`           | array   |          | `["created_at"]`           | Ordering field(s) for results. Valid options: 'folder\_\_order', 'order', 'created\_at', 'updated\_at', 'title'. Use '-' prefix for descending order (e.g., '-created\_at'). |
| `s`           | string  |          | `"meeting notes"`          | Full-text search query to search by title, text content, or folder title.                                                                                                    |
| `ids`         | string  |          | `"doc1,doc2"`              | Filter by specific document IDs (comma-separated).                                                                                                                           |
| `text`        | string  |          | `"implementation details"` | Filter by document text content.                                                                                                                                             |
| `limit`       | integer |          | `10`                       | Number of results to return per page for pagination.                                                                                                                         |
| `title`       | string  |          | `"API Guide"`              | Filter by document title.                                                                                                                                                    |
| `editor`      | string  |          | `"john@example.com"`       | Filter by editor name or email.                                                                                                                                              |
| `folder`      | string  |          | `"Product Documentation"`  | Filter by folder name or title.                                                                                                                                              |
| `offset`      | integer |          | `0`                        | The initial index from which to return results for pagination.                                                                                                               |
| `in_trash`    | boolean |          | `false`                    | Include or exclude trashed docs. Set to true to show only trashed docs, false to exclude them.                                                                               |
| `folder_id`   | string  |          | `"folder123"`              | Filter by folder unique identifier.                                                                                                                                          |
| `no_defaults` | boolean |          | `false`                    | Whether default filters and sorting are applied when false (default) or no defaults are applied when true. Explicit filters or sorting always override defaults.             |

***

### `Dart List Help Center Articles`

Integration name: **DART\_LIST\_HELP\_CENTER\_ARTICLES**

Tool to search help center articles by semantic similarity to query. Use when you need to find relevant help articles based on a short search query (1-5 words). Returns up to two most relevant articles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`   | string |     ✅    | `"api"` | The search query to find relevant help articles. Must be 1-5 words with minimum length of 1 character. The endpoint performs semantic similarity matching to find the most relevant articles. |

***

### `Dart List Tasks`

Integration name: **DART\_LIST\_TASKS**

Tool to list tasks with powerful filtering options. Use when you need to retrieve tasks from DART with filters like dartboard, status, assignee, tags, priority, dates, or completion state. Supports pagination and custom ordering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                  | Description                                                                                                                                              |
| ------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `o`                 | array   |          | `["created_at"]`         | Ordering field(s) for results. Valid options: 'dartboard\_\_order', 'order', 'created\_at', 'updated\_at', 'title'. Use '-' prefix for descending order. |
| `ids`               | string  |          | `"task1,task2"`          | Filter by specific task IDs (comma-separated).                                                                                                           |
| `tag`               | string  |          | `"urgent"`               | Filter by tag name.                                                                                                                                      |
| `size`              | integer |          | `1`                      | Filter by task size or story points.                                                                                                                     |
| `type`              | string  |          | `"Bug"`                  | Filter by task type name.                                                                                                                                |
| `view`              | string  |          | `"My Tasks"`             | Filter by view name.                                                                                                                                     |
| `limit`             | integer |          | `10`                     | Number of results to return per page for pagination.                                                                                                     |
| `title`             | string  |          | `"API integration"`      | Filter by task title text content.                                                                                                                       |
| `due_at`            | string  |          | `"2024-02-15T10:30:00Z"` | Filter by exact due date timestamp (ISO 8601 format).                                                                                                    |
| `offset`            | integer |          | `0`                      | The initial index from which to return results for pagination.                                                                                           |
| `status`            | string  |          | `"In Progress"`          | Filter by task status name.                                                                                                                              |
| `tag_id`            | string  |          | `"tag123"`               | Filter by tag unique identifier.                                                                                                                         |
| `type_id`           | string  |          | `"type123"`              | Filter by task type unique identifier.                                                                                                                   |
| `view_id`           | string  |          | `"view123"`              | Filter by view unique identifier.                                                                                                                        |
| `assignee`          | string  |          | `"john@example.com"`     | Filter by assignee name or email.                                                                                                                        |
| `in_trash`          | boolean |          | `false`                  | Include or exclude trashed tasks. Set to true to show only trashed tasks, false to exclude them.                                                         |
| `priority`          | string  |          | `"High"`                 | Filter by priority level.                                                                                                                                |
| `start_at`          | string  |          | `"2024-01-20T10:30:00Z"` | Filter by exact start date timestamp (ISO 8601 format).                                                                                                  |
| `dartboard`         | string  |          | `"Product Development"`  | Filter by dartboard name.                                                                                                                                |
| `parent_id`         | string  |          | `"parent123"`            | Filter by parent task identifier to get subtasks.                                                                                                        |
| `status_id`         | string  |          | `"status123"`            | Filter by status unique identifier.                                                                                                                      |
| `created_at`        | string  |          | `"2024-01-15T10:30:00Z"` | Filter by exact creation timestamp (ISO 8601 format).                                                                                                    |
| `created_by`        | string  |          | `"jane@example.com"`     | Filter by creator name or email.                                                                                                                         |
| `updated_at`        | string  |          | `"2024-01-15T10:30:00Z"` | Filter by exact update timestamp (ISO 8601 format).                                                                                                      |
| `updated_by`        | string  |          | `"alice@example.com"`    | Filter by last updater name or email.                                                                                                                    |
| `assignee_id`       | string  |          | `"assignee123"`          | Filter by assignee's unique identifier.                                                                                                                  |
| `description`       | string  |          | `"implement feature"`    | Filter by task description text content.                                                                                                                 |
| `no_defaults`       | boolean |          | `false`                  | Disable default filters applied by the API (default: false).                                                                                             |
| `dartboard_id`      | string  |          | `"dartboard123"`         | Filter by dartboard unique identifier.                                                                                                                   |
| `due_at_after`      | string  |          | `"2024-02-01T00:00:00Z"` | Filter for tasks due after this date (ISO 8601 format).                                                                                                  |
| `is_completed`      | boolean |          | `false`                  | Filter by completion status. True for completed tasks, false for incomplete tasks.                                                                       |
| `created_by_id`     | string  |          | `"creator123"`           | Filter by creator's unique identifier.                                                                                                                   |
| `due_at_before`     | string  |          | `"2024-02-28T23:59:59Z"` | Filter for tasks due before this date (ISO 8601 format).                                                                                                 |
| `updated_by_id`     | string  |          | `"updater123"`           | Filter by last updater's unique identifier.                                                                                                              |
| `start_at_after`    | string  |          | `"2024-01-15T00:00:00Z"` | Filter for tasks starting after this date (ISO 8601 format).                                                                                             |
| `start_at_before`   | string  |          | `"2024-01-31T23:59:59Z"` | Filter for tasks starting before this date (ISO 8601 format).                                                                                            |
| `created_at_after`  | string  |          | `"2024-01-01T00:00:00Z"` | Filter for tasks created after this date (ISO 8601 format).                                                                                              |
| `updated_at_after`  | string  |          | `"2024-01-01T00:00:00Z"` | Filter for tasks updated after this date (ISO 8601 format).                                                                                              |
| `created_at_before` | string  |          | `"2024-12-31T23:59:59Z"` | Filter for tasks created before this date (ISO 8601 format).                                                                                             |
| `updated_at_before` | string  |          | `"2024-12-31T23:59:59Z"` | Filter for tasks updated before this date (ISO 8601 format).                                                                                             |

***

### `Dart Move Task`

Integration name: **DART\_MOVE\_TASK**

Tool to move a task to a specific position within its dartboard. Use when you need to reorder tasks in a list. Specify either afterTaskId or beforeTaskId to position the task.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                                                                                                 |
| -------------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`           | string |     ✅    | `"Lc8wvm8yjHA4"` | The universal, unique identifier of the task to reposition. Must be a 12-character alphanumeric identifier                                                                  |
| `afterTaskId`  | string |          | `"Abc123XyZ456"` | Places the task immediately after the specified task ID. Using null moves the task to the end of the list. Exactly one of afterTaskId or beforeTaskId should be used        |
| `beforeTaskId` | string |          | `"Xyz789AbC012"` | Places the task immediately before the specified task ID. Using null moves the task to the beginning of the list. Exactly one of afterTaskId or beforeTaskId should be used |

***

### `Dart Retrieve Skill By Title`

Integration name: **DART\_RETRIEVE\_SKILL\_BY\_TITLE**

Tool to retrieve a skill by its exact title from the workspace. Use when you need to find details about a specific skill including its ID and instructions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example  | Description                                                 |
| --------- | ------ | :------: | -------- | ----------------------------------------------------------- |
| `title`   | string |     ✅    | `"test"` | The title of the skill to retrieve. Must be an exact match. |

***

### `Dart Update Doc`

Integration name: **DART\_UPDATE\_DOC**

Tool to update an existing doc in Dart. Use when you need to modify a document's title, folder location, or content. Any properties not specified will remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                    |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------- |
| `item`    | object |     ✅    | —       | Container for doc update data including the document ID and optional title, folder, and text content to update |

***

### `Dart Update Task`

Integration name: **DART\_UPDATE\_TASK**

Tool to update an existing task in DART with new properties. Use when you need to modify a task's title, status, assignees, or other attributes. Only properties specified in the request will be updated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------- |
| `item`    | object |     ✅    | —       | Task details wrapped in item object. Only properties specified will be updated. |

***


# Dialpad

Your Toolhouse AI Worker can connect to Dialpad using 192 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](https://toolhouse.app/auth-connections?authkit_slugs=dialpad).

## Tools (192)

### `Dialpad Access Control Policies Listing`

Integration name: **DIALPAD\_ACCESS\_CONTROL\_POLICIES\_LISTING**

Retrieves a list of access control policies for the authenticated Dialpad company. This endpoint allows company administrators to view all custom sets of permissions defined for AI Contact Center settings. It should be used when auditing existing policies, preparing to assign roles to users, or before creating new policies to avoid duplication. The endpoint provides an overview of all policies but does not include detailed permission sets for each policy. For specific policy details, a separate API call may be required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Add Blocked Phone Numbers`

Integration name: **DIALPAD\_ADD\_BLOCKED\_PHONE\_NUMBERS**

Adds specified phone numbers to the blocked list in Dialpad. This endpoint allows users to block unwanted or spam numbers, preventing incoming calls or messages from these numbers. It accepts a list of E.164 formatted phone numbers and adds them to the user's blocked list. This tool should be used when there's a need to block multiple phone numbers at once, enhancing the platform's call and message filtering capabilities. It's particularly useful for maintaining communication hygiene and reducing unwanted interactions. Note that this operation is additive; it doesn't replace the existing blocked list but appends to it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                       |
| --------- | ----- | :------: | ------- | --------------------------------- |
| `numbers` | array |          | —       | A list of E164 formatted numbers. |

***

### `Dialpad Add Department Operator By Id`

Integration name: **DIALPAD\_ADD\_DEPARTMENT\_OPERATOR\_BY\_ID**

Adds a new operator to a specific department in Dialpad. This endpoint allows you to assign either a user or a room as an operator, with the option to specify their role. It's used to manage call handling and department operations by adding new operators or updating existing ones with different roles. The department ID is specified in the URL path. Use this when setting up new departments, expanding existing ones, or adjusting operator assignments and roles within a department.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                           |
| --------------- | ------- | :------: | -------------------- | ----------------------------------------------------- |
| `id`            | string  |     ✅    | `"0123456789012345"` | The department"s id.                                  |
| `role`          | string  |          | —                    | The role of the new operator. (`operator` or `admin`) |
| `operator_id`   | integer |     ✅    | `"0123456789012345"` | ID of the operator to add.                            |
| `operator_type` | string  |     ✅    | —                    | Type of the operator to add. (`user` or `room`)       |

***

### `Dialpad Add Member To Channel`

Integration name: **DIALPAD\_ADD\_MEMBER\_TO\_CHANNEL**

Adds a new member to a specified channel within the Dialpad communication platform. This endpoint allows you to expand the membership of a channel by providing the user ID of the person you want to add. It's particularly useful for programmatically managing channel memberships, such as when onboarding new team members or reorganizing communication structures. The endpoint should be used when you need to include a user in a channel's conversations and collaborations. Note that this operation only adds the user to the channel; it does not create new users or channels. Ensure that both the channel ID (specified in the URL) and the user ID (provided in the request body) exist in your Dialpad organization before making this call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description       |
| --------- | ------- | :------: | -------------------- | ----------------- |
| `id`      | string  |     ✅    | `"0123456789012345"` | The channel"s id. |
| `user_id` | integer |     ✅    | `"0123456789012345"` | The user id.      |

***

### `Dialpad Add Member To Coaching Team`

Integration name: **DIALPAD\_ADD\_MEMBER\_TO\_COACHING\_TEAM**

Adds a new member to a specific coaching team in Dialpad. This endpoint allows you to assign a user to a coaching team with a designated role, enabling effective team management and performance monitoring. Use this when you need to include a new coach or trainee in an existing coaching team. The endpoint requires the coaching team ID in the URL path and the member details in the request body. It's particularly useful for setting up or expanding coaching teams for call center training and quality assurance purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example              | Description                                    |
| ----------- | ------ | :------: | -------------------- | ---------------------------------------------- |
| `id`        | string |     ✅    | `"0123456789012345"` | Id of the coaching team                        |
| `role`      | string |     ✅    | —                    | The role of the user added.                    |
| `member_id` | string |     ✅    | —                    | The id of the user added to the coaching team. |

***

### `Dialpad Add Operator To Call Center`

Integration name: **DIALPAD\_ADD\_OPERATOR\_TO\_CALL\_CENTER**

This endpoint adds a new operator to a specified call center in the Dialpad system. It allows for the configuration of the operator's role, skill level, and license type, as well as managing phone number retention when switching to a support license. Use this endpoint when you need to expand your call center team or adjust an existing user's role within the call center. The endpoint is particularly useful for setting up new operators with specific skill levels and roles, which can help in optimizing call routing and management within the call center. Note that while adding an operator, careful consideration should be given to the license type and role assigned, as these affect the operator's capabilities and the associated costs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                                                                                                                               |
| ------------------- | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                | string  |     ✅    | `"0123456789012345"` | The call center"s id.                                                                                                                                     |
| `role`              | string  |          | —                    | The role the user should assume.                                                                                                                          |
| `user_id`           | integer |     ✅    | `"0123456789012345"` | The ID of the user.                                                                                                                                       |
| `skill_level`       | integer |          | —                    | Skill level of the operator. Integer value in range 1 - 100. Default 100.                                                                                 |
| `license_type`      | string  |          | —                    | The type of license to assign to the new operator if a license is required. (`agents` or `lite_support_agents`). Defaults to `agents`                     |
| `keep_paid_numbers` | boolean |          | —                    | Whether or not to keep phone numbers when switching to a support license. Note: Phone numbers require additional number licenses under a support license. |

***

### `Dialpad Add Operator To Office`

Integration name: **DIALPAD\_ADD\_OPERATOR\_TO\_OFFICE**

This endpoint adds a new operator to a specific office within the Dialpad system. It allows administrators to assign users or rooms as operators, enhancing the office's communication capabilities. The endpoint requires the office ID (specified in the path), the operator's ID, and the type of operator (user or room). Optionally, the role of the new operator can be set to either standard operator or admin. Use this endpoint when you need to expand or modify the operator team for a particular office, ensuring efficient call handling and management within the Dialpad platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                           |
| --------------- | ------- | :------: | -------------------- | ----------------------------------------------------- |
| `id`            | string  |     ✅    | `"0123456789012345"` | The office"s ID.                                      |
| `role`          | string  |          | —                    | The role of the new operator. (`operator` or `admin`) |
| `operator_id`   | integer |     ✅    | `"0123456789012345"` | ID of the operator to add.                            |
| `operator_type` | string  |     ✅    | —                    | Type of the operator to add. (`user` or `room`)       |

***

### `Dialpad Add Participant To Call`

Integration name: **DIALPAD\_ADD\_PARTICIPANT\_TO\_CALL**

Adds a new participant to an existing call in the Dialpad system. This endpoint allows you to include additional members in an ongoing call by specifying either a phone number or a target within your Dialpad organization. Use this when you need to add someone to a call that is already in progress, such as bringing in an expert or including a manager in a customer service call. The endpoint requires the ID of the existing call and the details of the new participant. It's important to note that the target, if used, must have a primary number assigned in the Dialpad system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example              | Description                                                                                                              |
| ------------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `id`          | string |     ✅    | `"0123456789012345"` | The call"s id.                                                                                                           |
| `participant` | object |     ✅    | —                    | New member of the call to add. Can be a number or a Target. In case of a target, it must have a primary number assigned. |

***

### `Dialpad Assign Fax Line To Target`

Integration name: **DIALPAD\_ASSIGN\_FAX\_LINE\_TO\_TARGET**

Creates and assigns a new fax line to a specified target (user or department) in the Dialpad system. This endpoint allows you to set up a fax line with various options, including reserved numbers, area code-based searches, or toll-free numbers. Use this when you need to provision a new fax line for a user or department, or when you want to assign an existing number as a fax line. The endpoint is flexible, allowing for different types of fax line assignments based on your specific needs and available numbers. Note that the assignment process is immediate, and the fax line will be ready for use once the API call is successful. However, this endpoint does not handle the actual sending or receiving of faxes; it only sets up the line for future use.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example              | Description                                     |
| ---------------------- | ------- | :------: | -------------------- | ----------------------------------------------- |
| `line`                 | object  |     ✅    | —                    | Line to assign.                                 |
| `target__target__id`   | integer |          | `"0123456789012345"` | The ID of the target to assign the fax line to. |
| `target__target__type` | string  |          | —                    | Type of the target to assign the fax line to.   |

***

### `Dialpad Assign Number To Call Router`

Integration name: **DIALPAD\_ASSIGN\_NUMBER\_TO\_CALL\_ROUTER**

This endpoint assigns a phone number to a specific call router in the Dialpad system. It allows users to either provide a full phone number for assignment or specify an area code to automatically select an available number within that region. The assigned number can optionally be set as the primary number for the call router. This functionality is crucial for setting up and managing call routing within an organization, enabling efficient distribution of incoming calls to the appropriate departments or individuals.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                               |
| ----------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------- |
| `id`        | string  |     ✅    | `"0123456789012345"` | The API call router"s ID                                                  |
| `number`    | string  |          | —                    | A phone number to assign. (e164-formatted)                                |
| `primary`   | boolean |          | —                    | A boolean indicating whether this should become the primary phone number. |
| `area_code` | string  |          | —                    | An area code in which to find an available phone number for assignment.   |

***

### `Dialpad Assign Phone Number To Office`

Integration name: **DIALPAD\_ASSIGN\_PHONE\_NUMBER\_TO\_OFFICE**

This endpoint assigns a phone number to a specific office in the Dialpad system. It allows you to either specify a particular phone number or request an available number from a given area code. The assigned number can optionally be set as the primary number for the office. Use this endpoint when you need to add a new phone number to an office or change the office's primary number. It's particularly useful for setting up new offices or modifying existing office phone configurations. Note that this endpoint does not handle number porting or releasing existing numbers; it's specifically for assigning available numbers within the Dialpad system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                               |
| ----------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------- |
| `id`        | string  |     ✅    | `"0123456789012345"` | The office"s id.                                                          |
| `number`    | string  |          | —                    | A phone number to assign. (e164-formatted)                                |
| `primary`   | boolean |          | —                    | A boolean indicating whether this should become the primary phone number. |
| `area_code` | string  |          | —                    | An area code in which to find an available phone number for assignment.   |

***

### `Dialpad Assign Phone Number To Room`

Integration name: **DIALPAD\_ASSIGN\_PHONE\_NUMBER\_TO\_ROOM**

Assigns a phone number to a specified room in Dialpad. This endpoint allows you to either assign a specific phone number or request a number from a given area code. It's useful for setting up new rooms or updating existing ones with additional or primary phone numbers. The assigned number can optionally be set as the primary number for the room. Use this endpoint when you need to manage phone number assignments for Dialpad rooms programmatically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                               |
| ----------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------- |
| `id`        | string  |     ✅    | `"0123456789012345"` | The room"s id.                                                            |
| `number`    | string  |          | —                    | A phone number to assign. (e164-formatted)                                |
| `primary`   | boolean |          | —                    | A boolean indicating whether this should become the primary phone number. |
| `area_code` | string  |          | —                    | An area code in which to find an available phone number for assignment.   |

***

### `Dialpad Assign Phone Number To Target`

Integration name: **DIALPAD\_ASSIGN\_PHONE\_NUMBER\_TO\_TARGET**

Assigns a phone number to a specified target within the Dialpad system. This endpoint allows you to either assign a specific number or request a number from a given area code. It can be used to add new numbers to various entities such as users, departments, or call centers. The assigned number can optionally be set as the primary number for the target. This tool is particularly useful for managing phone number assignments across different parts of your Dialpad organization, enabling flexible number allocation and management.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                                        |
| ------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------- |
| `number`      | string  |          | —                    | A phone number to assign. (e164-formatted)                                         |
| `primary`     | boolean |          | —                    | A boolean indicating whether this should become the target"s primary phone number. |
| `area_code`   | string  |          | —                    | An area code in which to find an available phone number for assignment.            |
| `target_id`   | integer |     ✅    | `"0123456789012345"` | The ID of the target to reassign this number to.                                   |
| `target_type` | string  |     ✅    | —                    | The type of the target.                                                            |

***

### `Dialpad Assign Phone Number To User`

Integration name: **DIALPAD\_ASSIGN\_PHONE\_NUMBER\_TO\_USER**

This endpoint assigns a phone number to a specific Dialpad user. It allows for either searching for an available number within a given area code or assigning a specific number to the user. The assigned number can optionally be set as the user's primary number. Use this endpoint when you need to provide a user with a new phone number or add an additional number to their account. It's particularly useful for setting up new users or expanding the communication capabilities of existing users. Note that this endpoint doesn't handle number porting or transferring existing numbers between users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                               |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------- |
| `id`        | integer |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)   |
| `number`    | string  |          | —       | A phone number to assign. (e164-formatted)                                |
| `primary`   | boolean |          | —       | A boolean indicating whether this should become the primary phone number. |
| `area_code` | string  |          | —       | An area code in which to find an available phone number for assignment.   |

***

### `Dialpad Assign Policy To User By Id`

Integration name: **DIALPAD\_ASSIGN\_POLICY\_TO\_USER\_BY\_ID**

Assigns an access control policy to a specific user within the Dialpad system. This endpoint allows administrators to grant customized settings permissions to users at various levels of the organization: company-wide, for specific offices, or for contact centers. It's particularly useful for implementing Role-Based Access Control (RBAC) and managing user permissions across different parts of the Dialpad platform. The endpoint should be used when setting up new users, modifying existing user permissions, or implementing changes in the organizational structure that require updates to access control policies. Note that this feature is part of an Early Adopter Program and may be subject to changes or limitations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                                                             |
| ------------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | `"12345"` | The access control policy"s id.                                                                                         |
| `user_id`     | integer |     ✅    | `"12345"` | The user"s id to be assigned to the policy.                                                                             |
| `target_id`   | integer |          | `"12345"` | Required if the policy is associated with a target (Office or Contact Center). Not required for a company level policy. |
| `target_type` | string  |          | —         | Policy permissions applied at this target level. Defaults to company target type.                                       |

***

### `Dialpad Attach Labels To Call`

Integration name: **DIALPAD\_ATTACH\_LABELS\_TO\_CALL**

Creates or updates labels for a specific call in the Dialpad system. This endpoint allows you to attach one or more labels to a call, which can be used for categorization, filtering, or tracking purposes. The function takes a call ID and an array of label strings, replacing any existing labels on the call with the provided set. Use this when you need to categorize a call or update its existing labels. The endpoint is particularly useful for integrating call labeling into automated workflows or custom applications built on top of Dialpad. Note that this operation will overwrite any previously existing labels on the call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                              |
| --------- | ------ | :------: | --------- | ---------------------------------------- |
| `id`      | string |     ✅    | `"12345"` | The call"s id                            |
| `labels`  | array  |          | —         | The list of labels to attach to the call |

***

### `Dialpad Configure Call Center Settings`

Integration name: **DIALPAD\_CONFIGURE\_CALL\_CENTER\_SETTINGS**

This endpoint creates a new call center within the Dialpad system with customizable settings for call handling, routing, operational hours, and advanced features. It allows for detailed configuration of call center behavior, including auto-recording, hold queue management, alert thresholds, and voice intelligence integration. Use this endpoint when setting up a new call center or department that requires specific call routing and management capabilities. The endpoint provides extensive customization options but requires careful consideration of settings to ensure optimal call center operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                                 | Type    | Required | Example   | Description                                                                                                                                                                                              |
| --------------------------------------------------------- | ------- | :------: | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                                    | string  |     ✅    | —         | \[single-line only] The name of the call center. Max 100 characters.                                                                                                                                     |
| `hours_on`                                                | boolean |          | —         | The time frame when the call center wants to receive calls. Default value is false, which means the call center will always take calls (24/7).                                                           |
| `office_id`                                               | integer |     ✅    | `"12345"` | The id of the office to which the call center belongs..                                                                                                                                                  |
| `friday_hours`                                            | array   |          | —         | The Friday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                     |
| `monday_hours`                                            | array   |          | —         | The Monday hours of operation. To specify when hours\_on is set to True. e.g. \["08:00", "12:00", "14:00", "18:00"] => open from 8AM to Noon, and from 2PM to 6PM. Default value is \["08:00", "18:00"]. |
| `ring_seconds`                                            | integer |          | —         | The number of seconds to allow the group line to ring before going to voicemail. Choose from 10 seconds to 45 seconds. Default is 30 seconds.                                                            |
| `sunday_hours`                                            | array   |          | —         | The Sunday hours of operation. Default is empty array.                                                                                                                                                   |
| `tuesday_hours`                                           | array   |          | —         | The Tuesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                    |
| `saturday_hours`                                          | array   |          | —         | The Saturday hours of operation. Default is empty array.                                                                                                                                                 |
| `thursday_hours`                                          | array   |          | —         | The Thursday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                   |
| `wednesday_hours`                                         | array   |          | —         | The Wednesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                  |
| `group_description`                                       | string  |          | —         | The description of the call center. Max 256 characters.                                                                                                                                                  |
| `alerts__cc__service__level`                              | integer |          | —         | Alert supervisors when the service level drops below how many percent. Default is 95%.                                                                                                                   |
| `routing__options__open__dtmf`                            | array   |          | —         | DTMF menu options.                                                                                                                                                                                       |
| `hold__queue__max__hold__count`                           | integer |          | —         | If all operators are busy on other calls, send callers to a hold queue. This is to specify your queue size. Choose from 1-1000. Default is 50.                                                           |
| `hold__queue__unattended__queue`                          | boolean |          | —         | Whether or not to allow callers to be placed in your hold queue when no agents are available. Default is False.                                                                                          |
| `routing__options__closed__dtmf`                          | array   |          | —         | DTMF menu options.                                                                                                                                                                                       |
| `routing__options__open__action`                          | string  |          | —         | The action that should be taken if no operators are available.                                                                                                                                           |
| `hold__queue__announce__position`                         | boolean |          | —         | Whether or not to let callers know their place in the queue. This option is not available when a maximum queue wait time of less than 2 minutes is selected. Default is True.                            |
| `hold__queue__max__hold__seconds`                         | integer |          | —         | Maximum queue wait time in seconds. Choose from 30s to 18000s (3 hours). Default is 900s (15 min).                                                                                                       |
| `hold__queue__queue__escape__dtmf`                        | string  |          | —         | Allow callers to exit the hold queue to voicemail by pressing one of the followings: \[0,1,2,3,4,5,6,7,8,9,\*,#]. Default is \*.                                                                         |
| `routing__options__closed__action`                        | string  |          | —         | The action that should be taken if no operators are available.                                                                                                                                           |
| `voice__intelligence__auto__start`                        | boolean |          | —         | Auto start Vi for this call center. Default is True.                                                                                                                                                     |
| `voice__intelligence__allow__pause`                       | boolean |          | —         | Allow individual users to start and stop Vi during calls. Default is True.                                                                                                                               |
| `hold__queue__queue__callback__dtmf`                      | string  |          | —         | Allow callers to request a callback when the queue has more than queue\_callback\_threshold number of calls by pressing one of the followings: \[0,1,2,3,4,5,6,7,8,9,\*,#]. Default is 9.                |
| `alerts__cc__service__level__seconds`                     | integer |          | —         | Inbound calls should be answered within how many seconds. Default is 60.                                                                                                                                 |
| `hold__queue__allow__queue__callback`                     | boolean |          | —         | Whether or not to allow callers to request a callback. Default is False.                                                                                                                                 |
| `hold__queue__queue__callback__threshold`                 | integer |          | —         | Allow callers to request a callback when the queue has more than this number of calls. Default is 5.                                                                                                     |
| `routing__options__open__operator__routing`               | string  |          | —         | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `advanced__settings__max__wrap__up__seconds`              | integer |          | —         | Include a post-call wrap-up time before agents can receive their next call. Default is 0.                                                                                                                |
| `routing__options__open__action__target__id`              | integer |          | `"12345"` | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__closed__operator__routing`             | string  |          | —         | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `hold__queue__announcement__interval__seconds`            | integer |          | —         | Hold announcement interval wait time. Default is 2 min.                                                                                                                                                  |
| `hold__queue__stay__in__queue__after__closing`            | boolean |          | —         | Whether or not to allow existing calls to stay in queue after the call center has closed. Default is False.                                                                                              |
| `routing__options__closed__action__target__id`            | integer |          | `"12345"` | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__open__action__target__type`            | string  |          | —         | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__open__try__dial__operators`            | boolean |          | —         | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `routing__options__closed__action__target__type`          | string  |          | —         | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__closed__try__dial__operators`          | boolean |          | —         | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `adv__settings__auto__call__rec__call__rec__inbound`      | boolean |          | —         | Whether or not inbound calls to this call center get automatically recorded. Default is False.                                                                                                           |
| `adv__settings__auto__call__rec__call__rec__outbound`     | boolean |          | —         | Whether or not outbound calls from this call center get automatically recorded. Default is False.                                                                                                        |
| `adv__settings__auto__call__rec__allow__pause__recording` | boolean |          | —         | Allow agents to stop/restart a recording during a call. Default is False.                                                                                                                                |

***

### `Dialpad Create Access Control Policy`

Integration name: **DIALPAD\_CREATE\_ACCESS\_CONTROL\_POLICY**

Creates a new access control policy in Dialpad, defining a set of permissions and their application scope. This endpoint allows administrators to establish granular control over various Dialpad features and settings. It's used to manage user access and configure operational parameters across different levels of the organization. The policy created can encompass a wide range of permissions, from agent settings to AI configurations, enabling customized access control tailored to specific organizational needs. This tool is essential for setting up and maintaining a secure, well-organized communication environment within Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                          |
| ----------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------ |
| `name`            | string  |     ✅    | —       | \[single-line only] A human-readable display name for the policy. Max 50 characters. |
| `owner_id`        | integer |     ✅    | —       | Owner for this policy i.e company admin.                                             |
| `description`     | string  |          | —       | \[single-line only] Optional description for the policy. Max 200 characters.         |
| `target_type`     | string  |          | —       | Policy permissions applied at this target level. Defaults to company target type.    |
| `permission_sets` | array   |     ✅    | —       | List of permission associated with this policy.                                      |

***

### `Dialpad Create Agent Status Subscription`

Integration name: **DIALPAD\_CREATE\_AGENT\_STATUS\_SUBSCRIPTION**

Creates or updates an agent status subscription for real-time monitoring of contact center agent statuses in Dialpad. This endpoint allows you to configure event notifications for changes in agent availability, such as when agents become available, busy, or go off-duty. Use this when setting up integrations that require up-to-date information on agent statuses for workforce management, real-time dashboards, or automated workflows. The subscription can be associated with a specific webhook or websocket endpoint for receiving the status updates. Note that this endpoint only configures the subscription; you need to separately set up the webhook or websocket to receive the actual event data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example   | Description                                                                                       |
| ------------- | ------- | :------: | --------- | ------------------------------------------------------------------------------------------------- |
| `enabled`     | boolean |          | —         | Whether or not the this agent status event subscription is enabled.                               |
| `agent_type`  | string  |     ✅    | —         | The agent type this event subscription subscribes to.                                             |
| `endpoint_id` | integer |          | `"12345"` | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. |

***

### `Dialpad Create Callback`

Integration name: **DIALPAD\_CREATE\_CALLBACK**

Creates a callback request in a Dialpad call center. This endpoint allows you to initiate a callback to a specified phone number through a designated call center. It's useful for implementing features like "Request a Call" on websites or applications, or for scheduling return calls to customers. The endpoint doesn't immediately place the call but queues it in the specified call center for an agent to handle. Note that while both parameters are optional, at least one should be provided for a meaningful request. If no call\_center\_id is specified, the system may use a default or return an error, depending on your account configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                        |
| ---------------- | ------- | :------: | --------- | ------------------------------------------------------------------ |
| `phone_number`   | string  |          | —         | The e164-formatted number to call back                             |
| `call_center_id` | integer |          | `"12345"` | The ID of a call center that will be used to fulfill the callback. |

***

### `Dialpad Create Call Review Share Link`

Integration name: **DIALPAD\_CREATE\_CALL\_REVIEW\_SHARE\_LINK**

Creates a shareable link for a specific call review in the Dialpad platform. This endpoint allows users to generate a URL that can be used to share call recordings or summaries with others, either within the company or publicly. It's particularly useful for sharing important call information, training materials, or for compliance purposes. The function provides control over the privacy level of the shared content, allowing for secure sharing within an organization or broader distribution as needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example   | Description                                                                      |
| --------- | ------- | :------: | --------- | -------------------------------------------------------------------------------- |
| `call_id` | integer |          | `"12345"` | The call"s id.                                                                   |
| `privacy` | string  |          | —         | The privacy state of the recording share link, "company" will be set as default. |

***

### `Dialpad Create Call Router Configuration`

Integration name: **DIALPAD\_CREATE\_CALL\_ROUTER\_CONFIGURATION**

Creates a new call router in the Dialpad system, allowing for custom call routing logic based on a specified URL. This endpoint configures essential settings for the call router, including its name, default target for fallback scenarios, and the routing URL for decision-making. It's used when setting up a new automated call distribution system or when implementing custom call routing logic for an office. The call router can be enabled or disabled, and includes an optional security feature through a signature secret. Note that this endpoint only creates the call router; additional setup may be required in the Dialpad interface or through other API calls to fully integrate it into the calling workflow.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example   | Description                                                                                                                                          |
| --------------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string  |     ✅    | —         | \[single-line only] A human-readable display name for the router.                                                                                    |
| `secret`              | string  |          | —         | \[single-line only] The call router"s signature secret. This is a plain text string that you should generate with a minimum length of 32 characters. |
| `enabled`             | boolean |          | —         | If set to False, the call router will skip the routing url and instead forward calls straight to the default target.                                 |
| `office_id`           | integer |     ✅    | `"12345"` | The ID of the office to which this router belongs.                                                                                                   |
| `routing_url`         | string  |     ✅    | —         | The URL that should be used to drive call routing decisions.                                                                                         |
| `default_target_id`   | integer |     ✅    | `"12345"` | The ID of the target that should be used as a fallback destination for calls if the call router is disabled or fails.                                |
| `default_target_type` | string  |     ✅    | —         | The entity type of the default target.                                                                                                               |

***

### `Dialpad Create Channel Endpoint`

Integration name: **DIALPAD\_CREATE\_CHANNEL\_ENDPOINT**

Creates a new communication channel within the Dialpad platform. This endpoint allows users to set up a dedicated space for team collaboration, discussions, or topic-specific conversations. It's particularly useful for organizing communication within a company or project. The created channel can be either public or private, providing flexibility in managing access and information sharing. Use this endpoint when you need to programmatically create channels for various teams, projects, or departments, streamlining the process of setting up communication structures within Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                              |
| -------------- | ------- | :------: | --------- | ------------------------------------------------------------------------ |
| `name`         | string  |     ✅    | —         | \[single-line only] The name of the channel.                             |
| `user_id`      | integer |          | `"12345"` | The ID of the user who owns the channel. Just for company level API key. |
| `description`  | string  |     ✅    | —         | The description of the channel.                                          |
| `privacy_type` | string  |     ✅    | —         | The privacy type of the channel.                                         |

***

### `Dialpad Create Custom Ivr With Audio File`

Integration name: **DIALPAD\_CREATE\_CUSTOM\_IVR\_WITH\_AUDIO\_FILE**

Creates a new custom Interactive Voice Response (IVR) system within the Dialpad platform. This endpoint allows you to define and configure an IVR workflow by specifying its type, associated audio file, and target assignment. Use this when setting up automated phone menus, call routing systems, or customized voice interactions for different parts of your Dialpad organization. The IVR can be assigned to various entities like call centers, departments, or individual users, providing flexibility in managing call flows and customer interactions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                             |
| ------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `file`        | string  |     ✅    | —       | An MP3 audio file. The file needs to be Base64-encoded.                 |
| `name`        | string  |          | —       | \[single-line only] The name of the new IVR. Max 100 characters.        |
| `ivr_type`    | string  |     ✅    | —       | Type of IVR.                                                            |
| `target_id`   | integer |     ✅    | —       | The ID of the target to which you want to assign this IVR.              |
| `description` | string  |          | —       | \[single-line only] The description of the new IVR. Max 256 characters. |
| `target_type` | string  |     ✅    | —       | The type of the target to which you want to assign this IVR.            |

***

### `Dialpad Create New Contact Entry`

Integration name: **DIALPAD\_CREATE\_NEW\_CONTACT\_ENTRY**

The CreateContact endpoint adds a new contact to Dialpad's system. Use it to create local or shared contacts with comprehensive information. Ideal for user onboarding, data migration, or system integrations. Supports various contact details, with some fields restricted to single-line entries for consistency.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                           |
| -------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `urls`         | array  |          | —       | A list of websites associated with or belonging to this contact.                                                                                                                      |
| `emails`       | array  |          | —       | The contact"s emails. The first email in the list is the contact"s primary email.                                                                                                     |
| `phones`       | array  |          | —       | The contact"s phone numbers. The phone number must be in e164 format. The first number in the list is the contact"s primary phone.                                                    |
| `owner_id`     | string |          | —       | The id of the user who will own this contact. If provided, a local contact will be created for this user. Otherwise, the contact will be created as a shared contact in your company. |
| `extension`    | string |          | —       | The contact"s extension number.                                                                                                                                                       |
| `job_title`    | string |          | —       | \[single-line only] The contact"s job title.                                                                                                                                          |
| `last_name`    | string |     ✅    | —       | \[single-line only] The contact"s last name.                                                                                                                                          |
| `first_name`   | string |     ✅    | —       | \[single-line only] The contact"s first name.                                                                                                                                         |
| `trunk_group`  | string |          | —       | \[Deprecated]                                                                                                                                                                         |
| `company_name` | string |          | —       | \[single-line only] The contact"s company name.                                                                                                                                       |

***

### `Dialpad Create New Department Record`

Integration name: **DIALPAD\_CREATE\_NEW\_DEPARTMENT\_RECORD**

Creates a new department within the Dialpad system with customizable settings for call handling, operating hours, and advanced features. This endpoint allows for detailed configuration of department properties, including automatic call recording, hold queue management, custom operating hours, call routing strategies, and voice intelligence settings. It's particularly useful for setting up complex call flow structures within an organization, enabling efficient call distribution and management. The endpoint requires specifying the department name and associated office ID, with numerous optional parameters for fine-tuning department behavior. It's important to note that some default values are applied if optional parameters are not provided, ensuring a functional department setup even with minimal configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                        | Type    | Required | Example | Description                                                                                                                                                                                              |
| ------------------------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                           | string  |     ✅    | —       | \[single-line only] The name of the department. Max 100 characters.                                                                                                                                      |
| `hours_on`                                       | boolean |          | —       | The time frame when the department wants to receive calls. Default value is false, which means the call center will always take calls (24/7).                                                            |
| `office_id`                                      | integer |     ✅    | —       | The id of the office to which the department belongs..                                                                                                                                                   |
| `friday_hours`                                   | array   |          | —       | The Friday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                     |
| `monday_hours`                                   | array   |          | —       | The Monday hours of operation. To specify when hours\_on is set to True. e.g. \["08:00", "12:00", "14:00", "18:00"] => open from 8AM to Noon, and from 2PM to 6PM. Default value is \["08:00", "18:00"]. |
| `ring_seconds`                                   | integer |          | —       | The number of seconds to allow the group line to ring before going to voicemail. Choose from 10 seconds to 45 seconds. Default is 30 seconds.                                                            |
| `sunday_hours`                                   | array   |          | —       | The Sunday hours of operation. Default is empty array.                                                                                                                                                   |
| `tuesday_hours`                                  | array   |          | —       | The Tuesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                    |
| `saturday_hours`                                 | array   |          | —       | The Saturday hours of operation. Default is empty array.                                                                                                                                                 |
| `thursday_hours`                                 | array   |          | —       | The Thursday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                   |
| `wednesday_hours`                                | array   |          | —       | The Wednesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                  |
| `group_description`                              | string  |          | —       | The description of the department. Max 256 characters.                                                                                                                                                   |
| `auto_call_recording`                            | boolean |          | —       | Whether or not automatically record all calls of this department. Default is False.                                                                                                                      |
| `hold__queue__allow__queuing`                    | boolean |          | —       | Whether or not send callers to a hold queue, if all operators are busy on other calls. Default is False.                                                                                                 |
| `routing__options__open__dtmf`                   | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `hold__queue__max__hold__count`                  | integer |          | —       | If all operators are busy on other calls, send callers to a hold queue. This is to specify your queue size. Choose from 1-50. Default is 50.                                                             |
| `routing__options__closed__dtmf`                 | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `routing__options__open__action`                 | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `hold__queue__max__hold__seconds`                | integer |          | —       | Maximum queue wait time in seconds. Choose from 30s to 18000s (3 hours). Default is 900s (15 min).                                                                                                       |
| `routing__options__closed__action`               | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `voice__intelligence__auto__start`               | boolean |          | —       | Auto start Vi for this call center. Default is True.                                                                                                                                                     |
| `voice__intelligence__allow__pause`              | boolean |          | —       | Allow individual users to start and stop Vi during calls. Default is True.                                                                                                                               |
| `routing__options__open__operator__routing`      | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__open__action__target__id`     | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__closed__operator__routing`    | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__closed__action__target__id`   | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__open__action__target__type`   | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__open__try__dial__operators`   | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `routing__options__closed__action__target__type` | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__closed__try__dial__operators` | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |

***

### `Dialpad Create Pin For International Room Calls`

Integration name: **DIALPAD\_CREATE\_PIN\_FOR\_INTERNATIONAL\_ROOM\_CALLS**

Creates a PIN for protected international calls from a Dialpad room. This endpoint generates a unique PIN that can be used to authenticate and authorize international calls made from a specific Dialpad room. It's particularly useful for businesses that want to control and track international calling capabilities within their organization. The generated PIN adds an extra layer of security, ensuring that only authorized users can make international calls from the room. Use this endpoint when you need to set up or refresh international calling access for a room, especially in scenarios where you want to monitor usage or restrict access to certain team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                            |
| -------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `customer_ref` | string |          | —       | \[single-line only] An identifier to be printed in the usage summary. Typically used for identifying the person who requested the PIN. |

***

### `Dialpad Create Room In Office Via Post`

Integration name: **DIALPAD\_CREATE\_ROOM\_IN\_OFFICE\_VIA\_POST**

Creates a new room within a specified office in the Dialpad system. This endpoint is used to set up physical or virtual spaces for collaboration, meetings, or other communication purposes. It allows you to define a room with a name and associate it with a specific office. This is particularly useful for organizations managing multiple locations or wanting to organize their communication spaces efficiently. The created room can then be used for various purposes such as scheduling meetings, assigning resources, or managing call routing within the Dialpad platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                               |
| ----------- | ------- | :------: | ------- | ----------------------------------------- |
| `name`      | string  |     ✅    | —       | \[single-line only] The name of the room. |
| `office_id` | integer |     ✅    | —       | The office in which this room resides.    |

***

### `Dialpad Create Schedule Reports Endpoint`

Integration name: **DIALPAD\_CREATE\_SCHEDULE\_REPORTS\_ENDPOINT**

Creates a scheduled report in the Dialpad system for various types of communication data. This endpoint allows users to automate the generation and delivery of reports on a regular basis, such as call logs, user statistics, or voicemails. It's particularly useful for managers, administrators, and analysts who need consistent, periodic insights into communication patterns and performance metrics. The endpoint offers flexible scheduling options, including daily, weekly, or monthly frequencies, and can target specific organizational units or user groups. Use this when you need to set up recurring reports for monitoring, compliance, or analytical purposes. Note that this endpoint creates a new schedule; to modify existing schedules, use the appropriate update endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                     |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `at`             | integer |     ✅    | —       | Hour of the day when the report will execute considering the frequency and timezones between 0 and 23 e.g. 10 will be 10:00 am. |
| `name`           | string  |     ✅    | —       | \[single-line only] The name of the schedule reports.                                                                           |
| `on_day`         | integer |     ✅    | —       | The day of the week or month when the report will execute considering the frequency. daily=0, weekly=0-6, monthly=0-30.         |
| `enabled`        | boolean |          | —       | Whether or not this schedule reports event subscription is enabled.                                                             |
| `timezone`       | string  |          | —       | Timezone using a tz database name.                                                                                              |
| `frequency`      | string  |     ✅    | —       | How often the report will execute.                                                                                              |
| `target_id`      | integer |          | —       | The target"s id.                                                                                                                |
| `endpoint_id`    | integer |     ✅    | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully.                               |
| `report_type`    | string  |     ✅    | —       | The type of report that will be generated.                                                                                      |
| `target_type`    | string  |          | —       | Target"s type.                                                                                                                  |
| `coaching_group` | boolean |          | —       | Whether the the statistics should be for trainees of the coach group with the given target\_id.                                 |

***

### `Dialpad Create Secondary Office`

Integration name: **DIALPAD\_CREATE\_SECONDARY\_OFFICE**

Creates a new office within the Dialpad system with specified configurations and settings. This endpoint allows you to set up a new office location or entity, including its billing information, operational hours, routing options, and various communication preferences. Use this when you need to add a new office to your Dialpad organization, such as when expanding to a new location or setting up a separate department with its own communication settings. The endpoint requires several mandatory parameters for basic office setup and billing, while offering numerous optional parameters for fine-tuning office operations and call handling. Note that some settings, like voice intelligence and E911 address, may have regulatory implications depending on your location and should be configured carefully.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                        | Type    | Required | Example | Description                                                                                                                                                                                              |
| ------------------------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                           | string  |     ✅    | —       | \[single-line only] The office name.                                                                                                                                                                     |
| `country`                                        | string  |     ✅    | —       | The office country.                                                                                                                                                                                      |
| `currency`                                       | string  |     ✅    | —       | The office"s billing currency.                                                                                                                                                                           |
| `hours_on`                                       | boolean |          | —       | The time frame when the office wants to receive calls. Default value is false, which means the office will always take calls (24/7).                                                                     |
| `invoiced`                                       | boolean |     ✅    | —       | A flag indicating if the payment will be paid by invoice.                                                                                                                                                |
| `timezone`                                       | string  |          | —       | Timezone using a tz database name.                                                                                                                                                                       |
| `plan_period`                                    | string  |     ✅    | —       | The frequency at which the company will be billed.                                                                                                                                                       |
| `first_action`                                   | string  |          | —       | The desired action when the office receives a call.                                                                                                                                                      |
| `friday_hours`                                   | array   |          | —       | The Friday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                     |
| `monday_hours`                                   | array   |          | —       | The Monday hours of operation. To specify when hours\_on is set to True. e.g. \["08:00", "12:00", "14:00", "18:00"] => open from 8AM to Noon, and from 2PM to 6PM. Default value is \["08:00", "18:00"]. |
| `ring_seconds`                                   | integer |          | —       | The number of seconds to allow the group line to ring before going to voicemail. Choose from 10 seconds to 45 seconds.                                                                                   |
| `sunday_hours`                                   | array   |          | —       | The Sunday hours of operation. Default is empty array.                                                                                                                                                   |
| `tuesday_hours`                                  | array   |          | —       | The Tuesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                    |
| `saturday_hours`                                 | array   |          | —       | The Saturday hours of operation. Default is empty array.                                                                                                                                                 |
| `thursday_hours`                                 | array   |          | —       | The Thursday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                   |
| `mainline_number`                                | string  |          | —       | The mainline of the office.                                                                                                                                                                              |
| `unified_billing`                                | boolean |     ✅    | —       | A flag indicating if to send a unified invoice.                                                                                                                                                          |
| `wednesday_hours`                                | array   |          | —       | The Wednesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                  |
| `use_same_address`                               | boolean |          | —       | A flag indicating if the billing address and the emergency address are the same.                                                                                                                         |
| `group_description`                              | string  |          | —       | The description of the office. Max 256 characters.                                                                                                                                                       |
| `e911__address__zip`                             | string  |          | —       | \[single-line only] Zip code of the E911 address.                                                                                                                                                        |
| `auto_call_recording`                            | boolean |          | —       | Whether or not automatically record all calls of this office. Default is False.                                                                                                                          |
| `e911__address__city`                            | string  |          | —       | \[single-line only] City of the E911 address.                                                                                                                                                            |
| `no_operators_action`                            | string  |          | —       | The action to take if there is no one available to answer calls.                                                                                                                                         |
| `e911__address__state`                           | string  |          | —       | \[single-line only] State or Province of the E911 address.                                                                                                                                               |
| `international_enabled`                          | boolean |          | —       | A flag indicating if the primary office is able to make international phone calls.                                                                                                                       |
| `billing__address__city`                         | string  |          | —       | \[single-line only] The billing address city.                                                                                                                                                            |
| `billing__contact__name`                         | string  |          | —       | \[single-line only] The contact name.                                                                                                                                                                    |
| `e911__address__address`                         | string  |          | —       | \[single-line only] Line 1 of the E911 address.                                                                                                                                                          |
| `e911__address__country`                         | string  |          | —       | Country of the E911 address.                                                                                                                                                                             |
| `billing__contact__email`                        | string  |          | —       | The contact email.                                                                                                                                                                                       |
| `billing__contact__phone`                        | string  |          | —       | The contact phone number.                                                                                                                                                                                |
| `e911__address__address2`                        | string  |          | —       | \[single-line only] Line 2 of the E911 address.                                                                                                                                                          |
| `billing__address__region`                       | string  |          | —       | \[single-line only] The billing address region.                                                                                                                                                          |
| `billing__address__country`                      | string  |          | —       | The billing address country.                                                                                                                                                                             |
| `routing__options__open__dtmf`                   | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `annual_commit_monthly_billing`                  | boolean |     ✅    | —       | A flag indicating if the primary office"s plan is categorized as annual commit monthly billing.                                                                                                          |
| `billing__address__postal__code`                 | string  |          | —       | \[single-line only] The billing address postal code.                                                                                                                                                     |
| `routing__options__closed__dtmf`                 | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `routing__options__open__action`                 | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `routing__options__closed__action`               | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `voice__intelligence__auto__start`               | boolean |          | —       | Auto start Vi for this call center. Default is True.                                                                                                                                                     |
| `voice__intelligence__allow__pause`              | boolean |          | —       | Allow individual users to start and stop Vi during calls. Default is True.                                                                                                                               |
| `billing__address__address__line__1`             | string  |          | —       | \[single-line only] The first line of the billing address.                                                                                                                                               |
| `billing__address__address__line__2`             | string  |          | —       | \[single-line only] The second line of the billing address.                                                                                                                                              |
| `routing__options__open__operator__routing`      | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__open__action__target__id`     | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__closed__operator__routing`    | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__closed__action__target__id`   | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__open__action__target__type`   | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__open__try__dial__operators`   | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `routing__options__closed__action__target__type` | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__closed__try__dial__operators` | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |

***

### `Dialpad Create Sms Event Subscription`

Integration name: **DIALPAD\_CREATE\_SMS\_EVENT\_SUBSCRIPTION**

Creates a new SMS event subscription in the Dialpad API, allowing users to receive notifications for inbound and/or outbound SMS messages. This endpoint enables fine-grained control over SMS event monitoring, including options for filtering by direction, target, and message type. It's particularly useful for integrating real-time SMS notifications into external systems or applications. The subscription can be configured to include or exclude internal company messages and to provide updates on message delivery statuses. Use this endpoint when setting up new SMS monitoring systems or when adjusting existing subscription parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                       |
| ------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------- |
| `status`           | boolean |          | —       | Whether or not to update on each SMS delivery status.                                             |
| `enabled`          | boolean |          | —       | Whether or not the SMS event subscription is enabled.                                             |
| `direction`        | string  |     ✅    | —       | The SMS direction this event subscription subscribes to.                                          |
| `target_id`        | integer |          | —       | The ID of the specific target for which events should be sent.                                    |
| `endpoint_id`      | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. |
| `target_type`      | string  |          | —       | The target"s type.                                                                                |
| `include_internal` | boolean |          | —       | Whether or not to trigger SMS events for SMS sent between two users from the same company.        |

***

### `Dialpad Create User With Auto Assign`

Integration name: **DIALPAD\_CREATE\_USER\_WITH\_AUTO\_ASSIGN**

Creates a new user account in the Dialpad system with the specified details. This endpoint allows you to add a new user to your Dialpad organization, set up their basic profile information, assign them to an office, and optionally auto-assign a phone number. It's particularly useful for bulk user creation or when integrating Dialpad user management with other systems. The endpoint requires at minimum an email and office ID, with options to further customize the user's profile and permissions through additional parameters. Note that while a license can be specified, it defaults to 'talk' if not provided, ensuring that the new user has basic Dialpad functionality.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                 |
| ------------- | ------- | :------: | ------- | ----------------------------------------------------------- |
| `email`       | string  |     ✅    | —       | The user"s email.                                           |
| `license`     | string  |          | —       | The user"s license type. This affects billing for the user. |
| `last_name`   | string  |          | —       | \[single-line only] The user"s last name.                   |
| `office_id`   | integer |     ✅    | —       | The user"s office id.                                       |
| `first_name`  | string  |          | —       | \[single-line only] The user"s first name.                  |
| `auto_assign` | boolean |          | —       | If set to true, a number will be automatically assigned.    |

***

### `Dialpad Create Webhook Post Endpoint`

Integration name: **DIALPAD\_CREATE\_WEBHOOK\_POST\_ENDPOINT**

Creates a new webhook integration for receiving real-time event notifications from Dialpad. This endpoint allows you to specify a URL where Dialpad will send event data when specific actions occur within the Dialpad system. It's essential for building responsive, event-driven integrations with Dialpad. The endpoint also supports an optional secret for verifying the authenticity of incoming webhook requests, enhancing security. Use this when you need to set up automated workflows or sync Dialpad events with external systems.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                        |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------- |
| `secret`   | string |          | —       | \[single-line only] Webhook"s signature secret that"s used to confirm the validity of the request. |
| `hook_url` | string |     ✅    | —       | The webhook"s URL. Triggered events will be sent to the url provided here.                         |

***

### `Dialpad Deauthorize Oauth2 Session`

Integration name: **DIALPAD\_DEAUTHORIZE\_OAUTH2\_SESSION**

Deauthorizes (revokes) an OAuth2 access token, effectively terminating the application's access to the Dialpad API. This endpoint should be used when an application needs to invalidate its current access token, such as during user logout, when suspending an integration, or in response to potential security threats. It's an essential security measure to prevent unauthorized access once a token is no longer needed or potentially compromised. Note that after deauthorization, the application will need to re-authenticate to obtain a new access token for future API calls. This endpoint does not return any specific data; a successful call simply invalidates the token.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dialpad Delete Access Control Policy By Id`

Integration name: **DIALPAD\_DELETE\_ACCESS\_CONTROL\_POLICY\_BY\_ID**

Deletes a specific access control policy from the Dialpad system. This endpoint allows company administrators to remove custom permission settings that were previously created for managing user roles and access within the Dialpad platform. It should be used when a particular access control policy is no longer needed or requires complete removal from the system. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return the deleted policy details; it typically returns a success status upon successful deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                 |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The access control policy"s id. Example: "5693862015041536" |

***

### `Dialpad Delete Agent Status By Id`

Integration name: **DIALPAD\_DELETE\_AGENT\_STATUS\_BY\_ID**

Deletes a specific agent status subscription identified by its unique ID. This endpoint is used to stop receiving real-time updates about an agent's status (e.g., Available, Busy, Off-duty) in the Dialpad system. It should be used when you no longer need to track the status changes for a particular agent or when cleaning up unused subscriptions. The operation is irreversible, so care should be taken to ensure the correct subscription ID is provided. This endpoint does not return the deleted subscription details; it typically returns a success status code upon successful deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                    |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5693862015041536" |

***

### `Dialpad Delete Call Center By Id`

Integration name: **DIALPAD\_DELETE\_CALL\_CENTER\_BY\_ID**

Deletes a specific call center from the Dialpad system. This endpoint should be used when you need to permanently remove a call center from your Dialpad account. It's important to note that this action is irreversible and will affect all associated resources, such as agents, call logs, and configurations linked to the specified call center. Before using this endpoint, ensure that all necessary data has been backed up or migrated. This operation may have significant implications for ongoing operations, so it should be used with caution and typically requires appropriate authorization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                       |
| --------- | ------ | :------: | ------- | ------------------------------------------------- |
| `id`      | string |     ✅    | —       | The call center"s id. Example: "5693862015041536" |

***

### `Dialpad Delete Call Review Share Link By Id`

Integration name: **DIALPAD\_DELETE\_CALL\_REVIEW\_SHARE\_LINK\_BY\_ID**

This endpoint deletes a specific call review share link in the Dialpad system. It's used to revoke access to a previously shared call review, ensuring that the link can no longer be used to view the associated call information. This action is permanent and should be used when you want to immediately prevent further access to a shared call review, such as when sensitive information was mistakenly shared or when the review is no longer relevant. Once deleted, the share link cannot be recovered, and anyone attempting to use it will receive an error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `id`      | string |     ✅    | —       | The share link"s id. |

***

### `Dialpad Delete Call Router By Id`

Integration name: **DIALPAD\_DELETE\_CALL\_ROUTER\_BY\_ID**

Deletes a specific call router from the Dialpad system. This endpoint should be used when you need to remove an existing call routing configuration, such as when restructuring your call flow or decommissioning outdated routing rules. The deletion is permanent and cannot be undone, so use with caution. This operation will immediately affect incoming calls that were previously handled by the deleted router, potentially disrupting call flows if not properly managed. Ensure that any dependencies on the call router (e.g., DIDs or mainline menu routings) are updated before deletion to maintain smooth call handling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description              |
| --------- | ------ | :------: | ------- | ------------------------ |
| `id`      | string |     ✅    | —       | The API call router"s ID |

***

### `Dialpad Delete Call Subscription By Id`

Integration name: **DIALPAD\_DELETE\_CALL\_SUBSCRIPTION\_BY\_ID**

Deletes a specific call subscription from the Dialpad system. This endpoint should be used when an application no longer needs to receive real-time notifications for a particular call-related event or functionality. It allows developers to clean up unused subscriptions, potentially freeing up resources and reducing unnecessary data processing. The deletion is permanent and cannot be undone, so use this endpoint with caution. It's important to note that this operation only affects the specified subscription and does not impact any other active subscriptions or ongoing calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                    |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5693862015041536" |

***

### `Dialpad Delete Channel By Id`

Integration name: **DIALPAD\_DELETE\_CHANNEL\_BY\_ID**

Deletes a specific channel from the Dialpad communication platform. This endpoint should be used when you need to remove a communication channel that is no longer needed or has become obsolete. It permanently removes the channel and all associated data, so it should be used with caution. This operation cannot be undone, and once a channel is deleted, it cannot be recovered. The endpoint is useful for maintaining a clean and organized communication structure within your Dialpad account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `id`      | string |     ✅    | —       | The channel id. Example: "5693862015041536" |

***

### `Dialpad Delete Channel Member By Id`

Integration name: **DIALPAD\_DELETE\_CHANNEL\_MEMBER\_BY\_ID**

Removes a specified member from a Dialpad channel. This endpoint allows you to delete a user from a particular channel, effectively revoking their access and participation in that channel's communications. It should be used when you need to remove a team member from a specific collaboration space, such as when an employee changes roles or leaves the organization. The endpoint requires the channel ID (specified in the URL path) and the user ID of the member to be removed. Note that this action is irreversible, and the removed member will lose access to the channel's history and future communications. It's important to ensure you have the necessary permissions to remove members before using this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                   |
| --------- | ------- | :------: | ------- | --------------------------------------------- |
| `id`      | string  |     ✅    | —       | The channel"s id. Example: "5693862015041536" |
| `user_id` | integer |     ✅    | —       | The user id. Example: "5693862015041536"      |

***

### `Dialpad Delete Contact By Id`

Integration name: **DIALPAD\_DELETE\_CONTACT\_BY\_ID**

Deletes a specific contact from the Dialpad system using the provided contact ID. This endpoint should be used when you need to permanently remove a contact's information from your Dialpad account. It's important to note that this action is irreversible, and once a contact is deleted, it cannot be recovered through the API. Use this endpoint with caution, ensuring that you have verified the correct contact ID before deletion. This operation affects both shared company contacts and user-specific local contacts, depending on the scope of the provided ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description       |
| --------- | ------ | :------: | ------- | ----------------- |
| `id`      | string |     ✅    | —       | The contact"s id. |

***

### `Dialpad Delete Custom Ivr By Target Type And Ivrtype`

Integration name: **DIALPAD\_DELETE\_CUSTOM\_IVR\_BY\_TARGET\_TYPE\_AND\_IVRTYPE**

Deletes a custom Interactive Voice Response (IVR) configuration from a specified target in the Dialpad system. This endpoint is used to remove IVR settings, allowing for the reset or reconfiguration of call routing and automated response systems. It's particularly useful when updating IVR workflows or when a specific IVR configuration is no longer needed. The operation affects the IVR settings for the specified target type and ID, with an option to limit the change to either inbound or outbound calls in call center contexts. This endpoint should be used cautiously, as deleting an IVR configuration is irreversible and may impact existing call routing processes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                 |
| --------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `ivr_id`        | integer |     ✅    | —       | The id of the ivr that you want to use for the ivr type. Example: "5693862015041536"        |
| `ivr_type`      | string  |     ✅    | —       | Type of ivr you want to update.                                                             |
| `target_id`     | string  |     ✅    | —       | The id of the target. Example: "5693862015041536"                                           |
| `target_type`   | string  |     ✅    | —       | Target"s type. of the custom ivr to be updated.                                             |
| `select_option` | string  |          | —       | For call center auto call recording only. Set ivr for inbound or outbound. Default is both. |

***

### `Dialpad Delete Department Resource`

Integration name: **DIALPAD\_DELETE\_DEPARTMENT\_RESOURCE**

Deletes a specific department from the Dialpad system. This endpoint should be used when you need to remove a department that is no longer needed or has been deprecated within your organization's structure. The operation is irreversible, so it should be used with caution. Once a department is deleted, all associated data, such as user assignments and resource allocations, may be affected. This endpoint is particularly useful for maintaining an up-to-date organizational structure in Dialpad, especially during restructuring or when cleaning up obsolete departments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description          |
| --------- | ------- | :------: | ------- | -------------------- |
| `id`      | integer |     ✅    | —       | The department"s id. |

***

### `Dialpad Delete Deskphone By User Id`

Integration name: **DIALPAD\_DELETE\_DESKPHONE\_BY\_USER\_ID**

Deletes a specific deskphone associated with a user in the Dialpad system. This endpoint should be used when you need to remove a deskphone from a user's account, such as when the device is no longer in use or needs to be reassigned. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for managing hardware inventory and ensuring that user accounts accurately reflect their current device assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                          |
| ----------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------- |
| `id`        | string |     ✅    | —       | The desk phone"s id.                                                                                 |
| `parent_id` | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key). Example: "5693862015041536" |

***

### `Dialpad Delete Deskphone In Room`

Integration name: **DIALPAD\_DELETE\_DESKPHONE\_IN\_ROOM**

This endpoint removes a specific deskphone from a designated room within the Dialpad system. It's used to unassign or decommission a deskphone from a particular shared space, such as a conference room or reception area. The operation is permanent and should be used with caution as it will disassociate the deskphone from the room, potentially affecting call routing and room communication capabilities. This endpoint is particularly useful during office reorganizations, when updating room phone setups, or when removing faulty devices from the system. Note that this operation only removes the association between the deskphone and the room; it does not delete the deskphone from the overall Dialpad account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                |
| ----------- | ------ | :------: | ------- | ------------------------------------------ |
| `id`        | string |     ✅    | —       | The desk phone"s id.                       |
| `parent_id` | string |     ✅    | —       | The room"s id. Example: "5693862015041536" |

***

### `Dialpad Delete Number Via Api`

Integration name: **DIALPAD\_DELETE\_NUMBER\_VIA\_API**

Deletes a specific phone number from the user's Dialpad account. This endpoint should be used when a phone number is no longer needed and needs to be removed from the system. It's important to note that this action is irreversible, and once a number is deleted, it may not be possible to reclaim the same number. This endpoint is particularly useful for managing phone inventory, removing temporary numbers, or cleaning up unused numbers to optimize resource allocation. The deletion process may have implications on call routing, billing, and other phone-related features within Dialpad, so it should be used with caution and only when the user is certain that the number is no longer required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                            |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------------------- |
| `number`  | string  |     ✅    | —       | A phone number (e164 format).                                          |
| `release` | boolean |          | —       | Releases the number (does not return it to the company reserved pool). |

***

### `Dialpad Delete Office Operator By Id`

Integration name: **DIALPAD\_DELETE\_OFFICE\_OPERATOR\_BY\_ID**

Removes a specified operator (user or room) from a particular office in the Dialpad system. This endpoint is used to manage the association between operators and offices, allowing administrators to control access and permissions within the organization's structure. It should be used when you need to disassociate a user or a room from an office, such as when an employee changes departments or a shared space is no longer used for a specific office. The endpoint requires both the operator's ID and type to ensure precise removal of the correct entity. Note that this action does not delete the user or room from the system entirely; it only removes their association with the specified office.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                               |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------- |
| `id`            | string  |     ✅    | —       | The office"s ID. Example: "5693862015041536"              |
| `operator_id`   | integer |     ✅    | —       | ID of the operator to remove. Example: "5693862015041536" |
| `operator_type` | string  |     ✅    | —       | Type of the operator to remove (`user` or `room`).        |

***

### `Dialpad Delete Operator From Call Center`

Integration name: **DIALPAD\_DELETE\_OPERATOR\_FROM\_CALL\_CENTER**

Removes a specified operator from a call center in the Dialpad system. This endpoint should be used when you need to disassociate an agent or user from a particular call center, such as when an employee changes roles or leaves the organization. The operation is permanent and cannot be undone through this API. If you need to re-add the operator to the call center, you would need to use a separate API call. Note that this endpoint only removes the operator's association with the call center; it does not delete the user account from Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                               |
| --------- | ------- | :------: | ------- | --------------------------------------------------------- |
| `id`      | string  |     ✅    | —       | The call center"s id. Example: "5693862015041536"         |
| `user_id` | integer |     ✅    | —       | ID of the operator to remove. Example: "5693862015041536" |

***

### `Dialpad Delete Operator From Department`

Integration name: **DIALPAD\_DELETE\_OPERATOR\_FROM\_DEPARTMENT**

Removes a specified operator from a department in the Dialpad system. This endpoint is used to update department operator assignments by removing either a user or a room from the list of operators for a given department. It's particularly useful for managing call routing and department resources. The endpoint requires both the operator's unique ID and type (user or room) to ensure accurate removal. Use this when reorganizing department structures, changing operator assignments, or updating call handling workflows. Note that this action is irreversible and may affect ongoing call routing for the department.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                               |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------- |
| `id`            | string  |     ✅    | —       | The department"s id. Example: "5693862015041536"          |
| `operator_id`   | integer |     ✅    | —       | ID of the operator to remove. Example: "5693862015041536" |
| `operator_type` | string  |     ✅    | —       | Type of the operator to remove (`user` or `room`).        |

***

### `Dialpad Delete Recording Share Link By Id`

Integration name: **DIALPAD\_DELETE\_RECORDING\_SHARE\_LINK\_BY\_ID**

Deletes a specific recording share link in the Dialpad system. This endpoint is used to revoke access to a shared recording by removing the associated link. It should be called when you want to prevent further access to a recording through a previously generated share link. This action is permanent and cannot be undone, so use it cautiously. The endpoint is particularly useful for maintaining privacy and controlling access to sensitive or outdated recorded content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                    |
| --------- | ------ | :------: | ------- | ------------------------------ |
| `id`      | string |     ✅    | —       | The recording share link"s ID. |

***

### `Dialpad Delete Room By Id`

Integration name: **DIALPAD\_DELETE\_ROOM\_BY\_ID**

Deletes a specific room from the Dialpad system using its unique identifier. This endpoint should be used when you need to remove a room that is no longer in use or has been decommissioned, such as a closed conference room or a removed reception desk. The deletion is permanent and cannot be undone, so use this endpoint with caution. It's important to note that deleting a room will also remove any associated configurations, such as room phone settings or extensions. This operation is part of Dialpad's room management functionality and helps maintain an up-to-date inventory of active rooms in your organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                |
| --------- | ------ | :------: | ------- | ------------------------------------------ |
| `id`      | string |     ✅    | —       | The room"s id. Example: "5693862015041536" |

***

### `Dialpad Delete Schedule Report By Id`

Integration name: **DIALPAD\_DELETE\_SCHEDULE\_REPORT\_BY\_ID**

Deletes a specific scheduled report from the Dialpad system. This endpoint allows users to permanently remove a previously configured report that was set up for automatic generation and delivery. It should be used when a particular scheduled report is no longer needed or when you want to stop the automatic generation of a specific report. This operation cannot be undone, so it should be used with caution. The endpoint will not provide any information about the deleted report; it will only confirm the successful deletion or return an error if the operation fails.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                          |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The schedule reports subscription"s ID. Example: "5123456789012345". |

***

### `Dialpad Delete Sms Subscription By Id`

Integration name: **DIALPAD\_DELETE\_SMS\_SUBSCRIPTION\_BY\_ID**

Deletes a specific SMS subscription from the Dialpad system. This endpoint should be used when you want to cancel or remove an existing SMS subscription, such as when a user no longer needs SMS services or wants to change their subscription plan. The operation is irreversible, so it should be used with caution. Once deleted, the subscription and its associated settings will no longer be available. This endpoint only handles the deletion process and does not provide any information about the subscription being deleted. It's important to ensure that you have the correct subscription ID before making this call, as there is no way to recover a mistakenly deleted subscription.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5123456789012345". |

***

### `Dialpad Delete Subscription Changelog By Id`

Integration name: **DIALPAD\_DELETE\_SUBSCRIPTION\_CHANGELOG\_BY\_ID**

Deletes a specific changelog entry from a subscription in the Dialpad system. This endpoint is used to permanently remove a record of changes made to a subscription, which could include modifications to webhook configurations, event subscriptions, or other subscription-related settings. It should be used when you need to clean up or remove outdated or erroneous changelog entries. Be cautious when using this endpoint, as deleting changelog entries may affect auditing and tracking capabilities. Note that this operation is irreversible, and once a changelog entry is deleted, it cannot be recovered. This endpoint is part of Dialpad's subscription management API and helps maintain an accurate and up-to-date record of subscription changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5123456789012345". |

***

### `Dialpad Delete Subscription Contact By Id`

Integration name: **DIALPAD\_DELETE\_SUBSCRIPTION\_CONTACT\_BY\_ID**

Deletes a specific subscription contact from the Dialpad system. This endpoint should be used when you need to remove a contact from your subscription list, such as when a user unsubscribes or when cleaning up outdated contact information. The operation is irreversible, so use it with caution. This endpoint only handles the deletion process and does not return the deleted contact's information. It's important to note that this action may affect any ongoing subscriptions or notifications associated with the deleted contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5123456789012345". |

***

### `Dialpad Delete User By Id`

Integration name: **DIALPAD\_DELETE\_USER\_BY\_ID**

Deletes a user from the Dialpad system based on the provided user ID. This endpoint should be used when permanently removing a user's account and associated data from Dialpad. It's important to note that deleted users can be restored for up to 72 hours after deletion, after which their records are anonymized. Use this endpoint with caution as it will remove the user's access to Dialpad services and may affect team structures or ongoing communications. This operation cannot be undone after the 72-hour restoration period.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                             |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Delete Webhook By Id`

Integration name: **DIALPAD\_DELETE\_WEBHOOK\_BY\_ID**

Deletes a specific webhook subscription from the Dialpad platform using its unique identifier. This endpoint should be used when you want to stop receiving real-time event notifications for a particular webhook. It's important to note that once a webhook is deleted, it cannot be recovered, and you will need to create a new webhook subscription if you wish to receive events again. This operation is useful for managing webhook subscriptions, especially when cleaning up outdated or unnecessary event listeners in your integration with Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                              |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The webhook"s ID, which is generated after creating a webhook successfully. Example: "5123456789012345". |

***

### `Dialpad Delete Websocket Connection By Id`

Integration name: **DIALPAD\_DELETE\_WEBSOCKET\_CONNECTION\_BY\_ID**

Closes and removes a specific WebSocket connection in the Dialpad system. This endpoint should be used when an application needs to programmatically terminate a real-time event subscription or clean up unused WebSocket connections. It's particularly useful for managing resources and ensuring that inactive or unnecessary WebSocket connections are properly closed. This operation is irreversible, so it should be used with caution. Once a WebSocket is deleted, any active subscriptions or real-time data streams associated with it will be immediately terminated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                  |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The websocket"s ID, which is generated after creating a websocket successfully. Example: "5123456789012345". |

***

### `Dialpad Fetch Call By Id`

Integration name: **DIALPAD\_FETCH\_CALL\_BY\_ID**

Retrieves detailed information about a specific call using its unique identifier. This endpoint allows developers to access comprehensive data about a particular call made through the Dialpad platform. It should be used when you need to fetch specific call details for purposes such as logging, analysis, or displaying call information to users. The endpoint provides a snapshot of the call at the time of the request, including details like duration, participants, and call status. It does not provide real-time updates for ongoing calls; for that, you would need to poll the endpoint or use a different real-time communication method. This endpoint is particularly useful for applications that need to integrate call history or detailed call records from Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `id`      | string |     ✅    | —       | The call"s id. Example: "5123456789012345". |

***

### `Dialpad Fetch Call Transcript By Id`

Integration name: **DIALPAD\_FETCH\_CALL\_TRANSCRIPT\_BY\_ID**

Retrieves the transcript for a specific call in the Dialpad system. This endpoint allows you to fetch the text representation of the spoken content from a particular call or meeting. It's useful for reviewing conversation details, analyzing call content, or creating searchable records of communications. The transcript is generated using Dialpad's AI-powered transcription feature, which provides accurate text conversion of audio content. Use this endpoint when you need to access the written record of a call for purposes such as quality assurance, training, or content analysis. Note that the availability and accuracy of transcripts may depend on the audio quality of the original call and the capabilities of the AI transcription system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `call_id` | string |     ✅    | —       | The call"s id. Example: "5123456789012345". |

***

### `Dialpad Fetch Custom Ivrs`

Integration name: **DIALPAD\_FETCH\_CUSTOM\_IVRS**

Retrieves a list of all custom Interactive Voice Response (IVR) configurations associated with the authenticated Dialpad account. This endpoint allows developers to fetch comprehensive details about the custom IVRs set up in their Dialpad system, including menu structures, voice prompts, and routing rules. It's particularly useful for auditing existing IVR setups, gathering information for reporting purposes, or syncing IVR configurations with external systems. The endpoint returns all custom IVRs by default, without requiring any parameters. However, it does not provide real-time analytics or call logs related to these IVRs. Use this endpoint when you need an overview of your IVR landscape or when preparing to make bulk updates to your IVR configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                   |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `target_id`   | string |     ✅    | —       | The target"s id. Example: "5123456789012345".                                                                 |
| `target_type` | string |     ✅    | —       | Target"s type.                                                                                                |

***

### `Dialpad Fetch Operators For Office Id`

Integration name: **DIALPAD\_FETCH\_OPERATORS\_FOR\_OFFICE\_ID**

Retrieves a list of operators associated with a specific office in Dialpad. This endpoint should be used when you need to get information about the operators managing calls and operations within a particular office. It's useful for auditing office structure, managing call center operations, or gathering data for reporting purposes. The endpoint returns details about the operators, which may include their names, IDs, roles, and current statuses. Note that this endpoint only provides information about operators and does not allow for modifying operator data or office structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id. Example: "5123456789012345". |

***

### `Dialpad Fetch Scheduled Reports`

Integration name: **DIALPAD\_FETCH\_SCHEDULED\_REPORTS**

Retrieves a list of scheduled reports from the Dialpad system. This endpoint allows users to fetch information about reports that have been set up for automatic generation on a regular basis. It's particularly useful for administrators or users who need to review or manage the scheduled reporting configuration within their Dialpad account. The endpoint supports filtering by report type, frequency, and date range, making it easy to find specific scheduled reports. It should be used when there's a need to audit existing report schedules, verify report configurations, or gather information about automated reporting processes in place. Note that this endpoint only provides metadata about the scheduled reports, not the actual report content itself. It's ideal for getting an overview of reporting activities but not for accessing the report data directly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Fetch Transcript Url By Call Id`

Integration name: **DIALPAD\_FETCH\_TRANSCRIPT\_URL\_BY\_CALL\_ID**

Retrieves the URL of a transcript for a specific call in the Dialpad system. This endpoint allows developers to access the text version of a call's audio content by providing the unique identifier of the call. The returned URL can be used to fetch the actual transcript content. This tool is particularly useful when you need to programmatically access call transcripts for analysis, record-keeping, or integration with other systems. It should be used when a user needs to obtain the transcript URL for a known call ID, but not for directly retrieving the transcript content itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `call_id` | string |     ✅    | —       | The call"s id. Example: "5123456789012345". |

***

### `Dialpad Fetch User Details By Id`

Integration name: **DIALPAD\_FETCH\_USER\_DETAILS\_BY\_ID**

Retrieves detailed information about a specific user in the Dialpad system. This endpoint is used to fetch comprehensive user data, including profile details, account settings, and associated communication information. It's particularly useful for user management tasks, such as verifying user information, updating records in external systems, or displaying user profiles in integrated applications. The endpoint returns a single user object based on the provided user ID. It should be used when detailed information about a particular user is needed, but it will not provide aggregate data or information about multiple users simultaneously. Note that the specific fields returned may depend on the requester's permissions and the user's privacy settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                             |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Format Phone Numbers`

Integration name: **DIALPAD\_FORMAT\_PHONE\_NUMBERS**

The format\_phone\_number endpoint is used to standardize and format phone numbers within the Dialpad ecosystem. This tool takes a raw phone number input and converts it into a specified or default format, ensuring consistency across the platform. It's particularly useful when integrating new contact information, preparing numbers for display, or standardizing data for call routing purposes. The endpoint supports various input formats and can adapt to different country-specific number structures, making it versatile for international use. However, it's important to note that this tool is for formatting purposes only and does not validate the existence or operability of the phone number.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `number`       | string |          | —       | Phone number in local or E.164 format                                                                      |
| `country_code` | string |          | —       | Country code in ISO 3166-1 alpha-2 format such as "US". Required when sending local formatted phone number |

***

### `Dialpad Get Available Licenses For An Office`

Integration name: **DIALPAD\_GET\_AVAILABLE\_LICENSES\_FOR\_AN\_OFFICE**

Retrieves the number of available (unused) licenses for a specific office within a Dialpad organization. This endpoint is used to check the current license capacity and availability before assigning new licenses to users or features. It provides essential information for office administrators to manage their license inventory effectively. The endpoint should be used when planning user onboarding, upgrading subscriptions, or performing license audits. Note that this endpoint only returns information about unassigned licenses and does not provide details about currently assigned licenses or their usage.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                   |
| ----------- | ------ | :------: | ------- | --------------------------------------------- |
| `office_id` | string |     ✅    | —       | The office"s id. Example: "5123456789012345". |

***

### `Dialpad Get Call Center Status By Id`

Integration name: **DIALPAD\_GET\_CALL\_CENTER\_STATUS\_BY\_ID**

Retrieves the current operational status of a specific call center in the Dialpad system. This endpoint allows you to get real-time information about a call center's state, which can include details such as whether it's active, the number of agents available, current call volume, or any ongoing issues. It's particularly useful for monitoring call center performance, making informed decisions about resource allocation, or triggering automated workflows based on the call center's status. The endpoint should be used when you need up-to-the-minute information about a call center's operational condition, but it does not provide historical data or detailed analytics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                        |
| --------- | ------ | :------: | ------- | -------------------------------------------------- |
| `id`      | string |     ✅    | —       | The call center"s id. Example: "5678901234567890". |

***

### `Dialpad Get Call Labels`

Integration name: **DIALPAD\_GET\_CALL\_LABELS**

Retrieves a list of all available call labels in the Dialpad system. This endpoint allows users to fetch the current set of labels that can be applied to calls for categorization and management purposes. It's particularly useful for applications that need to display or use the full range of call labeling options in their interface or logic. The endpoint returns a collection of call labels, likely including their names and any associated metadata. It should be used when initializing call management interfaces or when needing to synchronize local label data with the current state in Dialpad. Note that this endpoint does not provide information about which labels are applied to specific calls; it only returns the set of available labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                              |
| --------- | ------- | :------: | ------- | ---------------------------------------- |
| `limit`   | integer |          | —       | The maximum number of results to return. |

***

### `Dialpad Get Call Review Share Link By Id`

Integration name: **DIALPAD\_GET\_CALL\_REVIEW\_SHARE\_LINK\_BY\_ID**

Retrieves or generates a share link for a specific call review in the Dialpad system. This endpoint allows users to obtain a unique URL that can be used to share call review data, including summaries, transcripts, or analysis, with other team members or external parties. The share link provides a convenient way to collaborate on call reviews without requiring direct access to the Dialpad platform. This tool should be used when a user needs to distribute call review information quickly and securely. It's particularly useful for managers sharing feedback, trainers providing examples, or team members collaborating on customer interactions. The endpoint does not provide the actual call review content, only the means to access it via the generated link.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `id`      | string |     ✅    | —       | The share link"s id. |

***

### `Dialpad Get Call Subscription Details`

Integration name: **DIALPAD\_GET\_CALL\_SUBSCRIPTION\_DETAILS**

Retrieves a list of call subscriptions associated with the authenticated user's account in the Dialpad platform. This endpoint allows developers to fetch details about existing call event subscriptions, which are used to receive real-time updates on call states and activities. It should be used when an application needs to monitor or manage the current set of call subscriptions, such as for auditing purposes or to verify the existence of specific subscriptions. The endpoint does not create, modify, or delete subscriptions; it only provides read access to the existing subscription data. Note that the response may include various types of call subscriptions, and developers should be prepared to handle different subscription formats or filters that may be present in the returned data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                   |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `target_id`   | string |          | —       | The target"s id. Example: "5678901234567890".                                                                 |
| `target_type` | string |          | —       | Target"s type.                                                                                                |

***

### `Dialpad Get Channel Members By Id`

Integration name: **DIALPAD\_GET\_CHANNEL\_MEMBERS\_BY\_ID**

Retrieves a list of members for a specific channel in Dialpad. This endpoint allows you to fetch user information for all members associated with the given channel ID. It's useful for obtaining an overview of channel participants, which can be helpful for managing team collaboration, assigning tasks, or analyzing channel activity. The endpoint should be used when you need to access member details for a particular channel, such as when displaying member lists, checking channel membership, or performing channel-related operations that require knowledge of its members. Note that this endpoint only provides member information and does not modify the channel or its membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The channel id. Example: "5678901234567890".                                                                  |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Get Departments By Office Id`

Integration name: **DIALPAD\_GET\_DEPARTMENTS\_BY\_OFFICE\_ID**

Retrieves a list of all departments associated with a specific office in the Dialpad system. This endpoint is essential for understanding the organizational structure within a company's Dialpad account. It should be used when there's a need to view, manage, or analyze the departmental breakdown of a particular office. The endpoint provides a comprehensive overview of the office's internal structure, which can be valuable for administrative tasks, reporting, or integration with other systems. Note that this endpoint only returns department information and does not provide details about individual users within those departments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                   |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`    | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `office_id` | integer |     ✅    | —       | The office"s id.                                                                                              |

***

### `Dialpad Get Deskphone By Parent Id`

Integration name: **DIALPAD\_GET\_DESKPHONE\_BY\_PARENT\_ID**

Retrieves detailed information about a specific deskphone within a designated room or parent entity in the Dialpad system. This endpoint is useful for obtaining the current configuration, status, and attributes of a particular deskphone device. It should be used when you need to access or verify the details of a single deskphone, such as during troubleshooting, inventory management, or when updating device settings. The endpoint does not modify any data and is intended for read-only operations. Keep in mind that the response will only provide information about the specified deskphone and will not include details about other devices or the parent entity itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                 |
| ----------- | ------ | :------: | ------- | ------------------------------------------- |
| `id`        | string |     ✅    | —       | The desk phone"s id.                        |
| `parent_id` | string |     ✅    | —       | The room"s id. Example: "5678901234567890". |

***

### `Dialpad Get Deskphones For User Parent Id`

Integration name: **DIALPAD\_GET\_DESKPHONES\_FOR\_USER\_PARENT\_ID**

Retrieves a list of deskphones associated with a specific user in the Dialpad system. This endpoint is useful for managing and tracking the deskphone inventory assigned to individual users within an organization. It can be used to audit user equipment, troubleshoot connectivity issues, or gather information for user setup and onboarding processes. The endpoint returns details about all deskphones linked to the specified user, which may include information such as deskphone models, serial numbers, and configuration status. This tool should be used when you need to obtain a comprehensive view of a user's assigned deskphone equipment in Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                             |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `parent_id` | integer |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Get Deskphones In Rooms`

Integration name: **DIALPAD\_GET\_DESKPHONES\_IN\_ROOMS**

Retrieves a list of deskphones associated with a specific room in the Dialpad system. This endpoint is used to get detailed information about the communication devices deployed in shared spaces such as conference rooms, reception areas, or phone booths. It provides an overview of the deskphones' configuration and status within the context of a particular room. Use this endpoint when you need to inventory, manage, or troubleshoot deskphones in a specific location. The response likely includes details such as deskphone models, serial numbers, configuration status, and any associated user information. This tool is particularly useful for IT administrators and facilities managers who need to maintain an up-to-date record of communication equipment in various rooms across the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                 |
| ----------- | ------ | :------: | ------- | ------------------------------------------- |
| `parent_id` | string |     ✅    | —       | The room"s id. Example: "5678901234567890". |

***

### `Dialpad Get Office Call Centers`

Integration name: **DIALPAD\_GET\_OFFICE\_CALL\_CENTERS**

Retrieves a list of call centers associated with a specific office in the Dialpad platform. This endpoint allows administrators and developers to fetch information about all call centers within a given office, which is useful for managing and organizing communication resources. Use this endpoint when you need to get an overview of call center units within an office, such as for reporting, resource allocation, or integration purposes. The endpoint returns basic information about each call center, but detailed configuration or real-time status may require additional API calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                   |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`    | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `office_id` | integer |     ✅    | —       | The office"s id.                                                                                              |

***

### `Dialpad Get Operator Skills By Call Center And User`

Integration name: **DIALPAD\_GET\_OPERATOR\_SKILLS\_BY\_CALL\_CENTER\_AND\_USER**

Retrieves the skill information for a specific operator within a designated call center. This endpoint allows you to access details about an operator's assigned skills, which are crucial for efficient call routing and task assignment in the call center environment. Use this endpoint when you need to review or verify an operator's capabilities, such as language proficiency, technical expertise, or customer service specialization. The retrieved information can be valuable for workforce management, skill-based routing configurations, and ensuring optimal operator-to-task matching. Note that this endpoint only provides skill data and does not allow for skill modification; separate endpoints would be required for updating skills.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                        |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------- |
| `user_id`        | string |     ✅    | —       | The operator"s ID. Example: "5678901234567890".    |
| `call_center_id` | string |     ✅    | —       | The call center"s ID. Example: "5678901234567890". |

***

### `Dialpad Get Phone Number Details`

Integration name: **DIALPAD\_GET\_PHONE\_NUMBER\_DETAILS**

Retrieves detailed information about a specific phone number associated with the Dialpad account. This endpoint allows you to fetch comprehensive data about a single phone number, including its current status, assigned user or department, tags, and other relevant attributes. Use this endpoint when you need to access or verify the details of a particular phone number within your Dialpad system. It's particularly useful for auditing phone number assignments, checking number status, or retrieving associated metadata. The endpoint does not modify any data and is safe for frequent use, making it ideal for real-time information retrieval or periodic synchronization with external systems.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                   |
| --------- | ------ | :------: | ------- | ----------------------------- |
| `number`  | string |     ✅    | —       | A phone number (e164 format). |

***

### `Dialpad Get Recording Share Link By Id`

Integration name: **DIALPAD\_GET\_RECORDING\_SHARE\_LINK\_BY\_ID**

Retrieves detailed information about a specific recording share link in the Dialpad system. This endpoint allows you to fetch the current status, settings, and metadata associated with a previously created share link for a call recording. It's particularly useful when you need to verify the current state of a share link, check its expiration status, or retrieve the associated recording details. The endpoint should be used when you have a valid recording share link ID and need to access its up-to-date information. Note that this endpoint only provides information about the share link itself and does not return the actual recording content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                    |
| --------- | ------ | :------: | ------- | ------------------------------ |
| `id`      | string |     ✅    | —       | The recording share link"s ID. |

***

### `Dialpad Get Rooms List`

Integration name: **DIALPAD\_GET\_ROOMS\_LIST**

Retrieves a list of all available meeting rooms or spaces within the Dialpad system. This endpoint is essential for managing and organizing video-enabled meetings, allowing users to view and select appropriate meeting spaces for their needs. It provides an overview of both physical conference rooms and virtual meeting spaces, supporting Dialpad's hybrid team collaboration features. Use this endpoint when you need to display available rooms, check room capabilities, or integrate room selection into scheduling workflows. The response likely includes details such as room names, capacities, available equipment (e.g., Poly Studio X integration), and potentially real-time availability status. This endpoint does not create or modify rooms; it's purely for fetching room information. Keep in mind that the returned data may need to be combined with calendar integration data to provide a complete picture of room availability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                   |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`    | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `office_id` | integer |          | —       | The office"s id.                                                                                              |

***

### `Dialpad Get Subscription Contact By Id`

Integration name: **DIALPAD\_GET\_SUBSCRIPTION\_CONTACT\_BY\_ID**

Retrieves the subscription information for a specific contact in the Dialpad system. This endpoint allows you to access details about a contact's current subscription status, type, and related information. Use this when you need to check or verify the subscription details for a particular contact, such as during account management or support processes. The endpoint focuses solely on subscription data and does not provide other contact information or modify any existing data. It's particularly useful for scenarios involving subscription management, billing inquiries, or when integrating Dialpad's contact subscription system with other applications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                    |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: '123456789012345'. |

***

### `Dialpad Get User Caller Id`

Integration name: **DIALPAD\_GET\_USER\_CALLER\_ID**

Retrieves the caller ID information for a specific user in the Dialpad system. This endpoint allows you to fetch the current caller ID settings associated with a user's account, which may include their display name, phone number, or other identifying information used when making outbound calls. It's particularly useful for administrators or integrations that need to verify or display a user's current caller ID configuration. The endpoint should be used when you need to check or display a user's caller ID settings, but not for modifying these settings. Note that this endpoint only provides read access to the caller ID information and cannot be used to update or change the caller ID settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                             |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Get User Deskphones`

Integration name: **DIALPAD\_GET\_USER\_DESKPHONES**

Retrieves detailed information about a specific deskphone associated with a particular user in the Dialpad system. This endpoint is useful when you need to access or verify the configuration, status, or other attributes of a user's deskphone. It should be used when you have both the user's ID and the specific deskphone ID, and need to fetch the most up-to-date information about that device. This endpoint does not modify any data and is safe for frequent calls, but consider caching the results if you're making multiple requests for the same deskphone in a short period.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                             |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`        | string  |     ✅    | —       | The desk phone"s id.                                                    |
| `parent_id` | integer |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Get User E911 Details`

Integration name: **DIALPAD\_GET\_USER\_E911\_DETAILS**

Retrieves the Enhanced 911 (E911) information for a specific user in the Dialpad system. This endpoint provides critical location data associated with the user's account, which is essential for emergency services to accurately locate the caller during an emergency. It should be used when setting up or verifying a user's emergency contact information, ensuring compliance with E911 regulations for VoIP services. The tool returns the current E911 configuration for the specified user, including registered address and any additional location details. It's important to note that this endpoint only retrieves information and does not modify any E911 settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id. Example: "123456789012345". |

***

### `Dialpad Get Webhooks Information`

Integration name: **DIALPAD\_GET\_WEBHOOKS\_INFORMATION**

Retrieves a list of all webhooks configured for the authenticated user's Dialpad account. This endpoint allows developers to view and manage their existing webhook subscriptions for various communication events such as calls, SMS, contacts, and agent status changes. It should be used when you need to audit your current webhook configurations, verify the status of your integrations, or gather information before modifying existing webhooks. The endpoint provides an overview of active webhooks but does not include detailed event data or allow for webhook creation or modification.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Hangup Call Via Id`

Integration name: **DIALPAD\_HANGUP\_CALL\_VIA\_ID**

Terminates an active call in the Dialpad system. This endpoint should be used when you need to programmatically end a specific ongoing call. It's particularly useful for automated call management, such as in customer service systems or when integrating Dialpad's functionality into other applications. The endpoint has a rate limit of 1200 requests per minute, allowing for high-volume usage in busy call centers or large-scale communication systems. Note that this action is irreversible; once a call is hung up, it cannot be reinstated, and a new call would need to be initiated if further communication is required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                 |
| --------- | ------ | :------: | ------- | ------------------------------------------- |
| `id`      | string |     ✅    | —       | The call"s id. Example: "4986480873062400". |

***

### `Dialpad Initiate Ivr Call Api Endpoint`

Integration name: **DIALPAD\_INITIATE\_IVR\_CALL\_API\_ENDPOINT**

Initiates an outbound IVR (Interactive Voice Response) call using the Dialpad API. This endpoint allows you to programmatically start a call to a specified phone number from a designated group within your Dialpad organization, such as a call center, department, or office. It's particularly useful for automating outbound calls, implementing scheduled call campaigns, or integrating Dialpad's calling capabilities into your own applications. The endpoint provides options for customizing the call with additional data and managing the displayed caller ID, enhancing flexibility in various use cases like customer service, sales outreach, or automated notifications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                       |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------- |
| `target_id`          | integer |     ✅    | —       | The ID of a group that will be used to initiate the call.                                         |
| `custom_data`        | string  |          | —       | Extra data to associate with the call. This will be passed through to any subscribed call events. |
| `target_type`        | string  |     ✅    | —       | The type of a group that will be used to initiate the call.                                       |
| `phone_number`       | string  |     ✅    | —       | The e164-formatted number to call.                                                                |
| `outbound_caller_id` | string  |          | —       | The e164-formatted number shown to the call recipient (or "blocked").                             |

***

### `Dialpad Initiate Outbound Call Via Api`

Integration name: **DIALPAD\_INITIATE\_OUTBOUND\_CALL\_VIA\_API**

The InitiateOutboundCall endpoint allows you to programmatically initiate an outbound call using the Dialpad API. This tool is used to place calls on behalf of a Dialpad user to a specified phone number. It supports various customization options, including setting custom caller ID, associating the call with a group, and enabling consult mode for handling multiple calls. Use this endpoint when you need to automate outbound calling in your application, such as for customer outreach, automated notifications, or integrating calling capabilities into your workflow. The endpoint is particularly useful for scenarios requiring programmatic call initiation, but it does not handle the actual call audio or provide real-time call control. Be aware that the call's success depends on the user's Dialpad account status and permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id`            | integer |     ✅    | —       | The id of the user who should make the outbound call.                                                                                                                                                                                                                                      |
| `group_id`           | integer |          | —       | The ID of a group that will be used to initiate the call.                                                                                                                                                                                                                                  |
| `device_id`          | string  |          | —       | The device"s id.                                                                                                                                                                                                                                                                           |
| `group_type`         | string  |          | —       | The type of a group that will be used to initiate the call.                                                                                                                                                                                                                                |
| `is_consult`         | boolean |          | —       | Enables the creation of a second call. If there is an ongoing call, it puts it on hold.                                                                                                                                                                                                    |
| `custom_data`        | string  |          | —       | Extra data to associate with the call. This will be passed through to any subscribed call events.                                                                                                                                                                                          |
| `phone_number`       | string  |     ✅    | —       | The e164-formatted number to call.                                                                                                                                                                                                                                                         |
| `outbound_caller_id` | string  |          | —       | The e164-formatted number shown to the call recipient (or "blocked"). If set to "blocked", the recipient will receive a call from "unknown caller". The number can be the caller"s number, or the caller"s group number if the group is provided, or the caller"s company reserved number. |

***

### `Dialpad Initiate User Call With Group Options`

Integration name: **DIALPAD\_INITIATE\_USER\_CALL\_WITH\_GROUP\_OPTIONS**

Initiates an outbound call for a specified Dialpad user. This endpoint allows you to programmatically start a phone call to a given number, with options to customize the call's properties such as the caller ID and associated group. It's particularly useful for automating outbound calling processes or integrating Dialpad's calling capabilities into other applications. The endpoint supports additional features like custom data association for call tracking and the ability to initiate calls through specific organizational groups. Note that while the endpoint doesn't explicitly mark any parameters as required, a valid destination phone number is necessary to initiate a call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                 | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)                                                                                                                                                                                                                    |
| `group_id`           | integer |          | —       | The ID of a group that will be used to initiate the call.                                                                                                                                                                                                                                  |
| `group_type`         | string  |          | —       | The type of a group that will be used to initiate the call.                                                                                                                                                                                                                                |
| `custom_data`        | string  |          | —       | Extra data to associate with the call. This will be passed through to any subscribed call events.                                                                                                                                                                                          |
| `phone_number`       | string  |          | —       | The e164-formatted number to call.                                                                                                                                                                                                                                                         |
| `outbound_caller_id` | string  |          | —       | The e164-formatted number shown to the call recipient (or "blocked"). If set to "blocked", the recipient will receive a call from "unknown caller". The number can be the caller"s number, or the caller"s group number if the group is provided, or the caller"s company reserved number. |

***

### `Dialpad List Channels Api`

Integration name: **DIALPAD\_LIST\_CHANNELS\_API**

Retrieves a list of all available communication channels in the Dialpad platform. This endpoint provides an overview of the various channels that can be used for voice, SMS, and other digital engagement methods within Dialpad. It should be used when you need to obtain information about the communication options available to your account or organization. The endpoint returns details about each channel, which may include channel IDs, types (e.g., voice, SMS), and their current status. This tool is particularly useful for applications that need to dynamically adjust their communication strategies based on available channels or for monitoring the health and availability of different communication methods in Dialpad. Note that this endpoint likely returns only basic channel information and may not include detailed usage statistics or real-time activity data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `state`   | string |          | —       | The state of the channel.                                                                                     |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad List Conference Rooms`

Integration name: **DIALPAD\_LIST\_CONFERENCE\_ROOMS**

Retrieves a list of conference rooms available in the Dialpad system. This endpoint allows users to fetch information about both virtual and physical conference rooms set up within their Dialpad account. It can be used to gather details such as room names, capacities, and configurations for scheduling or managing meetings. The endpoint is particularly useful for applications that need to display available conference rooms or integrate Dialpad's room information into third-party scheduling systems. Note that this endpoint does not provide real-time availability of rooms or allow for booking; it's primarily for listing and describing the configured rooms.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad List Offices Endpoint`

Integration name: **DIALPAD\_LIST\_OFFICES\_ENDPOINT**

Retrieves a list of offices within the Dialpad platform. This endpoint provides access to office information, which is crucial for managing multiple offices in an organization using Dialpad. It should be used when you need to obtain an overview of all offices or gather specific details about offices registered in the Dialpad system. The endpoint likely returns essential information such as office names, locations, administrators, and possibly user counts or other relevant metadata. It's important to note that this endpoint does not modify any office data and is intended for read-only operations. Keep in mind that the returned data may be subject to the user's permissions within the Dialpad system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                   |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `active_only` | boolean |          | —       | Whether we only return active offices.                                                                        |

***

### `Dialpad List Users`

Integration name: **DIALPAD\_LIST\_USERS**

Retrieves a list of users from the Dialpad system. This endpoint allows you to fetch user account information, which is essential for user management and provisioning tasks. It can be used to sync user data with external systems, perform audits, or gather information for reporting purposes. The endpoint likely supports pagination and filtering options to manage large sets of user data efficiently. However, it does not provide real-time updates or webhook functionality for user changes - separate endpoints or features would be needed for those use cases.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                                   |
| --------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `email`         | string  |          | —       | The user"s email.                                                                                             |
| `state`         | string  |          | —       | Filter results by the specified user state (e.g. active, suspended, deleted)                                  |
| `cursor`        | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `number`        | string  |          | —       | The user"s phone number.                                                                                      |
| `company_admin` | boolean |          | —       | If provided, filter results by the specified value to return only company admins or only non-company admins.  |

***

### `Dialpad Modify Contact Details Using Id`

Integration name: **DIALPAD\_MODIFY\_CONTACT\_DETAILS\_USING\_ID**

Updates an existing contact's information in the Dialpad system. This endpoint allows for partial updates of contact details, including personal information, communication details, and associated URLs. It's used when you need to modify or add information to an existing contact record. The endpoint supports updating multiple fields simultaneously, making it efficient for bulk changes or comprehensive contact updates. Note that all fields are optional, allowing for targeted updates without affecting other contact information. When updating list-based fields like emails or phones, the provided lists will replace the existing data entirely.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                        |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`           | string |     ✅    | —       | The contact"s id.                                                                                                                  |
| `urls`         | array  |          | —       | A list of websites associated with or belonging to this contact.                                                                   |
| `emails`       | array  |          | —       | The contact"s emails. The first email in the list is the contact"s primary email.                                                  |
| `phones`       | array  |          | —       | The contact"s phone numbers. The phone number must be in e164 format. The first number in the list is the contact"s primary phone. |
| `extension`    | string |          | —       | The contact"s extension number.                                                                                                    |
| `job_title`    | string |          | —       | \[single-line only] The contact"s job title.                                                                                       |
| `last_name`    | string |          | —       | \[single-line only] The contact"s last name.                                                                                       |
| `first_name`   | string |          | —       | \[single-line only] The contact"s first name.                                                                                      |
| `trunk_group`  | string |          | —       | \[Deprecated]                                                                                                                      |
| `company_name` | string |          | —       | \[single-line only] The contact"s company name.                                                                                    |

***

### `Dialpad Modify Custom Ivr Settings`

Integration name: **DIALPAD\_MODIFY\_CUSTOM\_IVR\_SETTINGS**

Updates a custom Interactive Voice Response (IVR) configuration for a specific target within the Dialpad system. This endpoint allows you to assign an existing IVR workflow to a particular target (such as a call center or department) and specify its application for inbound, outbound, or both types of calls. It's particularly useful for customizing call routing and auto-recording settings in call centers. The endpoint requires specifying the target type, target ID, and IVR type in the URL path, along with the IVR ID in the request body. Use this when you need to modify IVR settings for specific departments or call centers in your Dialpad organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                 |
| --------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `ivr_id`        | integer |     ✅    | —       | The id of the ivr that you want to use for the ivr type.                                    |
| `ivr_type`      | string  |     ✅    | —       | Type of ivr you want to update                                                              |
| `target_id`     | string  |     ✅    | —       | The target"s id. Example: "4986480873062400".                                               |
| `target_type`   | string  |     ✅    | —       | Target"s type.                                                                              |
| `select_option` | string  |          | —       | For call center auto call recording only. Set ivr for inbound or outbound. Default is both. |

***

### `Dialpad Modify Operator Skill Level`

Integration name: **DIALPAD\_MODIFY\_OPERATOR\_SKILL\_LEVEL**

Updates the skill level of a specific operator in a designated call center. This endpoint allows administrators to adjust an operator's proficiency rating, which can be used for call routing, performance tracking, and workforce management. The skill level is represented as an integer from 0 to 100, with higher values indicating greater expertise. Use this endpoint when you need to modify an operator's skill level based on performance reviews, training completion, or changes in responsibilities. It's particularly useful for maintaining an up-to-date and accurate representation of your call center team's capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                            |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------ |
| `user_id`        | string  |     ✅    | —       | The operator"s ID                                                                                      |
| `skill_level`    | integer |     ✅    | —       | New skill level to set the operator in the call center. It must be an integer value between 0 and 100. |
| `call_center_id` | string  |     ✅    | —       | The call center"s ID. Example: "4986480873062400".                                                     |

***

### `Dialpad Modify Webhook Configuration`

Integration name: **DIALPAD\_MODIFY\_WEBHOOK\_CONFIGURATION**

Updates an existing webhook configuration in the Dialpad API. This endpoint allows you to modify the destination URL and/or the secret used for request validation of a specific webhook. Use this when you need to change where webhook events are sent or update the security settings of an existing webhook. The endpoint is particularly useful for maintaining webhook configurations as your integration evolves or when you need to rotate security credentials. Note that updating these settings will affect all future events for this webhook, so ensure your receiving endpoint is prepared for the changes before updating.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                        |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------- |
| `id`       | string |     ✅    | —       | The webhook"s ID, which is generated after creating a webhook successfully.                        |
| `secret`   | string |          | —       | \[single-line only] Webhook"s signature secret that"s used to confirm the validity of the request. |
| `hook_url` | string |          | —       | The webhook"s URL. Triggered events will be sent to the url provided here.                         |

***

### `Dialpad Move User To Specified Office`

Integration name: **DIALPAD\_MOVE\_USER\_TO\_SPECIFIED\_OFFICE**

Updates a user's office assignment within the Dialpad system. This endpoint allows administrators to move a user from their current office to a different office. It should be used when there's a need to change a user's organizational association, such as during departmental transfers or office relocations. The operation is performed by specifying the user's ID in the URL path and optionally providing the new office ID in the request body. If no office ID is provided, the user's current office assignment remains unchanged. This endpoint is particularly useful for managing organizational structure and ensuring users are correctly associated with their respective offices in Dialpad.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                 |
| ----------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `id`        | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)     |
| `office_id` | integer |          | —       | The user"s office id. When provided, the user will be moved to this office. |

***

### `Dialpad Oauth2 Authorize Endpoint`

Integration name: **DIALPAD\_OAUTH2\_AUTHORIZE\_ENDPOINT**

Initiates the OAuth 2.0 authorization process for the Dialpad API. This endpoint is the entry point for obtaining user consent and generating an authorization code, which can later be exchanged for an access token. It should be used when an application needs to request permission to access a user's Dialpad resources. The endpoint will redirect the user to Dialpad's login and consent page. After the user grants permission, they will be redirected back to the specified redirect\_uri with an authorization code. This endpoint is crucial for implementing secure, user-authorized access to Dialpad's API features.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example | Description                                                                           |
| ----------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------- |
| `scope`                 | string |          | —       | Space-separated list of additional scopes that should be granted to the vended token. |
| `state`                 | string |          | —       | Unpredictable token to prevent CSRF.                                                  |
| `client_id`             | string |     ✅    | —       | The client\_id of the OAuth app.                                                      |
| `redirect_uri`          | string |     ✅    | —       | The URI the user should be redirected back to after granting consent to the app.      |
| `response_type`         | string |          | —       | The OAuth flow to perform. Must be "code" (authorization code flow).                  |
| `code_challenge`        | string |          | —       | PKCE challenge value (hash commitment).                                               |
| `code_challenge_method` | string |          | —       | PKCE challenge method (hashing algorithm).                                            |

***

### `Dialpad Patch Access Control Policy By Id`

Integration name: **DIALPAD\_PATCH\_ACCESS\_CONTROL\_POLICY\_BY\_ID**

This endpoint allows you to update an existing access control policy in the Dialpad system. It provides the ability to modify various attributes of a policy, including its name, description, associated permissions, and state. This endpoint is particularly useful for adjusting policy settings as organizational needs change or for reactivating deleted policies. It's important to note that only company administrators can perform this operation, and care should be taken when modifying permissions to ensure appropriate access levels are maintained. The endpoint doesn't return the updated policy details, so a separate GET request may be necessary to confirm changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                       |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `id`              | integer |     ✅    | —       | The access control policy"s id.                                   |
| `name`            | string  |          | —       | \[single-line only] A human-readable display name for the policy. |
| `state`           | string  |          | —       | Restore a deleted policy.                                         |
| `user_id`         | integer |          | —       | user id updating this policy. Must be a company admin             |
| `description`     | string  |          | —       | \[single-line only] Optional description for the policy.          |
| `permission_sets` | array   |          | —       | List of permission associated with this policy.                   |

***

### `Dialpad Patch Agent Status Event Subscription`

Integration name: **DIALPAD\_PATCH\_AGENT\_STATUS\_EVENT\_SUBSCRIPTION**

Updates an existing agent status subscription in the Dialpad system. This endpoint allows you to modify the configuration of a subscription that tracks changes in agent statuses within a contact center environment. Use this to adjust the subscription's enabled state, change the associated logging endpoint, or update the agent type. It's particularly useful for maintaining up-to-date event tracking setups as your contact center needs evolve. Note that all fields are optional, allowing for partial updates to the subscription. Be cautious when changing the endpoint\_id, as this will affect where status change events are sent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully.                                                                                                                   |
| `enabled`     | boolean |          | —       | Whether or not the this agent status event subscription is enabled.                                                                                                                                                  |
| `agent_type`  | string  |          | —       | The agent type this event subscription subscribes to.                                                                                                                                                                |
| `endpoint_id` | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. If you plan to pair this event subscription with another logging endpoint, please provide a valid webhook ID here. |

***

### `Dialpad Patch Call Router By Id`

Integration name: **DIALPAD\_PATCH\_CALL\_ROUTER\_BY\_ID**

Updates an existing call router in the Dialpad system. This endpoint allows you to modify various settings of a call router, including its default target, enabled state, name, office association, error handling, routing URL, and authentication secret. Use this when you need to change the behavior or configuration of an existing call router. The endpoint is particularly useful for adjusting routing logic, updating fallback options, or managing error states. Note that while all parameters are optional, providing at least one is necessary to make meaningful changes. Be cautious when updating critical parameters like the routing URL or secret, as incorrect values could disrupt call routing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                  | string  |     ✅    | —       | The API call router"s ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `name`                | string  |          | —       | \[single-line only] A human-readable display name for the router.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `secret`              | string  |          | —       | \[single-line only] The call router"s signature secret. This is a plain text string that you should generate with a minimum length of 32 characters.                                                                                                                                                                                                                                                                                                                                                                      |
| `enabled`             | boolean |          | —       | If set to False, the call router will skip the routing url and instead forward calls straight to the default target.                                                                                                                                                                                                                                                                                                                                                                                                      |
| `office_id`           | integer |          | —       | The ID of the office to which this router belongs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `routing_url`         | string  |          | —       | The URL that should be used to drive call routing decisions.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `default_target_id`   | integer |          | —       | The ID of the target that should be used as a fallback destination for calls if the call router is disabled or fails.                                                                                                                                                                                                                                                                                                                                                                                                     |
| `reset_error_count`   | boolean |          | —       | Sets the auto-disablement routing error count back to zero. Call routers maintain a count of the number of errors that have occured within the past hour, and automatically become disabled when that count exceeds 10. Setting enabled to true via the API will not reset that count, which means that the router will likely become disabled again after one more error. In most cases, this will be useful for testing fixes in your routing API, but in some circumstances it may be desirable to reset that counter. |
| `default_target_type` | string  |          | —       | The entity type of the default target.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Dialpad Patch Department Details By Id`

Integration name: **DIALPAD\_PATCH\_DEPARTMENT\_DETAILS\_BY\_ID**

Updates the settings and configuration of a specific department in the Dialpad system. This endpoint allows for comprehensive modification of department properties, including operating hours, call routing strategies, hold queue settings, and voice intelligence features. It's particularly useful for adjusting department behavior to match changing business needs or to optimize call handling efficiency. The endpoint supports partial updates, allowing you to modify only the specific fields you need to change without affecting other settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                        | Type    | Required | Example | Description                                                                                                                                                                                              |
| ------------------------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                             | integer |     ✅    | —       | The call center"s id.                                                                                                                                                                                    |
| `name`                                           | string  |          | —       | \[single-line only] The name of the department. Max 100 characters.                                                                                                                                      |
| `hours_on`                                       | boolean |          | —       | The time frame when the department wants to receive calls. Default value is false, which means the call center will always take calls (24/7).                                                            |
| `friday_hours`                                   | array   |          | —       | The Friday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                     |
| `monday_hours`                                   | array   |          | —       | The Monday hours of operation. To specify when hours\_on is set to True. e.g. \["08:00", "12:00", "14:00", "18:00"] => open from 8AM to Noon, and from 2PM to 6PM. Default value is \["08:00", "18:00"]. |
| `ring_seconds`                                   | integer |          | —       | The number of seconds to allow the group line to ring before going to voicemail. Choose from 10 seconds to 45 seconds. Default is 30 seconds.                                                            |
| `sunday_hours`                                   | array   |          | —       | The Sunday hours of operation. Default is empty array.                                                                                                                                                   |
| `tuesday_hours`                                  | array   |          | —       | The Tuesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                    |
| `saturday_hours`                                 | array   |          | —       | The Saturday hours of operation. Default is empty array.                                                                                                                                                 |
| `thursday_hours`                                 | array   |          | —       | The Thursday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                   |
| `wednesday_hours`                                | array   |          | —       | The Wednesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                  |
| `group_description`                              | string  |          | —       | The description of the department. Max 256 characters.                                                                                                                                                   |
| `auto_call_recording`                            | boolean |          | —       | Whether or not automatically record all calls of this department. Default is False.                                                                                                                      |
| `hold__queue__allow__queuing`                    | boolean |          | —       | Whether or not send callers to a hold queue, if all operators are busy on other calls. Default is False.                                                                                                 |
| `routing__options__open__dtmf`                   | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `hold__queue__max__hold__count`                  | integer |          | —       | If all operators are busy on other calls, send callers to a hold queue. This is to specify your queue size. Choose from 1-50. Default is 50.                                                             |
| `routing__options__closed__dtmf`                 | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `routing__options__open__action`                 | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `hold__queue__max__hold__seconds`                | integer |          | —       | Maximum queue wait time in seconds. Choose from 30s to 18000s (3 hours). Default is 900s (15 min).                                                                                                       |
| `routing__options__closed__action`               | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `voice__intelligence__auto__start`               | boolean |          | —       | Auto start Vi for this call center. Default is True.                                                                                                                                                     |
| `voice__intelligence__allow__pause`              | boolean |          | —       | Allow individual users to start and stop Vi during calls. Default is True.                                                                                                                               |
| `routing__options__open__operator__routing`      | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__open__action__target__id`     | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__closed__operator__routing`    | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `routing__options__closed__action__target__id`   | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__open__action__target__type`   | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__open__try__dial__operators`   | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `routing__options__closed__action__target__type` | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__closed__try__dial__operators` | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |

***

### `Dialpad Patch Subscription Changelog Endpoint`

Integration name: **DIALPAD\_PATCH\_SUBSCRIPTION\_CHANGELOG\_ENDPOINT**

Updates an existing change log event subscription in the Dialpad system. This endpoint allows you to modify the status of a subscription and associate it with a specific logging endpoint. Use this when you need to enable or disable notifications for system changes or when you want to change the destination for these notifications. The endpoint is particularly useful for managing event-driven integrations and maintaining up-to-date information flows between Dialpad and external systems. Note that updating a subscription does not create new events; it only affects future notifications for the specified change log.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully.                                                                                                                   |
| `enabled`     | boolean |          | —       | Whether or not the change log event subscription is enabled.                                                                                                                                                         |
| `endpoint_id` | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. If you plan to pair this event subscription with another logging endpoint, please provide a valid webhook ID here. |

***

### `Dialpad Patch User Active Call Recording`

Integration name: **DIALPAD\_PATCH\_USER\_ACTIVE\_CALL\_RECORDING**

Updates the call recording settings for an active call of a specific Dialpad user. This endpoint allows real-time management of call recording features during an ongoing call, including enabling or disabling recording, controlling the playback of recording indication messages, and specifying the scope of recording for group calls. It should be used when there's a need to dynamically change recording settings mid-call, such as for compliance purposes or user preferences. This endpoint is only effective for active calls and will not affect future calls or general user settings. Note that all parameters are optional, allowing for granular control over specific aspects of call recording without affecting others.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                                                      |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`             | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)                                                                                                                          |
| `is_recording`   | boolean |          | —       | Whether or not recording should be enabled.                                                                                                                                                      |
| `play_message`   | boolean |          | —       | Whether or not to play a message to indicate the call is being recorded (or recording has stopped).                                                                                              |
| `recording_type` | string  |          | —       | Whether or not to toggle recording for the operator call (personal recording), the group call (department recording), or both. Only applicable for group calls (call centers, departments, etc.) |

***

### `Dialpad Patch User Status`

Integration name: **DIALPAD\_PATCH\_USER\_STATUS**

Updates the status of a specific user in the Dialpad system. This endpoint allows you to set or modify a user's status message and optionally specify an expiration time for that status. It's particularly useful for indicating a user's availability, current activity, or temporary absence. The endpoint should be used when you need to programmatically update a user's status, such as integrating with calendar systems, automatic out-of-office settings, or custom workflow automations. It's important to note that this endpoint updates the status for a single user identified by their ID in the URL path. The status update is immediate, and if an expiration is set, the status will automatically clear at the specified time. This tool does not retrieve the current status; it only updates it. If you need to fetch the current status before updating, you would need to use a separate GET endpoint (not provided in this schema).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                             |
| ---------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`             | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |
| `expiration`     | integer |          | —       | The expiration of this status. None for no expiration.                  |
| `status_message` | string  |          | —       | The status message for the user.                                        |

***

### `Dialpad Patch Websocket Signature Secret`

Integration name: **DIALPAD\_PATCH\_WEBSOCKET\_SIGNATURE\_SECRET**

Updates the signature secret for a specific websocket connection in the Dialpad platform. This endpoint allows you to modify the authentication mechanism used to validate incoming requests to the websocket. Use this when you need to rotate the secret for security reasons or when setting up a new authentication scheme for an existing websocket. The update affects future validations and may require updating the secret on the client-side as well. Be cautious when using this endpoint, as it can potentially disrupt active connections if not managed properly. Note that setting the secret to null effectively removes any signature validation for the websocket, which should only be done if alternative security measures are in place.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                          |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The websocket"s ID, which is generated after creating a websocket successfully.                      |
| `secret`  | string |          | —       | \[single-line only] Websocket"s signature secret that"s used to confirm the validity of the request. |

***

### `Dialpad Post Call Event Subscription`

Integration name: **DIALPAD\_POST\_CALL\_EVENT\_SUBSCRIPTION**

Creates a new call event subscription in the Dialpad system, allowing real-time notifications for various call states and actions. This endpoint enables developers to set up targeted event streams for specific call centers, users, or other entities within Dialpad. Use this when you need to monitor call activities, automate workflows based on call states, or integrate Dialpad's call data with external systems. The subscription can be fine-tuned to listen for specific call states and target types, making it versatile for various use cases such as call monitoring, analytics, or custom integrations. Note that while the subscription can be created with this endpoint, you'll need to have a properly configured webhook or websocket to receive the events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                       |
| ------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------- |
| `enabled`          | boolean |          | —       | Whether or not the call event subscription is enabled.                                            |
| `target_id`        | integer |          | —       | The ID of the specific target for which events should be sent. Example: "5676480932184064".       |
| `call_states`      | array   |          | —       | The call event subscription"s list of call states.                                                |
| `endpoint_id`      | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. |
| `target_type`      | string  |          | —       | The target type.                                                                                  |
| `group_calls_only` | boolean |          | —       | Call event subscription for group calls only.                                                     |

***

### `Dialpad Post Recording Share Link`

Integration name: **DIALPAD\_POST\_RECORDING\_SHARE\_LINK**

Creates a shareable link for a specific recording in Dialpad, such as a call recording or voicemail. This endpoint allows users to generate a link that can be used to share recordings with others, with customizable privacy settings. It should be used when you need to create a URL for sharing a recording outside of the Dialpad interface. The endpoint requires specifying the recording ID and type, and optionally allows setting the privacy level of the share link. Note that this endpoint only creates the share link; it does not modify the recording itself or its storage location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                           |
| ---------------- | ------ | :------: | ------- | ----------------------------------------------------- |
| `privacy`        | string |          | —       | The privacy state of the recording share link.        |
| `recording_id`   | string |     ✅    | —       | The recording entity"s ID.                            |
| `recording_type` | string |     ✅    | —       | The type of the recording entity shared via the link. |

***

### `Dialpad Post Subscription Change Log Event`

Integration name: **DIALPAD\_POST\_SUBSCRIPTION\_CHANGE\_LOG\_EVENT**

Creates or updates a subscription for changelog events in the Dialpad system. This endpoint allows developers to set up real-time notifications for changes and updates within Dialpad, such as API modifications, feature releases, or system updates. By configuring this subscription, you can ensure your application stays informed about important changes that may affect its integration with Dialpad. The subscription can be enabled or disabled as needed, and notifications are sent to a pre-configured webhook or websocket endpoint. Use this when you need to monitor Dialpad's evolving features and API changes to maintain compatibility and leverage new functionalities promptly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                    |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `enabled`     | boolean |          | —       | Whether or not the this change log event subscription is enabled.                                                              |
| `endpoint_id` | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. Example: "5676480932184064". |

***

### `Dialpad Post Users Screenpop Uri`

Integration name: **DIALPAD\_POST\_USERS\_SCREENPOP\_URI**

Triggers a screen pop for a specific Dialpad user, displaying relevant information during a call or communication event. This endpoint should be used when you need to automatically present contextual data to a user's screen, such as customer information from a CRM system. It's particularly useful in contact center scenarios where agents need quick access to caller details. The screen pop URL can be a web page or a custom URI to launch a native application. Note that this endpoint does not retrieve or send any customer data directly; it only initiates the display of the specified URL on the user's device.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                              |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`             | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key). Example: "5676480932184064".                                                                                                                                                                                                                    |
| `screen_pop_uri` | string |     ✅    | —       | The screen pop"s url. Most Url should start with scheme name such as http or https. Be aware that url with userinfo subcomponent, such as "<https://username:password@www.example.com>" is not supported for security reasons. Launching native apps is also supported through a format such as "customuri://domain.com" |

***

### `Dialpad Post Websocket Connection Secret`

Integration name: **DIALPAD\_POST\_WEBSOCKET\_CONNECTION\_SECRET**

Creates a websocket connection for real-time communication with the Dialpad platform. This endpoint enables applications to establish a persistent, full-duplex connection for receiving live updates and event notifications from Dialpad. Use this when you need to implement features that require instant updates, such as live call status changes, message delivery notifications, or agent availability updates. The websocket connection allows for efficient, low-latency communication, reducing the need for frequent polling of other API endpoints. Note that while this endpoint creates the connection, you'll need to implement appropriate event listeners and handlers in your application to process the incoming data streams effectively.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                          |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------- |
| `secret`  | string |          | —       | \[single-line only] Websocket"s signature secret that"s used to confirm the validity of the request. |

***

### `Dialpad Reassign Phone Number To Target`

Integration name: **DIALPAD\_REASSIGN\_PHONE\_NUMBER\_TO\_TARGET**

Assigns or reassigns a phone number to a specific target within the Dialpad system. This endpoint allows you to associate a phone number with various entities such as users, departments, call centers, or other supported target types. Use this when you need to allocate or reallocate phone numbers across your Dialpad organization. The endpoint is particularly useful for managing phone number assignments during user onboarding, department restructuring, or call center setup. Note that this operation may affect existing call routing and should be used cautiously in production environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                        |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `number`      | string  |     ✅    | —       | A specific number to assign                                                        |
| `primary`     | boolean |          | —       | A boolean indicating whether this should become the target"s primary phone number. |
| `target_id`   | integer |     ✅    | —       | The ID of the target to reassign this number to. Example: "5676480932184064".      |
| `target_type` | string  |     ✅    | —       | The type of the target.                                                            |

***

### `Dialpad Redeem Access Or Refresh Token`

Integration name: **DIALPAD\_REDEEM\_ACCESS\_OR\_REFRESH\_TOKEN**

The OAuth 2.0 token endpoint for Dialpad's API is used to obtain access tokens for authenticating API requests. It supports two grant types: Authorization Code and Refresh Token. For the Authorization Code flow, it exchanges an authorization code for an access token, enabling secure user authentication without exposing credentials. The Refresh Token flow allows obtaining a new access token when the current one expires, maintaining long-term access without user intervention. This endpoint is crucial for implementing OAuth 2.0 authentication in applications integrating with Dialpad's API, ensuring secure and authorized access to user data and Dialpad services.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dialpad Remove Blocked Numbers`

Integration name: **DIALPAD\_REMOVE\_BLOCKED\_NUMBERS**

Removes specified phone numbers from the blocked list in the Dialpad system. This endpoint allows you to unblock multiple phone numbers in a single API call, streamlining the process of managing blocked numbers. Use this when you need to restore communication capabilities with previously blocked numbers, such as when a number is no longer considered spam or when a block was applied in error. The endpoint accepts a list of E164 formatted numbers, ensuring standardized input across different countries and number formats. Note that this operation is irreversible; once numbers are removed from the blocked list, they will be able to communicate with your Dialpad account unless blocked again.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                       |
| --------- | ----- | :------: | ------- | --------------------------------- |
| `numbers` | array |          | —       | A list of E164 formatted numbers. |

***

### `Dialpad Retrieve Access Control Policy Assignments`

Integration name: **DIALPAD\_RETRIEVE\_ACCESS\_CONTROL\_POLICY\_ASSIGNMENTS**

Retrieves the assignments of a specific access control policy in Dialpad. This endpoint allows company administrators to view which users, roles, or groups have been assigned to a particular access control policy. It's useful for auditing and managing permissions within the Dialpad platform. The endpoint returns a list of assignments, which may include user IDs, role names, or group identifiers associated with the specified policy. Use this when you need to review or verify the current assignments of an access control policy, such as during security audits or when updating user permissions. Note that this endpoint only provides assignment information and does not allow for modifying the assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The access control policy"s id. Example: "5676480932184064".                                                  |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve Access Control Policy By Id`

Integration name: **DIALPAD\_RETRIEVE\_ACCESS\_CONTROL\_POLICY\_BY\_ID**

Retrieves detailed information about a specific access control policy in the Dialpad system. This endpoint allows administrators to fetch the configuration and settings of a particular policy, which defines custom permissions and access levels for users within the Dialpad platform. Use this endpoint when you need to review or audit the settings of an existing access control policy. It's particularly useful for verifying policy details before making modifications or when troubleshooting access-related issues. The endpoint returns comprehensive information about the policy but does not allow for modifications; separate endpoints would be used for updating policies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                  |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The access control policy"s id. Example: "5676480932184064". |

***

### `Dialpad Retrieve Agent Status By Id`

Integration name: **DIALPAD\_RETRIEVE\_AGENT\_STATUS\_BY\_ID**

Retrieves detailed information about a specific agent status subscription using its unique identifier. This endpoint is used to fetch the current configuration and settings of an agent status subscription, which may include details such as the associated agent, status types being tracked, and any custom off-duty statuses. It's particularly useful for administrators or supervisors who need to review or troubleshoot individual agent status subscriptions. The endpoint does not modify any data and is safe for frequent calls to keep the client application updated with the latest subscription information. Note that this endpoint only provides details for a single subscription and cannot be used to list multiple subscriptions or modify existing ones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5676480932184064". |

***

### `Dialpad Retrieve Agent Status Subscription`

Integration name: **DIALPAD\_RETRIEVE\_AGENT\_STATUS\_SUBSCRIPTION**

Retrieves a list of agent status subscriptions from the Dialpad system. This endpoint allows you to fetch real-time information about the current subscriptions to agent status events. It is useful for monitoring which agents or systems are subscribed to receive updates about changes in agent statuses, such as availability or activity. This tool should be used when you need to audit or manage the subscriptions related to agent status events in your Dialpad integration. Note that this endpoint does not provide the actual agent statuses, but rather information about the subscriptions to these status updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve App Settings`

Integration name: **DIALPAD\_RETRIEVE\_APP\_SETTINGS**

Retrieves the current application settings for the authenticated Dialpad account. This endpoint provides access to various configuration options and preferences set for the Dialpad application. It should be used when you need to review or audit the current app settings, such as user interface preferences, notification settings, or integration configurations. The endpoint returns a comprehensive list of all available settings, which can be useful for troubleshooting, customization, or ensuring consistency across different instances of the application. Note that this endpoint is read-only and does not allow for modifying settings; separate endpoints would be required for updating individual settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                   |
| ------------- | ------ | :------: | ------- | --------------------------------------------- |
| `target_id`   | string |          | —       | The target"s id. Example: "5676480932184064". |
| `target_type` | string |          | —       | The target"s type.                            |

***

### `Dialpad Retrieve Blocked Number Details`

Integration name: **DIALPAD\_RETRIEVE\_BLOCKED\_NUMBER\_DETAILS**

Retrieves information about a specific blocked number in the Dialpad system. This endpoint allows users or administrators to check if a particular phone number is currently blocked. It's useful for verifying the status of a number before attempting communication or when reviewing security settings. The endpoint returns details about the blocked number, which may include when it was blocked and any associated metadata. It should be used when there's a need to confirm the blocked status of a specific number, but it won't provide a list of all blocked numbers or modify any existing blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                   |
| --------- | ------ | :------: | ------- | ----------------------------- |
| `number`  | string |     ✅    | —       | A phone number (e164 format). |

***

### `Dialpad Retrieve Blocked Phone Numbers`

Integration name: **DIALPAD\_RETRIEVE\_BLOCKED\_PHONE\_NUMBERS**

Retrieves a comprehensive list of all phone numbers that have been blocked through the Dialpad API. This endpoint is useful for managing call blocking settings and reviewing the current state of blocked numbers associated with your Dialpad account. It provides a straightforward way to fetch all blocked numbers without the need for additional parameters. Use this endpoint when you need to audit your blocked number list, verify if a specific number is blocked, or prepare for bulk operations on blocked numbers. Keep in mind that this endpoint only returns numbers blocked via the API and may not include numbers blocked through other methods in the Dialpad interface.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve Call Center By Id`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_CENTER\_BY\_ID**

Retrieves detailed information about a specific call center in the Dialpad system. This endpoint allows you to fetch comprehensive data about a call center, including its configuration, associated agents, and operational metrics. Use this when you need to access or review the current state and settings of a particular call center. The endpoint is particularly useful for administrators managing multiple call centers or for integrations that need up-to-date call center information. Note that this endpoint only provides read access and cannot be used to modify call center details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                        |
| --------- | ------ | :------: | ------- | -------------------------------------------------- |
| `id`      | string |     ✅    | —       | The call center"s id. Example: "5676480932184064". |

***

### `Dialpad Retrieve Callcenter Operators By Id`

Integration name: **DIALPAD\_RETRIEVE\_CALLCENTER\_OPERATORS\_BY\_ID**

Retrieves a list of operators associated with a specific call center in Dialpad. This endpoint allows you to fetch detailed information about the operators working in a particular call center, which is essential for managing call center operations, monitoring staff, and optimizing workload distribution. Use this endpoint when you need to view the current roster of operators, check staffing levels, or gather operator details for reporting purposes. The endpoint returns operator information but does not provide real-time status updates or allow modifications to operator data. It's particularly useful for integrations that require synchronization of call center staff information with external systems or for building custom dashboards to monitor call center composition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                        |
| --------- | ------ | :------: | ------- | -------------------------------------------------- |
| `id`      | string |     ✅    | —       | The call center"s id. Example: "5047447224311808". |

***

### `Dialpad Retrieve Call Centers Information`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_CENTERS\_INFORMATION**

Retrieves a list of call centers and their associated information from the Dialpad platform. This endpoint allows developers to fetch details about all call centers configured in the Dialpad account, including their settings, agent statuses, and operational metrics. It's particularly useful for applications that need to monitor or manage multiple call centers, analyze call center performance, or integrate call center data with other systems. The endpoint returns comprehensive data about each call center, which can be used for reporting, dashboard creation, or automating call center management tasks. Note that this endpoint provides a high-level overview of call centers and may not include granular details about individual calls or agents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                                                                                                                           |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response.                                                                                                                         |
| `office_id`   | integer |          | —       | search call center by office.                                                                                                                                                                                                         |
| `name_search` | string  |          | —       | search call centers by name or search by the substring of the name. If input example is "Cool", output example can be a list of call centers whose name contains the string "Cool" - \["Cool call center 1", "Cool call center 2049"] |

***

### `Dialpad Retrieve Call Information`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_INFORMATION**

Retrieves call information from the Dialpad system. This endpoint allows you to fetch details about one or more calls, which may include call duration, participants, timestamps, and other relevant metadata. It can be used to gather historical call data for analysis, reporting, or integration with other systems. The endpoint does not provide real-time call control or the ability to initiate new calls. Note that the specific details returned may vary based on user permissions and the scope of the API token used.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                   |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`         | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `target_id`      | string  |          | —       | The ID of a target to filter against. Example: "5047447224311808".                                            |
| `target_type`    | string  |          | —       | The target type associated with the target ID.                                                                |
| `started_after`  | integer |          | —       | Only includes calls that started more recently than the specified timestamp. (UTC ms-since-epoch timestamp)   |
| `started_before` | integer |          | —       | Only includes calls that started prior to the specified timestamp. (UTC ms-since-epoch timestamp)             |

***

### `Dialpad Retrieve Call Router By Id`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_ROUTER\_BY\_ID**

Retrieves detailed information about a specific call router in the Dialpad system. This endpoint allows developers to fetch the configuration and status of a call router by providing its unique identifier. Use this when you need to check the current settings, routing rules, or other properties of a particular call router. It's particularly useful for auditing your call routing setup or before making changes to an existing router. The endpoint returns read-only data and does not modify any settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                            |
| --------- | ------ | :------: | ------- | ------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The API call router"s ID. Example: "5047447224311808". |

***

### `Dialpad Retrieve Call Routers V2 Api`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_ROUTERS\_V2\_API**

Retrieves a list of call routers configured in the Dialpad system. This endpoint allows you to fetch information about the call routing setup in your Dialpad account, including details such as router identifiers, associated dedicated DIDs, and routing rules. It's particularly useful for auditing your current call routing configuration or gathering data for reporting purposes. The endpoint provides read-only access to call router information and does not allow modifications to the routing setup. Use this when you need to review your call routing structure or integrate call routing information into your applications for advanced call management or analytics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                   |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`    | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `office_id` | integer |          | —       | The office"s id.                                                                                              |

***

### `Dialpad Retrieve Call Subscription By Id`

Integration name: **DIALPAD\_RETRIEVE\_CALL\_SUBSCRIPTION\_BY\_ID**

Retrieves detailed information about a specific call subscription in the Dialpad system. This endpoint allows developers to access the current state and configuration of a call subscription, which is used for tracking and receiving notifications about call-related events. It's particularly useful for monitoring the status of automated workflows or integrations that depend on call data. The endpoint should be used when you need to check the details of a single, known call subscription, such as its activation status, associated phone numbers, or event types it's configured to track. It will not modify the subscription or return data about multiple subscriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                     |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Example: "5047447224311808". |

***

### `Dialpad Retrieve Channel By Id`

Integration name: **DIALPAD\_RETRIEVE\_CHANNEL\_BY\_ID**

Retrieves detailed information about a specific communication channel in the Dialpad platform using its unique identifier. This endpoint allows developers to fetch comprehensive data about a particular channel, which can include its type (e.g., voice, video, or messaging), current status, associated users or groups, and other relevant metadata. It is particularly useful when you need to access or verify the properties of a specific channel within your application. The endpoint should be used when detailed information about a known channel is required, such as during channel management tasks, reporting, or when integrating channel-specific features into your application. Note that this endpoint only provides information for a single channel at a time and does not support batch retrieval or listing of multiple channels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The channel id. Example: "5047447224311808". |

***

### `Dialpad Retrieve Coaching Stats V2`

Integration name: **DIALPAD\_RETRIEVE\_COACHING\_STATS\_V2**

The GetStatistics endpoint retrieves comprehensive statistics for various aspects of Dialpad usage, including calls, customer satisfaction (CSAT), dispositions, on-duty status, recordings, screen shares, texts, and voicemails. It offers flexible options for targeting specific users, groups, or offices, and allows for customized date ranges and aggregation methods. This endpoint is particularly useful for analyzing performance metrics, tracking customer satisfaction, and gaining insights into communication patterns within an organization. It supports both aggregated statistics and individual record retrieval, making it versatile for different analytical needs. However, users should note that certain stat types (like CSAT and dispositions) require specific targeting parameters and only support individual record retrieval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                                                                         |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_by`       | string  |          | —       | This param is only applicable when the stat\_type is specified as call. For call stats, group calls by user per day (default), get total metrics by day, or break down by department and call center (office only). |
| `is_today`       | boolean |          | —       | Whether or not the statistics are for the current day. NOTE: days\_ago\_start and days\_ago\_end are ignored if this is passed in.                                                                                  |
| `timezone`       | string  |          | —       | Timezone using a tz database name.                                                                                                                                                                                  |
| `office_id`      | integer |          | —       | ID of the office to get statistics for. If a target\_id and target\_type are passed in this value is ignored and instead the target is used. Example: "5047447224311808".                                           |
| `stat_type`      | string  |     ✅    | —       | The type of statistics to be returned. NOTE: if the value is "csat" or "dispositions", target\_id and target\_type must be specified.                                                                               |
| `target_id`      | integer |          | —       | The target"s id. Example: "5047447224311808".                                                                                                                                                                       |
| `export_type`    | string  |     ✅    | —       | Whether to return aggregated statistics (stats), or individual rows for each record (records). NOTE: For stat\_type "csat" or "dispositions", only "records" is supported.                                          |
| `target_type`    | string  |          | —       | Target"s type.                                                                                                                                                                                                      |
| `days_ago_end`   | integer |          | —       | End of the date range to get statistics for. This is the number of days to look back relative to the current day. Used in conjunction with days\_ago\_start to specify a range.                                     |
| `coaching_team`  | boolean |          | —       | Whether or not the the statistics should be for trainees of the coach team with the given target\_id.                                                                                                               |
| `coaching_group` | boolean |          | —       | Whether or not the the statistics should be for trainees of the coach group with the given target\_id.                                                                                                              |
| `days_ago_start` | integer |          | —       | Start of the date range to get statistics for. This is the number of days to look back relative to the current day. Used in conjunction with days\_ago\_end to specify a range.                                     |

***

### `Dialpad Retrieve Coaching Team By Id`

Integration name: **DIALPAD\_RETRIEVE\_COACHING\_TEAM\_BY\_ID**

Retrieves detailed information about a specific coaching team in Dialpad. This endpoint allows users to fetch comprehensive data about a coaching team, including its configuration, members (coaches and trainees), settings, and potentially performance metrics. It should be used when detailed information about a particular coaching team is needed, such as for displaying team details, verifying settings, or analyzing team performance. The endpoint provides a snapshot of the coaching team's current state and does not modify any data. It's particularly useful for managers or administrators who need to review or audit coaching team setups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                           |
| --------- | ------ | :------: | ------- | ----------------------------------------------------- |
| `id`      | string |     ✅    | —       | Id of the coaching team. Example: "5047447224311808". |

***

### `Dialpad Retrieve Coaching Teams Information`

Integration name: **DIALPAD\_RETRIEVE\_COACHING\_TEAMS\_INFORMATION**

Retrieves information about coaching teams in the Dialpad platform. This endpoint allows users to fetch details about existing coaching teams, which are essential for managing call monitoring, feedback, and agent performance improvement. It provides an overview of team structures, including coaches, trainees, and associated settings. The endpoint is useful for administrators and managers who need to review or manage coaching team configurations across the organization. Note that while this endpoint retrieves team information, it does not modify any team settings or structures.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve Company Data`

Integration name: **DIALPAD\_RETRIEVE\_COMPANY\_DATA**

Retrieves detailed information about a specific company within the Dialpad platform. This endpoint allows developers to access various company-level data, such as company name, settings, and other relevant details. It should be used when an application needs to fetch or display company information, update local records, or verify company-specific configurations. The endpoint provides a comprehensive view of a company's profile in Dialpad but does not modify any data. Note that the specific fields returned may depend on the user's permissions and the company's privacy settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dialpad Retrieve Conference Meetings`

Integration name: **DIALPAD\_RETRIEVE\_CONFERENCE\_MEETINGS**

Retrieves information about conference meetings in the Dialpad platform. This endpoint allows users to fetch details about scheduled, ongoing, or past conference meetings, providing valuable data for managing and analyzing virtual collaboration sessions. It can be used to obtain an overview of meeting activities, track usage patterns, or gather information for reporting purposes. The endpoint is particularly useful for administrators or team leaders who need to monitor conference usage across their organization. Note that while this endpoint retrieves meeting data, it does not provide real-time control over active meetings or allow for meeting creation or modification.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `room_id` | string |          | —       | The meeting room"s ID.                                                                                        |

***

### `Dialpad Retrieve Contact By Id`

Integration name: **DIALPAD\_RETRIEVE\_CONTACT\_BY\_ID**

Retrieves detailed information for a specific contact in your Dialpad account using the contact's unique identifier. This endpoint allows you to fetch comprehensive data about a single contact, including their name, phone numbers, email addresses, and any custom fields associated with the contact. Use this when you need to access or display detailed information about a particular contact in your application. The endpoint is useful for scenarios such as populating contact details in a CRM integration or displaying contact information during an active call. Note that this endpoint only retrieves information for one contact at a time and does not support batch retrieval or searching across multiple contacts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description       |
| --------- | ------ | :------: | ------- | ----------------- |
| `id`      | string |     ✅    | —       | The contact"s id. |

***

### `Dialpad Retrieve Contact List`

Integration name: **DIALPAD\_RETRIEVE\_CONTACT\_LIST**

Retrieves a list of contacts from the Dialpad platform. This endpoint allows you to fetch contact information, which is crucial for managing user data and communication records within your Dialpad-integrated application. It supports pagination, searching, and sorting to efficiently handle large contact lists. Use this endpoint when you need to access or display contact information, sync contacts with other systems, or perform contact-related operations in your application. The endpoint returns basic contact details, but may not include sensitive information or full communication history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                                   |
| --------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`        | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `owner_id`      | string  |          | —       | The id of the user who owns the contact.                                                                      |
| `include_local` | boolean |          | —       | If set to True company local contacts will be included. default False.                                        |

***

### `Dialpad Retrieve Department By Id`

Integration name: **DIALPAD\_RETRIEVE\_DEPARTMENT\_BY\_ID**

Retrieves detailed information about a specific department within the Dialpad organization. This endpoint allows you to fetch comprehensive data about a department, including its name, description, member count, and other relevant attributes. Use this endpoint when you need to access or display information about a particular department, such as for department management interfaces or generating reports. The endpoint returns the most up-to-date information available for the specified department. Note that this endpoint only provides read access to department data and cannot be used to modify department information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------ |
| `id`      | string |     ✅    | —       | The department"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve Department Operators By Id`

Integration name: **DIALPAD\_RETRIEVE\_DEPARTMENT\_OPERATORS\_BY\_ID**

Retrieves a list of operators associated with a specific department in Dialpad. This endpoint allows you to fetch detailed information about the operators assigned to a particular department, enabling efficient management of department resources and personnel. Use this endpoint when you need to review, audit, or manage the operators within a specific department. The response likely includes operator details such as names, contact information, and roles. Note that this endpoint does not modify any department or operator data; it is for retrieval purposes only. It's particularly useful for administrative tasks, reporting, and ensuring proper staffing across departments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------ |
| `id`      | string |     ✅    | —       | The department"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve E911 Office Details`

Integration name: **DIALPAD\_RETRIEVE\_E911\_OFFICE\_DETAILS**

Retrieves the Enhanced 911 (E911) settings for a specific office within the Dialpad communication platform. This endpoint allows administrators to fetch crucial emergency service configuration details associated with a particular office location. It should be used when auditing or verifying E911 compliance, updating emergency response information, or integrating office-specific emergency settings into external systems. The endpoint provides read-only access to E911 data and does not allow modifications. It's important to note that this tool only retrieves settings for a single office at a time and does not provide aggregate data across multiple offices.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve List Of Departments`

Integration name: **DIALPAD\_RETRIEVE\_LIST\_OF\_DEPARTMENTS**

Retrieves a list of departments for a specified office within the Dialpad organization. This endpoint is essential for obtaining the organizational structure and can be used to populate department selectors, generate reports, or manage team assignments. It returns basic information about each department, such as its name, ID, and possibly the number of members. The endpoint should be used when needing an up-to-date view of the departmental structure within an office. It does not provide detailed information about individual department members or historical data about department changes. Pagination parameters may be necessary for offices with a large number of departments to manage response sizes and API performance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                                                                                                                      |
| ------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response.                                                                                                                    |
| `office_id`   | integer |          | —       | filter departments by office.                                                                                                                                                                                                    |
| `name_search` | string  |          | —       | search departments by name or search by the substring of the name. If input example is "Happy", output example can be a list of departments whose name contains the string Happy - \["Happy department 1", "Happy department 2"] |

***

### `Dialpad Retrieve Members Of Coaching Team By Id`

Integration name: **DIALPAD\_RETRIEVE\_MEMBERS\_OF\_COACHING\_TEAM\_BY\_ID**

Retrieves a list of members belonging to a specific coaching team in Dialpad. This endpoint allows you to fetch all users assigned to a particular coaching team, including both coaches and trainees. It's useful for getting an overview of team composition, managing team members, or integrating team information into other systems. The endpoint returns member details, which may include user IDs, names, roles, and other relevant information. Use this when you need to review or analyze the current membership of a coaching team, or when syncing team data with external applications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                          |
| --------- | ------ | :------: | ------- | ---------------------------------------------------- |
| `id`      | string |     ✅    | —       | Id of the coaching team. Example: "123456789012345". |

***

### `Dialpad Retrieve Numbers Via Api V2`

Integration name: **DIALPAD\_RETRIEVE\_NUMBERS\_VIA\_API\_V2**

Retrieves a list of phone numbers associated with the user's Dialpad account. This endpoint allows users to view all the phone numbers they have access to, which may include both assigned and unassigned numbers. It's useful for inventory management, number allocation, and auditing purposes. The endpoint returns basic information about each number, such as its value, status, and associated user or department. It does not modify any data and is safe for frequent polling. Note that the response may be paginated for large number inventories, and additional calls may be needed to retrieve the full list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `status`  | string |          | —       | Status to filter by.                                                                                          |

***

### `Dialpad Retrieve Off Duty Status By Office Id`

Integration name: **DIALPAD\_RETRIEVE\_OFF\_DUTY\_STATUS\_BY\_OFFICE\_ID**

Retrieves the list of custom off-duty statuses for a specific office within the Dialpad system. This endpoint is used to fetch and manage the availability statuses of agents assigned to a particular office. It provides administrators and supervisors with insights into why agents might be stepping away from their desks, helping to track and understand agent activity. The endpoint should be used when there's a need to review, update, or manage the off-duty status options for a given office. It's particularly useful for larger organizations with multiple offices that may have different sets of off-duty statuses. Note that this endpoint only retrieves the statuses and does not provide real-time information about which agents are currently using each status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve Office By Id`

Integration name: **DIALPAD\_RETRIEVE\_OFFICE\_BY\_ID**

Retrieves detailed information about a specific office within the Dialpad system. This endpoint should be used when you need to access comprehensive data about a particular office, such as its name, location, assigned users, or custom settings. It's particularly useful for administrative tasks, reporting, or displaying office information in integrated applications. The endpoint returns all available details for the specified office, making it efficient for obtaining a complete office profile in a single API call. However, it does not allow for modifying office information or retrieving data for multiple offices simultaneously.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve Office Plan By Id`

Integration name: **DIALPAD\_RETRIEVE\_OFFICE\_PLAN\_BY\_ID**

Retrieves the current plan details for a specific office in your Dialpad organization. This endpoint allows you to fetch information about the subscribed features, limitations, and other plan-specific details for a given office. Use this endpoint when you need to review or verify the current plan status of an office, such as during account management or when considering plan upgrades. The response will likely include details such as the plan name, included features, user limits, and any custom configurations. Note that this endpoint only provides read-only access to plan information and cannot be used to modify or update the office plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                  |
| ----------- | ------ | :------: | ------- | -------------------------------------------- |
| `office_id` | string |     ✅    | —       | The office"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve Operator Duty Status`

Integration name: **DIALPAD\_RETRIEVE\_OPERATOR\_DUTY\_STATUS**

Retrieves the current duty status of a specific call center operator in Dialpad. This endpoint allows you to check whether an operator is Active (available to receive inbound calls) or Off-Duty (not available for calls). Use this endpoint when you need to determine an operator's availability in real-time, such as for load balancing, scheduling, or monitoring operator activity. The endpoint provides a snapshot of the operator's current status and does not include historical data or future scheduled statuses. It's particularly useful for systems that need to make routing decisions based on operator availability or for creating dashboards that display team capacity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                         |
| --------- | ------ | :------: | ------- | --------------------------------------------------- |
| `id`      | string |     ✅    | —       | The operator"s user id. Example: "123456789012345". |

***

### `Dialpad Retrieve Room Information By Id`

Integration name: **DIALPAD\_RETRIEVE\_ROOM\_INFORMATION\_BY\_ID**

Retrieves detailed information about a specific room in the Dialpad system. This endpoint allows you to fetch the current state, settings, and properties of a virtual collaboration space identified by its unique ID. Use this when you need to access up-to-date information about a particular room, such as its name, participants, or configuration. The endpoint is particularly useful for applications that need to display room details or make decisions based on a room's current status. Note that this endpoint only provides information and does not modify the room in any way.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                |
| --------- | ------ | :------: | ------- | ------------------------------------------ |
| `id`      | string |     ✅    | —       | The room"s id. Example: "123456789012345". |

***

### `Dialpad Retrieve Schedule Report By Id`

Integration name: **DIALPAD\_RETRIEVE\_SCHEDULE\_REPORT\_BY\_ID**

Retrieves detailed information about a specific scheduled report in the Dialpad system. This endpoint allows you to fetch the configuration and metadata of a pre-defined report, which may include communication metrics, analytics, or other relevant data aggregated from Dialpad's communication platform. Use this endpoint when you need to access or review the settings of a particular scheduled report, such as its frequency, included data points, or last run time. It's particularly useful for auditing report configurations or preparing to update existing reports. Note that this endpoint only retrieves the report configuration, not the actual report data itself. To get the latest generated report content, you may need to use a separate endpoint or check if this response includes a link to the most recent report output.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                         |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The schedule reports subscription"s ID. Example: "123456789012345". |

***

### `Dialpad Retrieve Sms Opt Out By Company Id`

Integration name: **DIALPAD\_RETRIEVE\_SMS\_OPT\_OUT\_BY\_COMPANY\_ID**

Retrieves the SMS opt-out list for a specific company within the Dialpad platform. This endpoint allows you to fetch all phone numbers that have opted out of receiving SMS messages from the specified company. Use this endpoint when you need to check which recipients have unsubscribed from SMS communications, ensuring compliance with messaging regulations and user preferences. The returned list can be used to update your contact database or messaging system to prevent sending unwanted messages. Note that this endpoint only provides the opt-out information and does not modify the opt-out status of any recipients.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                                              |
| ----------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`              | string |     ✅    | —       | ID of the requested company. This is required and must be specified in the URL path. The value must match the id from the company linked to the API key.                                 |
| `cursor`          | string |          | —       | Optional token used to return the next page of a previous request. Use the cursor provided in the previous response.                                                                     |
| `opt_out_state`   | string |     ✅    | —       | Required opt-out state to filter results by. Only results matching this state will be returned.                                                                                          |
| `a2p_campaign_id` | string |          | —       | Optional company A2P campaign entity id to filter results by. Note, if set, then the parameter "opt\_out\_state" must be also set to the value "opted\_out". Example: "123456789012345". |

***

### `Dialpad Retrieve Sms Subscription By Id`

Integration name: **DIALPAD\_RETRIEVE\_SMS\_SUBSCRIPTION\_BY\_ID**

Retrieves detailed information about a specific SMS subscription in Dialpad. This endpoint allows developers to fetch the current status, configuration, and other relevant details of an SMS subscription by providing its unique identifier. Use this endpoint when you need to check the properties of an existing SMS subscription, such as its active status, associated phone number, or any custom settings. It's particularly useful for managing and monitoring SMS capabilities within your Dialpad integration. Note that this endpoint only provides read access to subscription data and cannot be used to modify or create new subscriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                 |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Provided as string to avoid JS Number precision loss (IDs may exceed 2^53). Example: "1234567890123456". |

***

### `Dialpad Retrieve Sms Subscriptions`

Integration name: **DIALPAD\_RETRIEVE\_SMS\_SUBSCRIPTIONS**

Retrieves a list of SMS subscriptions associated with the authenticated user's Dialpad account. This endpoint allows users to view and manage their current SMS subscription plans and settings. It should be used when you need to obtain information about active SMS subscriptions, such as subscription status, plan details, or associated phone numbers. The endpoint provides an overview of SMS-related services but does not allow for modification of subscriptions. Note that this endpoint may have pagination for large numbers of subscriptions, and additional calls might be necessary to retrieve the complete list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                   |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`      | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `target_id`   | string |          | —       | The target"s id. Provided as string to avoid JS Number precision loss (IDs may exceed 2^53).                  |
| `target_type` | string |          | —       | Target"s type.                                                                                                |

***

### `Dialpad Retrieve Specific Webhook By Id`

Integration name: **DIALPAD\_RETRIEVE\_SPECIFIC\_WEBHOOK\_BY\_ID**

Retrieves detailed information about a specific webhook configuration in the Dialpad system. This endpoint allows developers to fetch the current status, settings, and event subscriptions for a particular webhook identified by its unique ID. Use this endpoint when you need to check the configuration of an existing webhook, verify its status, or retrieve its associated event types. It's particularly useful for troubleshooting webhook-related issues or auditing webhook configurations. The endpoint returns comprehensive data about the webhook, including its target URL, subscribed events, and any custom headers or authentication settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                             |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The webhook"s ID, which is generated after creating a webhook successfully. Provided as string to avoid JS Number precision loss (IDs may exceed 2^53). |

***

### `Dialpad Retrieve Stat By Id`

Integration name: **DIALPAD\_RETRIEVE\_STAT\_BY\_ID**

Retrieves detailed statistics and analytics data for a specific entity within the Dialpad platform. This endpoint allows you to access performance metrics, communication data, and other relevant statistics for a user, team, or call center identified by the provided ID. Use this endpoint when you need to analyze the performance or usage patterns of a particular entity within your Dialpad organization. The data returned may include call volumes, average call durations, customer satisfaction scores, and other communication metrics. Note that the specific metrics available may vary depending on the type of entity (user, team, or call center) and your organization's settings. This endpoint is particularly useful for generating reports, monitoring performance, and making data-driven decisions to improve communication efficiency and effectiveness.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------- |
| `id`      | string |     ✅    | —       | Request ID returned by a POST /stats request. |

***

### `Dialpad Retrieve Subscription Change Log`

Integration name: **DIALPAD\_RETRIEVE\_SUBSCRIPTION\_CHANGE\_LOG**

Retrieves the changelog for Dialpad API subscriptions. This endpoint provides a historical record of changes and updates made to subscription events and notifications within the Dialpad system. It's useful for tracking modifications to webhooks, event subscriptions, and other notification-related configurations over time. The changelog can help developers understand when and how subscription settings have been altered, aiding in troubleshooting and maintaining up-to-date integrations. Note that while the endpoint doesn't appear to require specific parameters, it may support optional query parameters for filtering or pagination, which are not visible in the provided schema.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve Subscription Change Log By Id`

Integration name: **DIALPAD\_RETRIEVE\_SUBSCRIPTION\_CHANGE\_LOG\_BY\_ID**

Retrieves the changelog for a specific subscription in the Dialpad system. This endpoint allows you to access a historical record of changes made to a particular subscription, including updates, modifications, or status changes. It is useful for auditing purposes, troubleshooting issues, or tracking the evolution of a subscription over time. The endpoint returns a chronological list of changes, likely including details such as the date of change, type of change, and any relevant metadata. Note that this endpoint only provides changelog information and does not allow for modifying the subscription itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                    |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully. Provided as string to avoid JS Number precision loss (IDs may exceed 2^53). |

***

### `Dialpad Retrieve Subscription Contacts`

Integration name: **DIALPAD\_RETRIEVE\_SUBSCRIPTION\_CONTACTS**

Retrieves subscription information for contacts in the Dialpad system. This endpoint allows you to fetch details about contact event subscriptions, which are crucial for receiving real-time notifications about contact-related events such as updates, calls, or SMS activities. Use this endpoint when you need to monitor or manage the current contact subscriptions in your Dialpad integration. It provides a comprehensive view of all active contact subscriptions, enabling you to track which contact events you're currently listening to. Note that this endpoint likely returns all contact subscriptions associated with your account, and may not support filtering or pagination in the request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Retrieve Teams For Office Id`

Integration name: **DIALPAD\_RETRIEVE\_TEAMS\_FOR\_OFFICE\_ID**

Retrieves a list of teams associated with a specific office in the Dialpad organization. This endpoint is useful for getting an overview of the team structure within a particular office, which can be valuable for administrative tasks, reporting, or integrating Dialpad's organizational structure with other systems. It should be used when you need to obtain information about multiple teams within a single office context. The endpoint will not provide detailed information about individual team members or their communications; it focuses solely on team-level data within the specified office.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                   |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`    | string  |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `office_id` | integer |     ✅    | —       | The office"s id.                                                                                              |

***

### `Dialpad Retrieve User Device By Id`

Integration name: **DIALPAD\_RETRIEVE\_USER\_DEVICE\_BY\_ID**

Retrieves detailed information about a specific user device associated with a Dialpad account. This endpoint allows developers to fetch the current state and configuration of a particular device by providing its unique identifier. Use this when you need to access up-to-date information about a user's device, such as its type, status, or associated settings. The endpoint is particularly useful for device management, troubleshooting, or syncing device information across integrated systems. Note that this endpoint only provides read access to device data and cannot be used to modify device settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description      |
| --------- | ------ | :------: | ------- | ---------------- |
| `id`      | string |     ✅    | —       | The device"s id. |

***

### `Dialpad Retrieve User Devices List`

Integration name: **DIALPAD\_RETRIEVE\_USER\_DEVICES\_LIST**

Retrieves a list of devices associated with users in the Dialpad system. This endpoint allows you to fetch information about various communication devices used within your Dialpad organization, such as desk phones, softphones, or mobile devices. Use this endpoint when you need to inventory or manage the devices connected to user accounts, track device usage, or troubleshoot device-related issues. The response likely includes details such as device type, status, associated user, and device-specific information. This tool is particularly useful for administrators managing a large number of devices across their organization or for integrating device information into custom dashboards or management systems. Note that while the endpoint doesn't specify any parameters, it may support query parameters for filtering results, such as by user ID or device type. The exact structure of the response and any available filters would need to be confirmed in the full API documentation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |
| `user_id` | string |          | —       | The user"s id. ("me" can be used if you are using a user level API key)                                       |

***

### `Dialpad Retrieve User Personas By Id`

Integration name: **DIALPAD\_RETRIEVE\_USER\_PERSONAS\_BY\_ID**

Retrieves all personas associated with a specific user in the Dialpad system. This endpoint allows you to fetch the various identities or roles that a user can assume when making calls, providing detailed information about each persona. Use this endpoint when you need to display or manage the different caller identities available to a user. The response will include a list of persona objects, each containing information such as the persona name, phone number, and any associated metadata. This endpoint is particularly useful for applications that need to offer users a choice of outbound caller identities or for administrative purposes to review a user's available personas.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                             |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |

***

### `Dialpad Retrieve Websocket By Id`

Integration name: **DIALPAD\_RETRIEVE\_WEBSOCKET\_BY\_ID**

Retrieves detailed information about a specific WebSocket connection using its unique identifier. This endpoint allows developers to query the status, metadata, and other relevant details of an active or recent WebSocket connection in the Dialpad system. It's particularly useful for monitoring real-time event subscriptions, troubleshooting connection issues, or auditing WebSocket usage. The endpoint should be used when you need to inspect or verify the state of a particular WebSocket connection, such as checking if it's still active or retrieving its configuration. Note that this endpoint provides information about the connection itself and may not include the actual event data being transmitted through the WebSocket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                 |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The websocket"s ID, which is generated after creating a websocket successfully. Provided as string to avoid JS Number precision loss (IDs may exceed 2^53). |

***

### `Dialpad Retrieve Websocket Connection`

Integration name: **DIALPAD\_RETRIEVE\_WEBSOCKET\_CONNECTION**

Retrieves information about WebSocket connections or initiates a WebSocket connection for real-time event subscriptions with Dialpad. This endpoint is essential for applications that require live updates and real-time communication capabilities within the Dialpad platform. It enables developers to establish a persistent connection for receiving instant notifications about various events such as calls, SMS, contacts, agent status, and system changes. Use this endpoint when building applications that need to react immediately to Dialpad events or maintain a live data stream. Note that while this endpoint provides the WebSocket connection details, you may need to implement the WebSocket client separately to handle the actual connection and data exchange.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | —       | A token used to return the next page of a previous request. Use the cursor provided in the previous response. |

***

### `Dialpad Send Sms With Optional Media And Group Sender`

Integration name: **DIALPAD\_SEND\_SMS\_WITH\_OPTIONAL\_MEDIA\_AND\_GROUP\_SENDER**

The SendSMS endpoint allows you to send SMS or MMS messages through the Dialpad platform to one or multiple recipients. This versatile tool supports various sender identification methods, group messaging, and media attachments. Use it to programmatically send text or multimedia messages, integrate with Dialpad channels, and leverage organizational structures for messaging. The endpoint is particularly useful for automating communication workflows, sending notifications, or implementing messaging features within applications integrated with Dialpad. Note that while the endpoint offers flexibility in number formatting and sender identification, proper authorization and adherence to messaging regulations are assumed to be handled separately.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                                                              |
| -------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `text`               | string  |          | —       | The contents of the message that should be sent.                                                                                         |
| `media`              | string  |          | —       | Base64-encoded media attachment (will cause the message to be sent as MMS).                                                              |
| `user_id`            | integer |          | —       | The ID of the user who should be the sender of the SMS.                                                                                  |
| `to_numbers`         | array   |          | —       | Up to 10 E164-formatted phone numbers who should receive the SMS.                                                                        |
| `from_number`        | string  |          | —       | The number of who sending the SMS. The number must be assigned to user or a user group. It will override user\_id and sender\_group\_id. |
| `channel_hashtag`    | string  |          | —       | \[single-line only] The hashtag of the channel which should receive the SMS.                                                             |
| `sender_group_id`    | integer |          | —       | The ID of an office, department, or call center that the User should send the message on behalf of.                                      |
| `sender_group_type`  | string  |          | —       | The sender group"s type (i.e. office, department, or callcenter).                                                                        |
| `infer_country_code` | boolean |          | —       | If true, to\_numbers will be assumed to be from the specified user"s country, and the E164 format requirement will be relaxed.           |

***

### `Dialpad Set User Caller Id By Id`

Integration name: **DIALPAD\_SET\_USER\_CALLER\_ID\_BY\_ID**

Sets or blocks the Caller ID for a specific Dialpad user. This endpoint allows you to define the phone number that will be displayed when the user makes outgoing calls, or to block the Caller ID entirely. Use this when you need to customize how a user's calls appear to recipients or to ensure privacy by blocking the Caller ID. The endpoint is particularly useful for managing professional appearances in business communications or for compliance with privacy regulations. Note that this setting affects all outgoing calls made by the user through the Dialpad platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                             |
| ----------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `id`        | string |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)                                                 |
| `caller_id` | string |     ✅    | —       | Phone number (e164 formatted) that will be defined as a Caller ID for the target. Use "blocked" to block the Caller ID. |

***

### `Dialpad Subscribe Contact Event`

Integration name: **DIALPAD\_SUBSCRIBE\_CONTACT\_EVENT**

Creates a new contact event subscription in the Dialpad platform, allowing you to receive real-time updates about changes to contacts. This endpoint enables you to subscribe to events for either local (personal) or shared (organization-wide) contacts. Use this when you need to integrate contact management functionalities or automate workflows based on contact updates in your Dialpad-connected application. The subscription can be linked to a specific logging endpoint (webhook or websocket) for event delivery and can be enabled or disabled upon creation. Note that you must have previously set up a logging endpoint to receive the events if you specify an endpoint\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                       |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------- |
| `enabled`      | boolean |          | —       | Whether or not the contact event subscription is enabled.                                         |
| `endpoint_id`  | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. |
| `contact_type` | string  |     ✅    | —       | The contact type this event subscription subscribes to.                                           |

***

### `Dialpad Toggle User Do Not Disturb Status`

Integration name: **DIALPAD\_TOGGLE\_USER\_DO\_NOT\_DISTURB\_STATUS**

The ToggleUserDoNotDisturb endpoint allows you to update the Do Not Disturb (DND) status for a specific user in the Dialpad system. This powerful feature enables programmatic control over a user's availability, helping to manage notifications and improve focus time. The endpoint can be used to enable or disable DND for an individual user, and optionally within the context of a specific group (such as a call center, department, or office). This granular control makes it ideal for implementing custom availability management solutions or integrating with external scheduling systems. Keep in mind that changing a user's DND status may affect their ability to receive incoming communications, so use this endpoint judiciously and in accordance with your organization's communication policies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                             |
| ---------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`             | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |
| `group_id`       | integer |          | —       | The ID of the group which the user"s DND status will be updated for.    |
| `group_type`     | string  |          | —       | The type of the group which the user"s DND status will be updated for.  |
| `do_not_disturb` | boolean |     ✅    | —       | Determines if DND is ON or OFF.                                         |

***

### `Dialpad Toggle Vi Call For User By Id`

Integration name: **DIALPAD\_TOGGLE\_VI\_CALL\_FOR\_USER\_BY\_ID**

Toggles the Voice Intelligence (VI) feature for a specific Dialpad user. This endpoint allows administrators to enable or disable VI capabilities for individual users, which includes features like real-time transcription, sentiment analysis, and smart notes during calls. Use this endpoint when you need to manage VI access on a per-user basis, such as when onboarding new team members or adjusting feature access based on user roles or requirements. The endpoint requires the user's ID in the URL path and accepts a boolean parameter to set the VI status. Note that this operation may affect billing or feature availability for the specified user, so it should be used judiciously and in accordance with your organization's policies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                             |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`        | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |
| `enable_vi` | boolean |          | —       | Whether or not call vi should be enabled.                               |

***

### `Dialpad Transfer Call To Destination`

Integration name: **DIALPAD\_TRANSFER\_CALL\_TO\_DESTINATION**

Transfers an active call within the Dialpad system to a new destination. This endpoint allows for flexible call routing by enabling transfers to another ongoing call, a specific phone number, or a predefined target within the Dialpad ecosystem (such as a call center, department, office, or user). It provides options to specify the transfer state and attach custom data to the call. Use this endpoint when you need to programmatically redirect an ongoing call, implement call forwarding logic, or integrate Dialpad's call transfer functionality into your application's workflow. Note that the success of the transfer may depend on the availability and settings of the destination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                             |
| ---------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `id`             | string |     ✅    | —       | The call"s id.                                                                                                          |
| `to`             | object |          | —       | Destination of the call that will be transfer. It can be a single option between a number, an existing call or a target |
| `custom_data`    | string |          | —       | Extra data to associate with the call. This will be passed through to any subscribed call events.                       |
| `transfer_state` | string |          | —       | The state which the call should take when it"s transferred to.                                                          |

***

### `Dialpad Unassign Access Control Policy From User`

Integration name: **DIALPAD\_UNASSIGN\_ACCESS\_CONTROL\_POLICY\_FROM\_USER**

This endpoint unassigns a user from a specific access control policy in Dialpad. It allows for granular control over policy assignments by supporting unassignment at different target levels (company, office, or call center). The endpoint can be used to remove a user's access to specific settings or features defined by the policy. It's particularly useful when modifying user permissions or during role changes within the organization. The endpoint provides flexibility in unassigning from a single target or all associated targets simultaneously.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                                         |
| -------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`           | integer |     ✅    | —       | The access control policy"s id.                                                                                                                     |
| `user_id`      | integer |     ✅    | —       | The user"s id to be assigned to the policy.                                                                                                         |
| `target_id`    | integer |          | —       | Required if the policy is associated with a target (Office or Contact Center). Not required for a company level policy or if unassign\_all is True. |
| `target_type`  | string  |          | —       | Policy permissions applied at this target level. Defaults to company target type.                                                                   |
| `unassign_all` | boolean |          | —       | Unassign all associated target groups from the user for a policy.                                                                                   |

***

### `Dialpad Unassign Office Number`

Integration name: **DIALPAD\_UNASSIGN\_OFFICE\_NUMBER**

This endpoint unassigns a specific phone number from a Dialpad office. It is used to remove the association between a phone number and an office, which can be helpful for reorganizing phone number allocations or preparing a number for reassignment. The endpoint should be used when an administrator needs to free up a phone number from its current office assignment. It's important to note that this action only unassigns the number from the office and does not delete the number from the Dialpad account. After unassignment, the number becomes available for reassignment to other offices or users within the organization. Ensure that unassigning a number won't disrupt ongoing communications or routing rules associated with that number.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The office"s id.                             |
| `number`  | string |     ✅    | —       | A phone number to unassign. (e164-formatted) |

***

### `Dialpad Unassign Room Phone Number`

Integration name: **DIALPAD\_UNASSIGN\_ROOM\_PHONE\_NUMBER**

This endpoint unassigns a phone number from a specific room in the Dialpad system. It allows you to remove a previously assigned phone number from a room, freeing it up for potential reassignment or to adjust room configurations. Use this when you need to change the phone number associated with a room or when decommissioning a room's phone capabilities. The operation is irreversible, so ensure you want to remove the number before making the API call. Note that this endpoint doesn't provide information about the success of the operation or the current state of the room after unassignment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `id`      | string |     ✅    | —       | The room"s id.                               |
| `number`  | string |     ✅    | —       | A phone number to unassign. (e164-formatted) |

***

### `Dialpad Unassign User Phone Number`

Integration name: **DIALPAD\_UNASSIGN\_USER\_PHONE\_NUMBER**

Unassigns a specified phone number from a user's Dialpad account. This endpoint should be used when you need to remove a phone number association from a particular user, such as when an employee changes roles or leaves the organization. It allows for efficient management of phone number resources within your Dialpad system. The operation is irreversible, so ensure that you want to remove the number from the user before making the API call. Note that this endpoint only unassigns the number; it does not delete the number from your Dialpad account or make it available for immediate reassignment to another user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                             |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |
| `number`  | string  |     ✅    | —       | A phone number to unassign. (e164-formatted)                            |

***

### `Dialpad Unpark Call By User Id`

Integration name: **DIALPAD\_UNPARK\_CALL\_BY\_USER\_ID**

Unparks a previously parked call in the Dialpad system. This endpoint allows you to retrieve a call that was temporarily placed on hold (parked) and assign it to a specific user for handling. It's particularly useful in call center or team environments where calls may need to be transferred or picked up by different team members. The endpoint should be used when a parked call needs to be reactivated and connected to a user. It's important to note that this action may affect call routing and should be used judiciously to ensure proper call flow management.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                    |
| --------- | ------- | :------: | ------- | ---------------------------------------------- |
| `id`      | string  |     ✅    | —       | The call"s id.                                 |
| `user_id` | integer |     ✅    | —       | The id of the user who should unpark the call. |

***

### `Dialpad Update Call Center Settings By Id`

Integration name: **DIALPAD\_UPDATE\_CALL\_CENTER\_SETTINGS\_BY\_ID**

Updates the configuration of an existing call center in the Dialpad platform. This endpoint allows for comprehensive modifications to call center settings, including operational hours, routing strategies, hold queue management, alerts, and advanced features like auto call recording and voice intelligence. It's particularly useful for adjusting call center operations to meet changing business needs or to optimize performance based on analytics. The endpoint provides granular control over various aspects of call center management, enabling customization of everything from service level alerts to DTMF menu options for both open and closed states. When using this endpoint, carefully consider the interdependencies between different settings to ensure a cohesive call center configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                                 | Type    | Required | Example | Description                                                                                                                                                                                              |
| --------------------------------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                                      | integer |     ✅    | —       | The call center"s id.                                                                                                                                                                                    |
| `name`                                                    | string  |          | —       | \[single-line only] The name of the call center. Max 100 characters.                                                                                                                                     |
| `hours_on`                                                | boolean |          | —       | The time frame when the call center wants to receive calls. Default value is false, which means the call center will always take calls (24/7).                                                           |
| `friday_hours`                                            | array   |          | —       | The Friday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                     |
| `monday_hours`                                            | array   |          | —       | The Monday hours of operation. To specify when hours\_on is set to True. e.g. \["08:00", "12:00", "14:00", "18:00"] => open from 8AM to Noon, and from 2PM to 6PM. Default value is \["08:00", "18:00"]. |
| `ring_seconds`                                            | integer |          | —       | The number of seconds to allow the group line to ring before going to voicemail. Choose from 10 seconds to 45 seconds. Default is 30 seconds.                                                            |
| `sunday_hours`                                            | array   |          | —       | The Sunday hours of operation. Default is empty array.                                                                                                                                                   |
| `tuesday_hours`                                           | array   |          | —       | The Tuesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                    |
| `saturday_hours`                                          | array   |          | —       | The Saturday hours of operation. Default is empty array.                                                                                                                                                 |
| `thursday_hours`                                          | array   |          | —       | The Thursday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                   |
| `wednesday_hours`                                         | array   |          | —       | The Wednesday hours of operation. Default value is \["08:00", "18:00"].                                                                                                                                  |
| `group_description`                                       | string  |          | —       | The description of the call center. Max 256 characters.                                                                                                                                                  |
| `alerts__cc__service__level`                              | integer |          | —       | Alert supervisors when the service level drops below how many percent. Default is 95%.                                                                                                                   |
| `routing__options__open__dtmf`                            | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `hold__queue__max__hold__count`                           | integer |          | —       | If all operators are busy on other calls, send callers to a hold queue. This is to specify your queue size. Choose from 1-1000. Default is 50.                                                           |
| `hold__queue__unattended__queue`                          | boolean |          | —       | Whether or not to allow callers to be placed in your hold queue when no agents are available. Default is False.                                                                                          |
| `routing__options__closed__dtmf`                          | array   |          | —       | DTMF menu options.                                                                                                                                                                                       |
| `routing__options__open__action`                          | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `hold__queue__announce__position`                         | boolean |          | —       | Whether or not to let callers know their place in the queue. This option is not available when a maximum queue wait time of less than 2 minutes is selected. Default is True.                            |
| `hold__queue__max__hold__seconds`                         | integer |          | —       | Maximum queue wait time in seconds. Choose from 30s to 18000s (3 hours). Default is 900s (15 min).                                                                                                       |
| `hold__queue__queue__escape__dtmf`                        | string  |          | —       | Allow callers to exit the hold queue to voicemail by pressing one of the followings: \[0,1,2,3,4,5,6,7,8,9,\*,#]. Default is \*.                                                                         |
| `routing__options__closed__action`                        | string  |          | —       | The action that should be taken if no operators are available.                                                                                                                                           |
| `voice__intelligence__auto__start`                        | boolean |          | —       | Auto start Vi for this call center. Default is True.                                                                                                                                                     |
| `voice__intelligence__allow__pause`                       | boolean |          | —       | Allow individual users to start and stop Vi during calls. Default is True.                                                                                                                               |
| `hold__queue__queue__callback__dtmf`                      | string  |          | —       | Allow callers to request a callback when the queue has more than queue\_callback\_threshold number of calls by pressing one of the followings: \[0,1,2,3,4,5,6,7,8,9,\*,#]. Default is 9.                |
| `alerts__cc__service__level__seconds`                     | integer |          | —       | Inbound calls should be answered within how many seconds. Default is 60.                                                                                                                                 |
| `hold__queue__allow__queue__callback`                     | boolean |          | —       | Whether or not to allow callers to request a callback. Default is False.                                                                                                                                 |
| `hold__queue__queue__callback__threshold`                 | integer |          | —       | Allow callers to request a callback when the queue has more than this number of calls. Default is 5.                                                                                                     |
| `routing__options__open__operator__routing`               | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `advanced__settings__max__wrap__up__seconds`              | integer |          | —       | Include a post-call wrap-up time before agents can receive their next call. Default is 0.                                                                                                                |
| `routing__options__open__action__target__id`              | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__closed__operator__routing`             | string  |          | —       | The routing strategy that should be used when dialing operators.                                                                                                                                         |
| `hold__queue__announcement__interval__seconds`            | integer |          | —       | Hold announcement interval wait time. Default is 2 min.                                                                                                                                                  |
| `hold__queue__stay__in__queue__after__closing`            | boolean |          | —       | Whether or not to allow existing calls to stay in queue after the call center has closed. Default is False.                                                                                              |
| `routing__options__closed__action__target__id`            | integer |          | —       | The ID of the Target that inbound calls should be routed to.                                                                                                                                             |
| `routing__options__open__action__target__type`            | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__open__try__dial__operators`            | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `routing__options__closed__action__target__type`          | string  |          | —       | The type of the Target that inbound calls should be routed to.                                                                                                                                           |
| `routing__options__closed__try__dial__operators`          | boolean |          | —       | Whether operators should be dialed on inbound calls.                                                                                                                                                     |
| `adv__settings__auto__call__rec__call__rec__inbound`      | boolean |          | —       | Whether or not inbound calls to this call center get automatically recorded. Default is False.                                                                                                           |
| `adv__settings__auto__call__rec__call__rec__outbound`     | boolean |          | —       | Whether or not outbound calls from this call center get automatically recorded. Default is False.                                                                                                        |
| `adv__settings__auto__call__rec__allow__pause__recording` | boolean |          | —       | Allow agents to stop/restart a recording during a call. Default is False.                                                                                                                                |

***

### `Dialpad Update Call Review Share Link Privacy`

Integration name: **DIALPAD\_UPDATE\_CALL\_REVIEW\_SHARE\_LINK\_PRIVACY**

Updates the privacy settings of an existing call review share link in Dialpad. This endpoint allows you to modify the accessibility of a shared call recording, controlling whether it can be viewed only by company members or by anyone with the link. Use this when you need to adjust the visibility of a previously shared call review, either to increase security by limiting access to the company or to allow broader access by making it public. It's particularly useful for managing sensitive information in call recordings or adapting to changing collaboration needs. Note that this endpoint only modifies the privacy settings and does not create new share links or alter the content of the call review itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                   |
| --------- | ------ | :------: | ------- | --------------------------------------------- |
| `id`      | string |     ✅    | —       | The share link"s id.                          |
| `privacy` | string |     ✅    | —       | The privacy state of the recording share link |

***

### `Dialpad Update Call Subscription By Id`

Integration name: **DIALPAD\_UPDATE\_CALL\_SUBSCRIPTION\_BY\_ID**

Updates an existing call event subscription in the Dialpad system. This endpoint allows you to modify various aspects of a subscription, including the call states to monitor, the subscription's active status, associated logging endpoint, and event filtering criteria. Use this when you need to adjust the behavior of an existing subscription, such as changing which call events you receive notifications for or updating the target of the subscription. It's particularly useful for fine-tuning your application's integration with Dialpad's real-time call event system. Note that this endpoint updates only the specified fields; unspecified fields retain their current values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`               | string  |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully.                                                                                                                   |
| `enabled`          | boolean |          | —       | Whether or not the call event subscription is enabled.                                                                                                                                                               |
| `target_id`        | integer |          | —       | The ID of the specific target for which events should be sent.                                                                                                                                                       |
| `call_states`      | array   |          | —       | The call event subscription"s list of call states.                                                                                                                                                                   |
| `endpoint_id`      | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. If you plan to pair this event subscription with another logging endpoint, please provide a valid webhook ID here. |
| `target_type`      | string  |          | —       | The target type.                                                                                                                                                                                                     |
| `group_calls_only` | boolean |          | —       | Call event subscription for group calls only.                                                                                                                                                                        |

***

### `Dialpad Update Contact Information`

Integration name: **DIALPAD\_UPDATE\_CONTACT\_INFORMATION**

Updates an existing contact's information in the Dialpad system. This endpoint allows you to modify various details of a contact, including their name, company, contact information, and job details. It's particularly useful for keeping contact records up-to-date or correcting information. The endpoint requires at least the first name, last name, and a unique identifier (uid) to update a contact. Other fields such as email addresses, phone numbers, and URLs can be optionally updated. Note that this endpoint overwrites existing data, so include all current information along with any changes to avoid unintended data loss.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                        |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `uid`          | string |     ✅    | —       | The unique id to be included as part of the contact"s generated id.                                                                |
| `urls`         | array  |          | —       | A list of websites associated with or belonging to this contact.                                                                   |
| `emails`       | array  |          | —       | The contact"s emails. The first email in the list is the contact"s primary email.                                                  |
| `phones`       | array  |          | —       | The contact"s phone numbers. The phone number must be in e164 format. The first number in the list is the contact"s primary phone. |
| `extension`    | string |          | —       | The contact"s extension number.                                                                                                    |
| `job_title`    | string |          | —       | \[single-line only] The contact"s job title.                                                                                       |
| `last_name`    | string |     ✅    | —       | \[single-line only] The contact"s last name.                                                                                       |
| `first_name`   | string |     ✅    | —       | \[single-line only] The contact"s first name.                                                                                      |
| `trunk_group`  | string |          | —       | \[Deprecated]                                                                                                                      |
| `company_name` | string |          | —       | \[single-line only] The contact"s company name.                                                                                    |

***

### `Dialpad Update Contact Subscription By Id`

Integration name: **DIALPAD\_UPDATE\_CONTACT\_SUBSCRIPTION\_BY\_ID**

Updates an existing contact event subscription in the Dialpad system. This endpoint allows you to modify the configuration of a subscription, including changing the contact type it listens for, enabling or disabling the subscription, and associating it with a different logging endpoint. Use this when you need to adjust the behavior of an existing contact event subscription, such as changing its scope from local to shared contacts or temporarily disabling event notifications. The subscription ID must be provided in the URL path. Note that this endpoint only updates the specified fields; any fields not included in the request will retain their current values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                                                                                                          |
| -------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`           | string  |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully.                                                                                                                   |
| `enabled`      | boolean |          | —       | Whether or not the contact event subscription is enabled.                                                                                                                                                            |
| `endpoint_id`  | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. If you plan to pair this event subscription with another logging endpoint, please provide a valid webhook ID here. |
| `contact_type` | string  |     ✅    | —       | The contact type this event subscription subscribes to.                                                                                                                                                              |

***

### `Dialpad Update E911 Address For Office`

Integration name: **DIALPAD\_UPDATE\_E911\_ADDRESS\_FOR\_OFFICE**

This endpoint updates the Enhanced 911 (E911) address for a specific office in Dialpad. It allows you to modify crucial location information used by emergency services to accurately locate the office in case of an emergency call. The endpoint can update the address for the office itself and optionally for all users associated with that office. It also provides an option to validate the address using Dialpad's service, ensuring the highest possible accuracy for emergency response. Use this endpoint when setting up a new office, relocating an existing office, or correcting address information. It's particularly important for maintaining compliance with E911 regulations and ensuring employee safety.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                    |
| ---------------------- | ------- | :------: | ------- | -------------------------------------------------------------- |
| `id`                   | string  |     ✅    | —       | The office"s id.                                               |
| `zip`                  | string  |     ✅    | —       | \[single-line only] Zip code of the new E911 address.          |
| `city`                 | string  |     ✅    | —       | \[single-line only] City of the new E911 address.              |
| `state`                | string  |     ✅    | —       | \[single-line only] State or Province of the new E911 address. |
| `address`              | string  |     ✅    | —       | \[single-line only] Line 1 of the new E911 address.            |
| `country`              | string  |     ✅    | —       | Country of the new E911 address.                               |
| `address2`             | string  |          | —       | \[single-line only] Line 2 of the new E911 address.            |
| `update_all`           | boolean |          | —       | Update E911 for all users in this office.                      |
| `use_validated_option` | boolean |          | —       | Whether to use the validated address option from our service.  |

***

### `Dialpad Update E911 Address For User`

Integration name: **DIALPAD\_UPDATE\_E911\_ADDRESS\_FOR\_USER**

Updates the E911 address for a specified user in the Dialpad system. This endpoint allows you to modify the emergency location information associated with a user's account, ensuring accurate dispatch of emergency services if needed. The updated address will be used for E911 services, which provide precise location data to emergency responders. This tool should be used when a user's physical location changes or when correcting inaccurate E911 address information. It's crucial for maintaining compliance with E911 regulations and ensuring user safety. The endpoint requires detailed address information and offers an option for address validation to improve accuracy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                             |
| ---------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `id`                   | integer |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key) |
| `zip`                  | string  |     ✅    | —       | \[single-line only] Zip of the new E911 address.                        |
| `city`                 | string  |     ✅    | —       | \[single-line only] City of the new E911 address.                       |
| `state`                | string  |     ✅    | —       | \[single-line only] State or Province of the new E911 address.          |
| `address`              | string  |     ✅    | —       | \[single-line only] Line 1 of the new E911 address.                     |
| `country`              | string  |     ✅    | —       | Country of the new E911 address.                                        |
| `address2`             | string  |          | —       | \[single-line only] Line 2 of the new E911 address.                     |
| `use_validated_option` | boolean |          | —       | Whether to use the validated address option from our service.           |

***

### `Dialpad Update Ivr Details By Id`

Integration name: **DIALPAD\_UPDATE\_IVR\_DETAILS\_BY\_ID**

Updates an existing custom Interactive Voice Response (IVR) workflow in the Dialpad system. This endpoint allows you to modify the name and description of a specific IVR identified by its unique ID. Use this when you need to rename an IVR or update its description to reflect changes in its purpose or functionality. The operation is partial, meaning you can update either the name, the description, or both without affecting other properties of the IVR. This endpoint is particularly useful for maintaining accurate and up-to-date documentation of your IVR systems, especially in large-scale deployments where clear labeling is crucial. Note that this operation only updates metadata and does not alter the actual call flow or logic of the IVR.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                     |
| ------------- | ------ | :------: | ------- | ----------------------------------------------- |
| `name`        | string |          | —       | \[single-line only] The name of this IVR.       |
| `ivr_id`      | string |     ✅    | —       | The ID of the custom ivr to be updated.         |
| `description` | string |          | —       | \[single-line only] The description of the IVR. |

***

### `Dialpad Update Operator Duty Status`

Integration name: **DIALPAD\_UPDATE\_OPERATOR\_DUTY\_STATUS**

Updates the duty status of a specific call center operator in Dialpad. This endpoint allows you to change an operator's availability and optionally provide a reason for their status. Use this when you need to manage operator schedules, indicate break times, or adjust availability in real-time. The endpoint is crucial for maintaining up-to-date operator statuses, which directly impact call routing and overall call center efficiency. Note that this operation only updates the duty status and reason; it does not modify any other operator information or settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                |
| -------------------- | ------- | :------: | ------- | ---------------------------------------------------------- |
| `id`                 | integer |     ✅    | —       | The operator"s user id.                                    |
| `on_duty`            | boolean |     ✅    | —       | True if this status message indicates an "on-duty" status. |
| `duty_status_reason` | string  |          | —       | \[single-line only] A description of this status.          |

***

### `Dialpad Update Recording Share Link Privacy`

Integration name: **DIALPAD\_UPDATE\_RECORDING\_SHARE\_LINK\_PRIVACY**

Updates the privacy settings of a specific recording share link in Dialpad. This endpoint allows you to modify who can access a shared call recording by changing its privacy state. Use this when you need to adjust the visibility of a recording, such as making it public for external sharing or restricting it to company-only access. The endpoint requires the ID of the recording share link to be updated, which should be provided in the URL path. Note that this operation only changes the privacy settings and does not create or delete the share link itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                    |
| --------- | ------ | :------: | ------- | ---------------------------------------------- |
| `id`      | string |     ✅    | —       | The recording share link"s ID.                 |
| `privacy` | string |     ✅    | —       | The privacy state of the recording share link. |

***

### `Dialpad Update Room Details`

Integration name: **DIALPAD\_UPDATE\_ROOM\_DETAILS**

Updates the configuration of a specific Dialpad room identified by its ID. This endpoint allows you to modify the room's name and manage its assigned phone numbers. Use this when you need to rename a room, update its phone number assignments, or reorder existing phone numbers. The endpoint is particularly useful for maintaining accurate room information and adjusting telephony settings as your organization's needs change. Note that this is a partial update operation, so only the fields you provide will be modified. Be cautious when updating phone numbers, as reordering or removing numbers from the list will affect their assignment to the room.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                             |
| --------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `id`            | string |     ✅    | —       | The room"s id.                                                                                                          |
| `name`          | string |          | —       | \[single-line only] The name of the room.                                                                               |
| `phone_numbers` | array  |          | —       | A list of all phone numbers assigned to the room. Numbers can be re-ordered or removed from this list to unassign them. |

***

### `Dialpad Update Schedule Report Settings`

Integration name: **DIALPAD\_UPDATE\_SCHEDULE\_REPORT\_SETTINGS**

The UpdateScheduledReport endpoint allows you to modify the settings of an existing scheduled report in Dialpad. This powerful tool enables fine-tuning of report generation parameters, including frequency, timing, type, and scope. Use this endpoint when you need to adjust report schedules, change report types, update target information, or modify other settings of a previously configured report. The endpoint is particularly useful for adapting reporting needs as your organization's requirements evolve. It provides flexibility in managing various aspects of scheduled reports, from basic timing adjustments to more complex changes in report focus and delivery. Keep in mind that this endpoint updates an existing report schedule; it does not create new schedules or generate reports on demand. Also, note that some parameters are interdependent (e.g., frequency, at, and on\_day), so ensure their values are consistent when making updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                     |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `at`             | integer |     ✅    | —       | Hour of the day when the report will execute considering the frequency and timezones between 0 and 23 e.g. 10 will be 10:00 am. |
| `id`             | string  |     ✅    | —       | The schedule reports subscription"s ID.                                                                                         |
| `name`           | string  |     ✅    | —       | \[single-line only] The name of the schedule reports.                                                                           |
| `on_day`         | integer |     ✅    | —       | The day of the week or month when the report will execute considering the frequency. daily=0, weekly=0-6, monthly=0-30.         |
| `enabled`        | boolean |          | —       | Whether or not this schedule reports event subscription is enabled.                                                             |
| `timezone`       | string  |          | —       | Timezone using a tz database name.                                                                                              |
| `frequency`      | string  |     ✅    | —       | How often the report will execute.                                                                                              |
| `target_id`      | integer |          | —       | The target"s id.                                                                                                                |
| `endpoint_id`    | integer |     ✅    | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully.                               |
| `report_type`    | string  |     ✅    | —       | The type of report that will be generated.                                                                                      |
| `target_type`    | string  |          | —       | Target"s type.                                                                                                                  |
| `coaching_group` | boolean |          | —       | Whether the the statistics should be for trainees of the coach group with the given target\_id.                                 |

***

### `Dialpad Update Sms Subscription Settings`

Integration name: **DIALPAD\_UPDATE\_SMS\_SUBSCRIPTION\_SETTINGS**

Updates an existing SMS event subscription in the Dialpad API. This endpoint allows you to modify various aspects of an SMS subscription, such as its direction, enabled status, associated endpoint, and target settings. Use this when you need to change the configuration of an existing SMS event subscription to adjust its behavior or scope. The endpoint provides flexibility in updating multiple parameters simultaneously, allowing for fine-tuned control over SMS event notifications. Note that all parameters are optional, so you can update only the specific fields you want to change without affecting the others.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`               | string  |     ✅    | —       | The event subscription"s ID, which is generated after creating an event subscription successfully.                                                                                                                   |
| `status`           | boolean |          | —       | Whether or not to update on each SMS delivery status.                                                                                                                                                                |
| `enabled`          | boolean |          | —       | Whether or not the SMS event subscription is enabled.                                                                                                                                                                |
| `direction`        | string  |          | —       | The SMS direction this event subscription subscribes to.                                                                                                                                                             |
| `target_id`        | integer |          | —       | The ID of the specific target for which events should be sent.                                                                                                                                                       |
| `endpoint_id`      | integer |          | —       | The logging endpoint"s ID, which is generated after creating a webhook or websocket successfully. If you plan to pair this event subscription with another logging endpoint, please provide a valid webhook ID here. |
| `target_type`      | string  |          | —       | The target"s type.                                                                                                                                                                                                   |
| `include_internal` | boolean |          | —       | Whether or not to trigger SMS events for SMS sent between two users from the same company.                                                                                                                           |

***

### `Dialpad Update User Information By Id`

Integration name: **DIALPAD\_UPDATE\_USER\_INFORMATION\_BY\_ID**

This endpoint allows you to update various aspects of a user's profile and settings in the Dialpad system. It provides comprehensive control over user management, including personal information, administrative roles, communication settings, and account status. Use this endpoint when you need to modify existing user data, such as changing contact details, adjusting administrative privileges, updating license types, or managing phone numbers and extensions. The endpoint is particularly useful for keeping user information up-to-date and managing user access within the Dialpad platform. Note that some changes, like updating license types or office assignments, may have billing implications. Ensure you have the necessary permissions and understand the impact of changes before using this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                         | string  |     ✅    | —       | The user"s id. ("me" can be used if you are using a user level API key)                                                                                                                                                                                                                                                                                                                   |
| `state`                      | string  |          | —       | The user"s state. This is used to suspend or re-activate a user.                                                                                                                                                                                                                                                                                                                          |
| `emails`                     | array   |          | —       | The user"s emails. This can be used to add, remove, or re-order emails. The first email in the list is the user"s primary email.                                                                                                                                                                                                                                                          |
| `license`                    | string  |          | —       | The user"s license type. Changing this affects billing for the user. For a Sell license, specify the type as `agents`. For a Support license, specify the type as `support`.                                                                                                                                                                                                              |
| `extension`                  | string  |          | —       | The user"s new extension number. Extensions are optional in Dialpad and turned off by default. If you want extensions please contact support to enable them.                                                                                                                                                                                                                              |
| `job_title`                  | string  |          | —       | \[single-line only] The user"s job title.                                                                                                                                                                                                                                                                                                                                                 |
| `last_name`                  | string  |          | —       | \[single-line only] The user"s last name.                                                                                                                                                                                                                                                                                                                                                 |
| `office_id`                  | integer |          | —       | The user"s office id. If provided, the user will be moved to this office. For international offices, the user must not have phone numbers assigned. Once the transfer is complete, your admin can add the phone numbers via the user assign number API. Only supported on paid accounts and there must be enough licenses to transfer the user to the destination office. Example: "123". |
| `first_name`                 | string  |          | —       | \[single-line only] The user"s first name.                                                                                                                                                                                                                                                                                                                                                |
| `phone_numbers`              | array   |          | —       | A list of the phone number(s) assigned to this user. This can be used to re-order or remove numbers. To assign a new number, use the assign number API instead.                                                                                                                                                                                                                           |
| `is_super_admin`             | boolean |          | —       | Whether or not the user is a super admin. (company level administrator)                                                                                                                                                                                                                                                                                                                   |
| `admin_office_ids`           | array   |          | —       | The list of admin office IDs. This is used to set the user as an office admin for the offices with the provided IDs. Example: \["123", "456"].                                                                                                                                                                                                                                            |
| `keep_paid_numbers`          | boolean |          | —       | Whether or not to keep phone numbers when switching to a support license. Note: Phone numbers require additional number licenses under a support license.                                                                                                                                                                                                                                 |
| `forwarding_numbers`         | array   |          | —       | A list of phone numbers that should be dialed in addition to the user"s Dialpad number(s) upon receiving a call.                                                                                                                                                                                                                                                                          |
| `presence__status__type`     | string  |          | —       | Predefined templates will be only used for the supported types. Accepts the following types: - `default` -- status message template: "{provider}: {message}" - `conference` -- status message template: "On {provider}: in the {message} meeting" `provider` and `message` should be chosen with the message template in mind.                                                            |
| `presence__status__message`  | string  |          | —       | The presence status message to be updated.                                                                                                                                                                                                                                                                                                                                                |
| `presence__status__provider` | string  |          | —       | The provider requesting the presence status update.                                                                                                                                                                                                                                                                                                                                       |

***

### `Dialpad Validate Callback Request`

Integration name: **DIALPAD\_VALIDATE\_CALLBACK\_REQUEST**

Validates a callback request for the Dialpad system. This endpoint is used to check if a callback can be successfully initiated for a given call center and phone number. It helps ensure that the necessary information is correct and available before actually placing the callback. Use this endpoint when you need to verify the validity of a callback request, such as before scheduling or queuing a callback. The endpoint does not initiate the actual callback; it only performs validation. Note that both parameters are optional, allowing for flexible validation scenarios, but providing both ensures the most comprehensive validation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                        |
| ---------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `phone_number`   | string  |          | —       | The e164-formatted number to call back                                             |
| `call_center_id` | integer |          | —       | The ID of a call center that will be used to fulfill the callback. Example: "123". |

***


# DigitalOcean

Your Toolhouse AI Worker can connect to DigitalOcean using 48 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](https://toolhouse.app/auth-connections?authkit_slugs=digital_ocean).

## Tools (48)

### `Digital Ocean Create Custom Image`

Integration name: **DIGITAL\_OCEAN\_CREATE\_CUSTOM\_IMAGE**

Creates a custom image in DigitalOcean by importing a Linux VM disk image from a publicly accessible URL. Use this action to upload custom OS images (Ubuntu, Debian, CentOS, Fedora, etc.) that can later be used to create Droplets. The image will be processed asynchronously and its status can be monitored via the returned image ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                     | Description                                                                                                                                                          |
| -------------- | ------ | :------: | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`          | string |     ✅    | —                           | Publicly accessible URL (HTTP/HTTPS) pointing to a Linux VM disk image. Supported formats: Raw (.img), qcow2, VHDX, VDI, VMDK. May be compressed with gzip or bzip2. |
| `name`         | string |     ✅    | `"My-Linux-VM-Image"`       | A human-readable name for the custom image (e.g., 'ubuntu-20.04-webserver').                                                                                         |
| `tags`         | array  |          | `["web-server","archived"]` | Optional list of tag strings for organizing and categorizing the image.                                                                                              |
| `region`       | string |     ✅    | `"nyc3"`                    | DigitalOcean region slug where the image will be initially stored (e.g., 'nyc1', 'nyc3', 'sfo2', 'sfo3', 'lon1', 'ams3').                                            |
| `description`  | string |          | —                           | Optional detailed description of the image's purpose, contents, or configuration.                                                                                    |
| `distribution` | string |     ✅    | `"Ubuntu"`                  | Operating system distribution name. Valid options: 'Ubuntu', 'Debian', 'CentOS', 'Fedora', 'Arch Linux', or 'Unknown'.                                               |

***

### `Digital Ocean Create Database Cluster`

Integration name: **DIGITAL\_OCEAN\_CREATE\_DATABASE\_CLUSTER**

Creates a new managed database cluster on DigitalOcean. Provisions a database with specified engine (PostgreSQL, MySQL, Valkey, MongoDB, Kafka, or OpenSearch), version, region, size, and node count. Returns connection credentials and cluster details. The cluster will be in 'creating' status initially and take several minutes to become fully operational.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                  | Description                                                                                                                                                   |
| ---------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |     ✅    | `"my-db-cluster"`                        | Name for your database cluster                                                                                                                                |
| `size`                 | string  |     ✅    | `"db-s-1vcpu-1gb"`                       | Size slug for the database nodes. Examples: db-s-1vcpu-1gb, db-s-2vcpu-4gb, gd-2vcpu-8gb                                                                      |
| `tags`                 | array   |          | `"prod"`                                 | Tags to assign to the cluster                                                                                                                                 |
| `engine`               | string  |     ✅    | `"pg"`                                   | Database engine type: 'pg' (PostgreSQL), 'mysql' (MySQL), 'valkey' (Redis-compatible), 'mongodb' (MongoDB), 'kafka' (Apache Kafka), 'opensearch' (OpenSearch) |
| `region`               | string  |     ✅    | `"nyc1"`                                 | Region slug where the cluster will be created. Examples: nyc1, nyc3, sfo3, lon1, fra1, ams3, sgp1, tor1, blr1                                                 |
| `version`              | string  |     ✅    | `"16"`                                   | Database engine version. Examples: '16' for PostgreSQL, '8' for MySQL/Valkey, '8.0' for MongoDB, '3.8' for Kafka, '2' for OpenSearch                          |
| `db_names`             | array   |          | `"appdb"`                                | Names of databases to create in the cluster                                                                                                                   |
| `sql_mode`             | string  |          | `"STRICT_TRANS_TABLES"`                  | SQL mode for MySQL clusters                                                                                                                                   |
| `num_nodes`            | integer |     ✅    | `1`                                      | Number of nodes in the cluster. Typical values: 1 (single node), 2 (primary + standby), 3 (high availability)                                                 |
| `user_names`           | array   |          | `"appuser"`                              | Usernames to create in the cluster                                                                                                                            |
| `backup_restore`       | object  |          | —                                        | Configuration to restore a cluster from a backup                                                                                                              |
| `eviction_policy`      | string  |          | `"volatile-lru"`                         | Eviction policy for Redis clusters                                                                                                                            |
| `storage_size_gb`      | integer |          | `10`                                     | Additional storage size in GiB for the cluster                                                                                                                |
| `maintenance_window`   | object  |          | —                                        | Maintenance window configuration for the cluster                                                                                                              |
| `private_network_uuid` | string  |          | `"e9c9f0b0-3b93-4f76-8a77-1f0e5d6b1234"` | UUID of VPC network for private networking                                                                                                                    |

***

### `Digital Ocean Create New Block Storage Volume`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_BLOCK\_STORAGE\_VOLUME**

Tool to create a new block storage volume. Use when you need to provision persistent block storage after confirming the target region supports volumes. Example: "Create a 100 GiB ext4 backup volume named 'db-backup' in nyc1."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                  | Description                                                                     |
| ------------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `name`             | string  |     ✅    | `"db-backup-volume"`                     | A human-readable name for the block storage volume.                             |
| `tags`             | array   |          | `["production","database"]`              | List of tags to apply to the volume.                                            |
| `region`           | string  |     ✅    | `"nyc1"`                                 | Slug identifier for the region where the volume will be created (e.g., 'nyc1'). |
| `description`      | string  |          | `"Nightly database backups"`             | Free-form text description of the volume.                                       |
| `snapshot_id`      | string  |          | `"f3a1b2c3-d4e5-6789-abcd-ef0123456789"` | Unique identifier of a snapshot to create the volume from.                      |
| `size_gigabytes`   | integer |     ✅    | `100`                                    | Size of the block storage volume in GiB (minimum 1).                            |
| `filesystem_type`  | string  |          | `"ext4"`                                 | Filesystem type to initialize on the volume (e.g., 'ext4').                     |
| `filesystem_label` | string  |          | `"backup_vol"`                           | Label to apply to the filesystem.                                               |

***

### `Digital Ocean Create New Domain`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_DOMAIN**

Creates a new domain in DigitalOcean's DNS management system. This adds the domain to your DigitalOcean account and allows you to manage its DNS records. Use this action when you need to: - Add a domain to DigitalOcean DNS for DNS hosting and management - Set up a new domain with an optional initial A record pointing to an IP address - Transfer DNS management of an existing domain to DigitalOcean Note: The domain name must be unique within your DigitalOcean account and use a recognized top-level domain (TLD). After creation, you can add additional DNS records using the create domain record action.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example         | Description                                                                                                                                                                                |
| ------------ | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`       | string |     ✅    | `"example.com"` | The domain name to add to DigitalOcean DNS management (e.g., 'example.com'). Must be a valid domain with a recognized TLD. The domain must be unique and not already exist in the account. |
| `ip_address` | string |          | `"192.0.2.1"`   | Optional IPv4 address to create an initial A record pointing the domain apex to this IP. If not provided, the domain will be created without any DNS records.                              |

***

### `Digital Ocean Create New Domain Record`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_DOMAIN\_RECORD**

Tool to create a new DNS record for a domain. Use after confirming domain exists and record specifics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example         | Description                                                                                                                                                  |
| ------------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tag`         | string  |          | `"issue"`       | Tag for CAA records (issue, issuewild, iodef); required if type is CAA                                                                                       |
| `ttl`         | integer |          | `1800`          | Time to live for the record in seconds                                                                                                                       |
| `data`        | string  |     ✅    | `"1.2.3.4"`     | Value of the DNS record. Format depends on the record type. For CAA records with issue/issuewild tags, use FQDN with trailing dot (e.g., 'letsencrypt.org.') |
| `name`        | string  |          | `"www"`         | Host name for the record (e.g., 'www'). Use '@' for root domain                                                                                              |
| `port`        | integer |          | `5060`          | Port for SRV records; required if type is SRV                                                                                                                |
| `type`        | string  |     ✅    | `"A"`           | Type of DNS record to create                                                                                                                                 |
| `flags`       | integer |          | `0`             | Flags for CAA records; required if type is CAA                                                                                                               |
| `weight`      | integer |          | `5`             | Weight for SRV records; required if type is SRV                                                                                                              |
| `priority`    | integer |          | `10`            | Priority for MX and SRV records; required if type is MX or SRV                                                                                               |
| `domain_name` | string  |     ✅    | `"example.com"` | The domain name to add the record to, e.g., 'example.com'                                                                                                    |

***

### `Digital Ocean Create New Droplet`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_DROPLET**

Tool to create a new Droplet. Use when you need to provision a VM with name, region, size, and image. The `image`, `region`, and `size` must be mutually compatible — the chosen `region` must be listed in the image's available regions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                  | Description                                            |
| -------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `ipv6`               | boolean |          | `true`                                   | Whether IPv6 is enabled                                |
| `name`               | string  |     ✅    | `"example-vm"`                           | A human-readable name for the Droplet                  |
| `size`               | string  |     ✅    | `"s-1vcpu-1gb"`                          | Size slug for the Droplet                              |
| `tags`               | array   |          | `"web"`                                  | List of tags to apply to the Droplet                   |
| `image`              | —       |     ✅    | `"ubuntu-20-04-x64"`                     | Image slug or ID to use for the Droplet                |
| `region`             | string  |     ✅    | `"nyc3"`                                 | Region slug where the Droplet will be created          |
| `backups`            | boolean |          | `true`                                   | Whether automatic backups are enabled                  |
| `volumes`            | array   |          | `"volume-id-1"`                          | IDs of volumes to attach to the Droplet                |
| `ssh_keys`           | array   |          | `123456`                                 | List of SSH key IDs or fingerprints to embed           |
| `vpc_uuid`           | string  |          | `"123e4567-e89b-12d3-a456-426614174000"` | VPC UUID to assign the Droplet to                      |
| `user_data`          | string  |          | `"#cloud-config..."`                     | User data (cloud-init) script to configure the Droplet |
| `monitoring`         | boolean |          | `true`                                   | Whether monitoring is enabled                          |
| `private_networking` | boolean |          | —                                        | Deprecated: use 'vpc\_uuid' instead                    |
| `with_droplet_agent` | boolean |          | `true`                                   | Whether to install the Droplet agent for metrics       |

***

### `Digital Ocean Create New Firewall`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_FIREWALL**

Creates a new cloud firewall with custom inbound and outbound rules. Use this action to set up network security rules that control traffic to and from your Droplets. You can specify rules using IP addresses (CIDR notation), Droplet IDs, tags, Load Balancer UUIDs, or Kubernetes cluster IDs. The firewall can be applied to specific Droplets, all Droplets with certain tags, or scoped to a VPC. Requires at least one inbound rule and one outbound rule. Supports tcp, udp, and icmp protocols.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                               |
| ---------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------- |
| `name`           | string |     ✅    | `"web-firewall"` | Name of the new firewall.                                                 |
| `tags`           | array  |          | —                | Optional list of Droplet tags to apply the firewall to matching droplets. |
| `vpc_uuid`       | string |          | —                | Optional VPC UUID to scope this firewall to a VPC.                        |
| `droplet_ids`    | array  |          | —                | Optional list of Droplet IDs to apply the firewall to.                    |
| `inbound_rules`  | array  |     ✅    | —                | List of inbound rules; must contain at least one.                         |
| `outbound_rules` | array  |     ✅    | —                | List of outbound rules; must contain at least one.                        |

***

### `Digital Ocean Create New Kubernetes Cluster`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_KUBERNETES\_CLUSTER**

Creates a new DigitalOcean Kubernetes (DOKS) cluster with managed control plane. Required: cluster name, region slug, Kubernetes version slug, and at least one node pool configuration. Optional: tags, auto-upgrade settings, maintenance policy, node labels/taints, and auto-scaling. The cluster will be created in 'provisioning' state and may take several minutes to become 'running'. Query /v2/kubernetes/options endpoint to get available regions, versions, and node sizes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                                   | Description                                                                                                                           |
| -------------------- | ------- | :------: | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string  |     ✅    | `"example-cluster"`                                       | A human-readable name for the Kubernetes cluster.                                                                                     |
| `tags`               | array   |          | `"frontend"`                                              | List of tags to apply to the cluster.                                                                                                 |
| `region`             | string  |     ✅    | `"nyc1"`                                                  | Region slug where the cluster will be created. Common regions: nyc1, nyc3, sfo3, lon1, fra1, tor1, blr1, sgp1, ams3, syd1.            |
| `version`            | string  |     ✅    | `"1.34.1-do.3"`                                           | Kubernetes version slug to deploy (e.g., '1.34.1-do.3', '1.33.6-do.3'). Use /v2/kubernetes/options to get current available versions. |
| `node_pools`         | array   |     ✅    | `{"name":"frontend-pool","size":"s-1vcpu-2gb","count":3}` | List of node pools; at least one required.                                                                                            |
| `auto_upgrade`       | boolean |          | `true`                                                    | Whether to auto-upgrade to new patch releases.                                                                                        |
| `maintenance_policy` | object  |          | —                                                         | Scheduled maintenance policy for the cluster.                                                                                         |

***

### `Digital Ocean Create New Load Balancer`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_LOAD\_BALANCER**

Tool to create a new load balancer. Use after specifying region, forwarding rules, and targets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                  | Description                                                           |
| -------------------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------- |
| `tag`                      | string  |          | `"web"`                                  | Tag to select droplets (mutually exclusive with droplet\_ids).        |
| `name`                     | string  |     ✅    | `"lb-web"`                               | Unique name for the new load balancer.                                |
| `region`                   | string  |     ✅    | `"nyc1"`                                 | Region slug where the load balancer will be created (e.g., 'nyc1').   |
| `vpc_uuid`                 | string  |          | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of the VPC to assign the load balancer to.                       |
| `algorithm`                | string  |          | `"round_robin"`                          | Load balancing algorithm to use; defaults to 'round\_robin'.          |
| `droplet_ids`              | array   |          | `123`                                    | List of droplet IDs to attach (mutually exclusive with tag).          |
| `health_check`             | object  |          | —                                        | Optional health check configuration.                                  |
| `firewall_policy`          | string  |          | —                                        | ID of a custom firewall policy to apply.                              |
| `sticky_sessions`          | object  |          | —                                        | Optional session persistence configuration.                           |
| `forwarding_rules`         | array   |     ✅    | —                                        | List of forwarding rules mapping entry to target protocols and ports. |
| `enable_proxy_protocol`    | boolean |          | —                                        | Enable PROXY protocol for backend connections.                        |
| `redirect_http_to_https`   | boolean |          | —                                        | Redirect HTTP traffic to HTTPS.                                       |
| `enable_backend_keepalive` | boolean |          | —                                        | Enable keepalive connections to backend droplets.                     |

***

### `Digital Ocean Create New Ssh Key`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_SSH\_KEY**

Registers a new SSH public key with your DigitalOcean account. The registered key can then be automatically added to new Droplets during creation, enabling secure SSH access. The key must be provided in OpenSSH format (ssh-rsa, ssh-ed25519, etc.) and must not already exist on the account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                  | Description                                                                                                                                                                                                                                                             |
| ------------ | ------ | :------: | -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | `"my-server-key"`                                        | A human-readable name to identify the SSH key (e.g., 'laptop-key', 'production-server'). This name helps you distinguish between multiple keys in your account.                                                                                                         |
| `public_key` | string |     ✅    | `"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC... user@host"` | The complete SSH public key string in OpenSSH format. Must start with the key type (ssh-rsa, ssh-ed25519, ecdsa-sha2-nistp256, etc.) followed by the base64-encoded key data and an optional comment. The key must be valid and not already registered on your account. |

***

### `Digital Ocean Create New Tag`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_TAG**

Creates a new tag in DigitalOcean for organizing and grouping resources. Tags can be applied to droplets, images, volumes, volume snapshots, and databases. If a tag with the same name already exists, the API returns the existing tag (idempotent operation). Tag names must be 1-255 characters containing only letters, numbers, hyphens, or underscores.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                                                                                   |
| --------- | ------ | :------: | ------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"analytics"` | The name of the new tag. Must be 1-255 characters and only contain alphanumeric characters, hyphens (-), or underscores (\_). |

***

### `Digital Ocean Create New Vpc`

Integration name: **DIGITAL\_OCEAN\_CREATE\_NEW\_VPC**

Creates a new Virtual Private Cloud (VPC) in a specified DigitalOcean region. VPCs are private networks for isolating your resources. Traffic within a VPC is free and doesn't count toward bandwidth limits. VPCs support Droplets, managed databases, load balancers, and Kubernetes clusters. The first VPC created in a region automatically becomes the default VPC for that region.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                      | Description                                                                                                                                                                                                                  |
| ------------- | ------ | :------: | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"backend-vpc"`              | The name of the VPC. Must be unique within your account.                                                                                                                                                                     |
| `tags`        | array  |          | `["frontend","production"]`  | List of tag names to apply to the VPC after creation.                                                                                                                                                                        |
| `region`      | string |     ✅    | `"nyc3"`                     | Slug identifier for the region where the VPC will be created. Common regions include nyc3 (New York), sfo3 (San Francisco), lon1 (London), fra1 (Frankfurt), sgp1 (Singapore), tor1 (Toronto).                               |
| `ip_range`    | string |          | `"10.20.0.0/16"`             | The IP range in CIDR notation for the VPC. Network size must be between /16 and /28. If not specified, DigitalOcean assigns a default range automatically. Must not overlap with any existing VPC IP ranges in your account. |
| `description` | string |          | `"Backend services network"` | A free-form description of the VPC.                                                                                                                                                                                          |

***

### `Digital Ocean Delete Block Storage Volume`

Integration name: **DIGITAL\_OCEAN\_DELETE\_BLOCK\_STORAGE\_VOLUME**

Permanently deletes a block storage volume by its unique ID. Use this tool when you need to remove an existing volume. The volume must not be attached to any Droplet before deletion. This operation cannot be undone. Returns HTTP 204 No Content on success. Note: To delete by volume name instead of ID, you would need a different endpoint that accepts both name and region parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                         |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `volume_id` | string |     ✅    | `"4ba0f0fd-e4d5-4d62-82f0-2b4d6e40d760"` | The unique identifier (UUID) of the block storage volume to delete. The volume must not be attached to any Droplet. |

***

### `Digital Ocean Delete Database Cluster`

Integration name: **DIGITAL\_OCEAN\_DELETE\_DATABASE\_CLUSTER**

Tool to delete a database cluster by UUID. Use when you have confirmed the cluster is no longer needed. Returns HTTP 204 No Content on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                  | Description                                 |
| ----------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------- |
| `database_cluster_uuid` | string |     ✅    | `"6cfbcb0f-939a-40d9-a0c6-f5a885f3eb31"` | The UUID of the database cluster to destroy |

***

### `Digital Ocean Delete Domain`

Integration name: **DIGITAL\_OCEAN\_DELETE\_DOMAIN**

Deletes a domain from DigitalOcean DNS. This action is permanent and cannot be undone. Note: If the domain is associated with a Let's Encrypt certificate, delete the certificate first and reconfigure any resources using it (e.g., load balancer SSL termination, Spaces CDN endpoints). Returns 204 No Content on successful deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                    |
| --------- | ------ | :------: | --------------- | -------------------------------------------------------------- |
| `name`    | string |     ✅    | `"example.com"` | The fully qualified domain name to delete, e.g., 'example.com' |

***

### `Digital Ocean Delete Domain Record`

Integration name: **DIGITAL\_OCEAN\_DELETE\_DOMAIN\_RECORD**

Tool to delete a DNS record by its record ID for a domain. Use when you need to remove an existing DNS record and have the domain name and record ID. Returns HTTP 204 No Content on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                                        |
| ----------- | ------- | :------: | --------------- | -------------------------------------------------- |
| `name`      | string  |     ✅    | `"example.com"` | The domain name (e.g., 'example.com').             |
| `record_id` | integer |     ✅    | `123456`        | The unique identifier of the DNS record to delete. |

***

### `Digital Ocean Delete Existing Droplet`

Integration name: **DIGITAL\_OCEAN\_DELETE\_EXISTING\_DROPLET**

Tool to delete a Droplet by ID. Deletion is irreversible — all data is permanently lost. Confirm droplet\_id with the user and verify a backup or snapshot exists before proceeding.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                |
| ------------ | ------- | :------: | -------- | ------------------------------------------ |
| `droplet_id` | integer |     ✅    | `123456` | Unique identifier of the Droplet to delete |

***

### `Digital Ocean Delete Firewall`

Integration name: **DIGITAL\_OCEAN\_DELETE\_FIREWALL**

Tool to delete a firewall by ID. Use when you have confirmed the firewall is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                 |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------- |
| `firewall_id` | string |     ✅    | `"a1b2c3d4-e5f6-7890-abcd-1234567890ab"` | Unique identifier of the firewall to delete |

***

### `Digital Ocean Delete Image`

Integration name: **DIGITAL\_OCEAN\_DELETE\_IMAGE**

Deletes a user-created custom image or snapshot from your DigitalOcean account by its numeric ID. This action permanently removes the image and cannot be undone. Only custom images and snapshots you own can be deleted - attempting to delete distribution images or marketplace applications will fail with a 403 Forbidden error. Use this when cleaning up unused images that are no longer needed and have no dependent resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example     | Description                                                                                                                                                                                                                                                       |
| ---------- | ------- | :------: | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `image_id` | integer |     ✅    | `123456789` | The unique numeric ID of the custom image or snapshot to delete. Note: Only user-created custom images and snapshots can be deleted. DigitalOcean distribution images and marketplace application images cannot be deleted and will return a 403 Forbidden error. |

***

### `Digital Ocean Delete Load Balancer`

Integration name: **DIGITAL\_OCEAN\_DELETE\_LOAD\_BALANCER**

Tool to delete a load balancer instance by ID. Use when you need to permanently remove an existing load balancer after confirming its ID. Returns 204 No Content on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                       |
| ------------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------- |
| `load_balancer_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | Unique identifier of the load balancer to delete. |

***

### `Digital Ocean Delete Ssh Key`

Integration name: **DIGITAL\_OCEAN\_DELETE\_SSH\_KEY**

Tool to delete a public SSH key. Use when you need to remove an SSH key from your account by its ID or fingerprint after confirming its ownership. Returns 204 No Content on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example      | Description                                                 |
| ----------------------- | ------ | :------: | ------------ | ----------------------------------------------------------- |
| `key_id_or_fingerprint` | string |     ✅    | `"12345678"` | The identifier for the SSH key (numeric ID or fingerprint). |

***

### `Digital Ocean Delete Tag`

Integration name: **DIGITAL\_OCEAN\_DELETE\_TAG**

Deletes a tag from your DigitalOcean account. When a tag is deleted, it is automatically removed from all resources that were tagged with it. This operation is idempotent - deleting a non-existent tag will also return success (204 No Content).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                                  |
| --------- | ------ | :------: | --------------- | ---------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"example-tag"` | The name of the tag to delete; all resources with this tag will be untagged. |

***

### `Digital Ocean Delete Vpc`

Integration name: **DIGITAL\_OCEAN\_DELETE\_VPC**

Delete a VPC (Virtual Private Cloud) by its unique identifier. Use this tool when you need to permanently remove a VPC from your DigitalOcean account. Deletion is irreversible — always confirm the vpc\_id with the user before proceeding. **Important Restrictions:** - Cannot delete a VPC that is the default VPC for its region - Cannot delete a VPC that has member resources (droplets, databases, load balancers, etc.) — all resources must be detached or migrated first - VPC must be empty before deletion Returns an empty response (HTTP 204) on successful deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                            |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------- |
| `vpc_id`  | string |     ✅    | `"e0a1b23c-9d8f-4e7b-a1b2-3c4d5e6f7g8h"` | Unique identifier of the VPC to delete |

***

### `Digital Ocean List All Databases`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_DATABASES**

Tool to list all managed database clusters on your account. Supports pagination and filtering by tag. A single request returns only one page; iterate using `page` and `per_page` to retrieve all clusters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example        | Description                                                    |
| ---------- | ------- | :------: | -------------- | -------------------------------------------------------------- |
| `page`     | integer |          | `1`            | Page number to retrieve (starting from 1).                     |
| `per_page` | integer |          | `20`           | Number of items to return per page. Must be between 1 and 200. |
| `tag_name` | string  |          | `"production"` | Filter to return only database clusters with this tag name.    |

***

### `Digital Ocean List All Domains`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_DOMAINS**

Lists all DNS domains configured in your DigitalOcean account. Returns domain names, TTL values, and complete zone files. Supports pagination for large domain lists. Use this action to discover available domains, check domain configurations, or as a prerequisite for domain-specific operations like managing DNS records. No parameters are required - calling without parameters returns the first 20 domains (default page size).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                             |
| ---------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number to retrieve (starting from 1).                              |
| `per_page` | integer |          | `20`    | Number of domains to return per page (1-200). Default is 20 if omitted. |

***

### `Digital Ocean List All Droplets`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_DROPLETS**

Lists all Droplets (virtual machines) in your DigitalOcean account with pagination support. Returns detailed information including: ID, name, specs (memory, vCPUs, disk), status, networking (IP addresses), region, image, size, tags, and VPC. Supports filtering by tag and pagination for large result sets. Use this to get an overview of your infrastructure, find specific droplets, or monitor droplet status. Default page size is 20; accounts with more droplets require explicit pagination (increment `page`, up to `per_page=200`) to avoid silently incomplete results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example        | Description                                                         |
| ---------- | ------- | :------: | -------------- | ------------------------------------------------------------------- |
| `page`     | integer |          | `1`            | Page of results to return. Must be >= 1. Default is 1.              |
| `per_page` | integer |          | `20`           | Number of items per page. Must be between 1 and 200. Default is 20. |
| `tag_name` | string  |          | `"production"` | Filter droplets by tag name.                                        |

***

### `Digital Ocean List All Firewalls`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_FIREWALLS**

List all cloud firewalls configured in your DigitalOcean account. Returns comprehensive firewall details including inbound/outbound rules, associated droplets, tags, and status. Supports pagination for accounts with many firewalls. Use this to audit network security, discover existing firewall configurations, or retrieve firewall IDs for subsequent operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                     |
| ---------- | ------- | :------: | ------- | ----------------------------------------------- |
| `page`     | integer |          | `1`     | Page number to retrieve (starting from 1).      |
| `per_page` | integer |          | `20`    | Number of firewalls to return per page (1-200). |

***

### `Digital Ocean List All Images`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_IMAGES**

Tool to list all images available on your account. Use after obtaining a valid API token to retrieve images optionally filtered by type, private visibility, or tag\_name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example          | Description                                                                    |
| ---------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------ |
| `page`     | integer |          | `1`              | Page number to return. Default: 1. Minimum: 1.                                 |
| `type`     | string  |          | `"distribution"` | Filter images by type. Valid values: 'distribution', 'application', 'private'. |
| `private`  | boolean |          | `true`           | If true, returns only private images. Defaults to false.                       |
| `per_page` | integer |          | `20`             | Number of results per page. Default: 20. Range: 1-200.                         |
| `tag_name` | string  |          | `"web"`          | Return only images tagged with this tag.                                       |

***

### `Digital Ocean List All Kubernetes Clusters`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_KUBERNETES\_CLUSTERS**

Tool to list all Kubernetes clusters on your account. Use when you need to enumerate every cluster and handle pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                             |
| ---------- | ------- | :------: | ------- | ------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number of paginated results (starting from 1).     |
| `per_page` | integer |          | `20`    | Number of clusters per page. Must be between 1 and 200. |

***

### `Digital Ocean List All Load Balancers`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_LOAD\_BALANCERS**

List all load balancers in your DigitalOcean account with pagination support. Returns load balancer details including IDs, names, IP addresses, forwarding rules, health checks, sticky sessions, assigned Droplets, and region information. Use this to get an overview of all load balancers or to find specific load balancers by iterating through results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                         |
| ---------- | ------- | :------: | ------- | ------------------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page of results to return. Must be >= 1. Default is 1.              |
| `per_page` | integer |          | `20`    | Number of items per page. Must be between 1 and 200. Default is 20. |

***

### `Digital Ocean List All Snapshots`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_SNAPSHOTS**

Tool to list all snapshots available on your DigitalOcean account. Use when you need to fetch and optionally filter snapshots by resource type (droplet or volume) and handle pagination for inventory or backup workflows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example     | Description                                                      |
| --------------- | ------- | :------: | ----------- | ---------------------------------------------------------------- |
| `page`          | integer |          | `1`         | Page number to retrieve (starting from 1).                       |
| `per_page`      | integer |          | `20`        | Number of snapshots to return per page (1-200).                  |
| `resource_type` | string  |          | `"droplet"` | Filter snapshots by resource type; either 'droplet' or 'volume'. |

***

### `Digital Ocean List All Ssh Keys`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_SSH\_KEYS**

Lists all SSH keys associated with your DigitalOcean account. Returns SSH key details including ID, name, public key content, and fingerprint. Supports pagination for accounts with many SSH keys. Use this when you need to view available SSH keys or retrieve an SSH key ID for use with other operations like creating droplets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                                                   |
| ---------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number to retrieve (starting from 1). Use with per\_page to navigate through paginated results. Omit to get the first page.              |
| `per_page` | integer |          | `20`    | Number of SSH keys to return per page (1-200). Omit to use DigitalOcean's default page size. Use 200 to retrieve maximum results per request. |

***

### `Digital Ocean List All Tags`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_TAGS**

Tool to list all tags in your account. Use when you need to retrieve available tags and pagination info. A single request returns only one page of results; iterate using `page` and `per_page` to retrieve all tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                   |
| ---------- | ------- | :------: | ------- | ------------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number to retrieve (starting from 1).                    |
| `per_page` | integer |          | `20`    | Number of items returned per page. Must be between 1 and 200. |

***

### `Digital Ocean List All Volumes`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_VOLUMES**

Tool to list all block storage volumes available on your account. Use when you need to retrieve volumes and optionally filter by name and region.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example            | Description                                                   |
| ---------- | ------- | :------: | ------------------ | ------------------------------------------------------------- |
| `name`     | string  |          | `"example-volume"` | Filter to return only volumes with this exact name.           |
| `page`     | integer |          | `1`                | Page number to retrieve (starting from 1).                    |
| `region`   | string  |          | `"nyc1"`           | Filter to return only volumes in this region (region slug).   |
| `per_page` | integer |          | `20`               | Number of items returned per page. Must be between 1 and 200. |

***

### `Digital Ocean List All Vpcs`

Integration name: **DIGITAL\_OCEAN\_LIST\_ALL\_VPCS**

Tool to list all VPCs on your account. Use when you need an inventory of your VPC resources. A single request returns only one page; iterate through all pages using `page` and `per_page` (max 200) to retrieve the complete set.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                |
| ---------- | ------- | :------: | ------- | ---------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number to retrieve (default: 1).                      |
| `per_page` | integer |          | `20`    | Number of VPCs to return per page (default: 20, max: 200). |

***

### `Digital Ocean List Apps`

Integration name: **DIGITAL\_OCEAN\_LIST\_APPS**

Tool to list all App Platform apps in your DigitalOcean account. Use when you need to discover app IDs by name, retrieve app metadata, or enumerate all apps with pagination support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                            |
| --------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`     | Which 'page' of paginated results to return. Must be >= 1. Default is 1.               |
| `per_page`      | integer |          | `20`    | Number of items returned per page. Must be between 1 and 200. Default is 20.           |
| `with_projects` | boolean |          | `true`  | Whether the project\_id of listed apps should be fetched and included in the response. |

***

### `Digital Ocean List Database Options`

Integration name: **DIGITAL\_OCEAN\_LIST\_DATABASE\_OPTIONS**

Lists all available configuration options for DigitalOcean managed database clusters, including supported engines (PostgreSQL, MySQL, MongoDB, Valkey, Kafka, OpenSearch), versions, regions, and cluster sizes/layouts. Use this to discover valid parameter values when creating a new database cluster.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Digital Ocean List Domain Records`

Integration name: **DIGITAL\_OCEAN\_LIST\_DOMAIN\_RECORDS**

Tool to list all DNS records for a domain. Use when you need to inspect or filter a domain's DNS configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example         | Description                                                           |
| ------------- | ------- | :------: | --------------- | --------------------------------------------------------------------- |
| `page`        | integer |          | `1`             | Page of results to return (>= 1).                                     |
| `type`        | string  |          | `"A"`           | Filter records by DNS record type.                                    |
| `per_page`    | integer |          | `20`            | Number of results per page (1-200).                                   |
| `domain_name` | string  |     ✅    | `"example.com"` | The domain name whose records are to be listed (e.g., 'example.com'). |
| `record_name` | string  |          | `"www"`         | Filter records by record name (e.g., 'www', '@' for root domain).     |

***

### `Digital Ocean Retrieve Domain`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_DOMAIN**

Retrieves complete details about a specific domain including its TTL and DNS zone file configuration. Use this when you need to check domain settings, verify DNS configuration, or get the full zone file contents for a domain in your DigitalOcean account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                            |
| --------- | ------ | :------: | --------------- | ------------------------------------------------------ |
| `name`    | string |     ✅    | `"example.com"` | The fully qualified domain name (e.g., 'example.com'). |

***

### `Digital Ocean Retrieve Domain Record`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_DOMAIN\_RECORD**

Tool to retrieve a specific DNS record for a domain by its record ID. Use when you have the domain name and record ID to fetch record details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                               |
| ----------- | ------- | :------: | --------------- | ----------------------------------------- |
| `name`      | string  |     ✅    | `"example.com"` | The domain name (e.g., 'example.com').    |
| `record_id` | integer |     ✅    | `123456`        | The unique identifier for the DNS record. |

***

### `Digital Ocean Retrieve Existing Droplet`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_EXISTING\_DROPLET**

Retrieve detailed information about a specific DigitalOcean Droplet by its unique numeric ID. Returns comprehensive droplet details including: current status, specifications (memory, CPU, disk), networking configuration (IPv4/IPv6 addresses), image information, region, VPC, backup settings, attached volumes, and tags. Use this when you need to check a droplet's current state, configuration, or IP addresses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                                                                                                                        |
| ------------ | ------- | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `droplet_id` | integer |     ✅    | `123456` | The unique numeric identifier of the Droplet you want to retrieve information about. You can obtain droplet IDs from the List All Droplets action. |

***

### `Digital Ocean Retrieve Existing Image`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_EXISTING\_IMAGE**

Tool to retrieve information about an image by ID or slug. Use when you need detailed metadata for a known image.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type | Required | Example   | Description                                             |
| ---------- | ---- | :------: | --------- | ------------------------------------------------------- |
| `image_id` | —    |     ✅    | `1234567` | The unique numeric ID or slug of the image to retrieve. |

***

### `Digital Ocean Retrieve Tag`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_TAG**

Tool to retrieve an individual tag by name. Use when you need to inspect the resources grouped under a specific tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                       |
| --------- | ------ | :------: | -------------- | ------------------------------------------------- |
| `name`    | string |     ✅    | `"production"` | The name of the tag to retrieve (case-sensitive). |

***

### `Digital Ocean Retrieve Vpc`

Integration name: **DIGITAL\_OCEAN\_RETRIEVE\_VPC**

Tool to retrieve details about a specific VPC by its ID. Use when you need to inspect VPC properties for configuration or auditing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                       |
| ---------- | ------ | :------: | ---------------------------------------- | --------------------------------- |
| `vpc_uuid` | string |     ✅    | `"e6b3f4f4-4a86-4bde-b608-123456789abc"` | The unique identifier of the VPC. |

***

### `Digital Ocean Tag Resource`

Integration name: **DIGITAL\_OCEAN\_TAG\_RESOURCE**

Tool to tag resources by name. Use when you need to assign an existing tag to one or more resources. Returns 204 No Content on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example      | Description                                                    |
| ----------- | ------ | :------: | ------------ | -------------------------------------------------------------- |
| `tag_name`  | string |     ✅    | `"env:prod"` | The name of the tag to which resources will be assigned        |
| `resources` | array  |     ✅    | —            | List of resources to assign the tag to (each with id and type) |

***

### `Digital Ocean Untag Resource`

Integration name: **DIGITAL\_OCEAN\_UNTAG\_RESOURCE**

Tool to untag resources by tag name. Use when you need to remove an existing tag from multiple resources in a single operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                                                 |
| ----------- | ------ | :------: | -------------- | --------------------------------------------------------------------------- |
| `tag_name`  | string |     ✅    | `"production"` | Name of the tag to remove from the specified resources.                     |
| `resources` | array  |     ✅    | —              | List of resource objects to untag, each with id, type, and optional region. |

***

### `Digital Ocean Update Domain Record`

Integration name: **DIGITAL\_OCEAN\_UPDATE\_DOMAIN\_RECORD**

Tool to update an existing DNS record for a domain. Use when you need to modify any valid attribute of a record after confirming its record ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example         | Description                                                          |
| ------------- | ------- | :------: | --------------- | -------------------------------------------------------------------- |
| `tag`         | string  |          | —               | Tag for CAA records.                                                 |
| `ttl`         | integer |          | —               | Time to live of the record in seconds.                               |
| `data`        | string  |          | —               | The value of the DNS record (e.g., IP address for A/AAAA record).    |
| `name`        | string  |          | —               | The host name for the record (e.g., 'www', '@').                     |
| `port`        | integer |          | —               | Port for SRV records.                                                |
| `type`        | string  |          | —               | The DNS record type (e.g., 'A', 'CNAME', 'TXT', 'MX', 'SRV', 'CAA'). |
| `flags`       | integer |          | —               | Flags for CAA records.                                               |
| `weight`      | integer |          | —               | Weight for SRV records.                                              |
| `priority`    | integer |          | —               | Priority for MX records.                                             |
| `record_id`   | integer |     ✅    | `123456`        | The unique identifier for the DNS record.                            |
| `domain_name` | string  |     ✅    | `"example.com"` | The domain name (e.g., 'example.com').                               |

***

### `Digital Ocean Update Vpc`

Integration name: **DIGITAL\_OCEAN\_UPDATE\_VPC**

Tool to update information about a VPC. Use when you need to modify the name, description, or default status of an existing VPC.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                            |
| ------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `name`        | string  |          | `"my-vpc"`                               | The new name for the VPC.                              |
| `vpc_id`      | string  |     ✅    | `"a1b2c3d4-5e6f-7g8h-9i0j-1234567890ab"` | The unique identifier of the VPC to update.            |
| `default`     | boolean |          | `true`                                   | Whether to set this VPC as the default for its region. |
| `description` | string  |          | `"My VPC for web applications"`          | A free-form text description for the VPC.              |

***


# Discord

Your Toolhouse AI Worker can connect to Discord using 28 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](https://toolhouse.app/auth-connections?authkit_slugs=discord).

## Tools (28)

### `Discord Consume Entitlement`

Integration name: **DISCORD\_CONSUME\_ENTITLEMENT**

Marks a one-time purchase consumable entitlement as consumed for a given application. Only applicable to entitlements backed by one-time purchase consumable SKUs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                          |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------- |
| `application_id` | string |     ✅    | —       | The ID of the application that owns the entitlement. |
| `entitlement_id` | string |     ✅    | —       | The ID of the entitlement to mark as consumed.       |

***

### `Discord Delete Test Entitlement`

Integration name: **DISCORD\_DELETE\_TEST\_ENTITLEMENT**

Deletes a currently active test entitlement for a given application. Use this to clean up test entitlements that are no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                               |
| ---------------- | ------ | :------: | ------- | --------------------------------------------------------- |
| `application_id` | string |     ✅    | —       | The ID of the application that owns the test entitlement. |
| `entitlement_id` | string |     ✅    | —       | The ID of the test entitlement to delete.                 |

***

### `Discord Delete User Application Role Connection`

Integration name: **DISCORD\_DELETE\_USER\_APPLICATION\_ROLE\_CONNECTION**

Deletes the current user's application role connection for the specified application. Removes the platform metadata and linked role connection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                 | Description                                                  |
| ---------------- | ------ | :------: | ----------------------- | ------------------------------------------------------------ |
| `application_id` | string |     ✅    | `"1215698105417207858"` | The ID of the application to delete the role connection for. |

***

### `Discord Edit Application Command Permissions`

Integration name: **DISCORD\_EDIT\_APPLICATION\_COMMAND\_PERMISSIONS**

Edits the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE\_GUILD and MANAGE\_ROLES permissions in the target guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example               | Description                                                       |
| ---------------- | ------ | :------: | --------------------- | ----------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the guild.                |
| `command_id`     | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the application command.  |
| `permissions`    | array  |     ✅    | —                     | List of permission overrides to set for the command in the guild. |
| `application_id` | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the application.          |

***

### `Discord Get Application Command Permissions`

Integration name: **DISCORD\_GET\_APPLICATION\_COMMAND\_PERMISSIONS**

Retrieves the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE\_GUILD and MANAGE\_ROLES permissions in the target guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example               | Description                                                      |
| ---------------- | ------ | :------: | --------------------- | ---------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the guild.               |
| `command_id`     | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the application command. |
| `application_id` | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the application.         |

***

### `Discord Get Batch Application Command Permissions`

Integration name: **DISCORD\_GET\_BATCH\_APPLICATION\_COMMAND\_PERMISSIONS**

Retrieves permissions for all commands of an application in a guild. Returns a list of permission objects for each command. Requires OAuth2 Bearer token (Bot tokens will error).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                |
| ---------------- | ------ | :------: | ------- | -------------------------- |
| `guild_id`       | string |     ✅    | —       | The ID of the guild.       |
| `application_id` | string |     ✅    | —       | The ID of the application. |

***

### `Discord Get Current User Application Entitlements`

Integration name: **DISCORD\_GET\_CURRENT\_USER\_APPLICATION\_ENTITLEMENTS**

Tool to retrieve entitlements for the current user for a given application. Use when you need to check what premium offerings or subscriptions the authenticated user has access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                 | Description                                                                                 |
| ----------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------- |
| `after`           | string  |          | —                       | Retrieve entitlements after this entitlement ID (snowflake). Used for forward pagination.   |
| `limit`           | integer |          | —                       | Maximum number of entitlements to return (1-100, default 100).                              |
| `before`          | string  |          | —                       | Retrieve entitlements before this entitlement ID (snowflake). Used for backward pagination. |
| `sku_ids`         | array   |          | —                       | Optional list of SKU IDs to filter entitlements by.                                         |
| `exclude_ended`   | boolean |          | —                       | Whether ended entitlements should be omitted. Defaults to false.                            |
| `application_id`  | string  |     ✅    | `"1215698105417207858"` | The ID of the application to retrieve entitlements for.                                     |
| `exclude_deleted` | boolean |          | —                       | Whether deleted entitlements should be omitted. Defaults to true.                           |

***

### `Discord Get Gateway`

Integration name: **DISCORD\_GET\_GATEWAY**

Tool to retrieve a valid WebSocket (wss) URL for establishing a Gateway connection to Discord. Use when you need to connect to the Discord Gateway for real-time events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Get Guild Template`

Integration name: **DISCORD\_GET\_GUILD\_TEMPLATE**

Tool to retrieve information about a Discord guild template using its unique template code. Use when you need to get details about a guild template for creating new servers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                             |
| --------- | ------ | :------: | ---------------- | ----------------------------------------------------------------------- |
| `code`    | string |     ✅    | `"asFz8FjydMJa"` | The unique template code identifier for the guild template to retrieve. |

***

### `Discord Get Guild Widget`

Integration name: **DISCORD\_GET\_GUILD\_WIDGET**

Tool to retrieve the guild widget in JSON format. Use when you need to get public information about a Discord guild's widget that can be displayed on external websites. The widget must be enabled in the guild's server settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                        |
| ---------- | ------ | :------: | --------------------- | -------------------------------------------------- |
| `guild_id` | string |     ✅    | `"81384788765712384"` | The unique identifier of the guild (snowflake ID). |

***

### `Discord Get Guild Widget Png`

Integration name: **DISCORD\_GET\_GUILD\_WIDGET\_PNG**

Tool to retrieve a PNG image widget for a Discord guild. Use when you need a visual representation of the guild widget that can be displayed on external websites. The widget must be enabled in the guild's server settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                                                                                                                                                    |
| ---------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `style`    | string |          | —                     | Customizes the visual appearance of the widget image. Options: 'shield' (compact badge-style), 'banner1', 'banner2', 'banner3', 'banner4' (various horizontal banner formats). |
| `guild_id` | string |     ✅    | `"81384788765712384"` | The unique identifier of the guild (snowflake ID).                                                                                                                             |

***

### `Discord Get Invite`

Integration name: **DISCORD\_GET\_INVITE**

DEPRECATED: Use DISCORD\_INVITE\_RESOLVE instead. Tool to retrieve information about a specific invite code. Use when you need to get details about a guild or channel associated with an invite. Response may be null or partial for expired, revoked, or inaccessible invites; do not infer guild membership or channel access from the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example              | Description                                                                                                                                                                                                                                                             |
| -------------------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invite_code`              | string  |     ✅    | `"0vCdhLbwjZZTWZLD"` | A single Discord invite code (e.g., "0vCdhLbwjZZTWZLD"). Can be provided as a bare code or as a full URL like "<https://discord.gg/0vCdhLbwjZZTWZLD>". Only one invite code should be provided. If multiple codes or URLs are present, only the first one will be used. |
| `with_counts`              | boolean |          | —                    | Whether to include approximate member and presence counts in the response (approximate\_member\_count and approximate\_presence\_count fields).                                                                                                                         |
| `with_expiration`          | boolean |          | —                    | Whether to include the expiration date (expires\_at field) in the response. Note: expires\_at is typically returned regardless of this parameter.                                                                                                                       |
| `guild_scheduled_event_id` | string  |          | —                    | The ID of a guild scheduled event to include with the invite. When provided, the response will include guild\_scheduled\_event details.                                                                                                                                 |

***

### `Discord Get My Guild Member`

Integration name: **DISCORD\_GET\_MY\_GUILD\_MEMBER**

Retrieves the guild member object for the currently authenticated user within a specified guild, including roles, nickname, join date, and permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                                                                               |
| ---------- | ------ | :------: | --------------------- | --------------------------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the Discord guild (server) from which to fetch the member object. |

***

### `Discord Get My Oauth2 Authorization`

Integration name: **DISCORD\_GET\_MY\_OAUTH2\_AUTHORIZATION**

Retrieves current OAuth2 authorization details for the application, including app info, scopes, token expiration, and user data (contingent on scopes like 'identify').

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Get My User`

Integration name: **DISCORD\_GET\_MY\_USER**

Fetches comprehensive profile information for the currently authenticated Discord user, including email if the 'email' scope is granted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Get Openid Connect Userinfo`

Integration name: **DISCORD\_GET\_OPENID\_CONNECT\_USERINFO**

Retrieve OpenID Connect compliant user information for the authenticated user. Returns standardized OIDC user claims (sub, email, nickname, picture, locale, etc.) following the OpenID Connect specification. Requires OAuth2 access token with 'openid' scope; additional fields require 'identify' and 'email' scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Get Public Keys`

Integration name: **DISCORD\_GET\_PUBLIC\_KEYS**

Tool to retrieve Discord OAuth2 public keys. Use when you need to verify OAuth2 tokens or access public keys for cryptographic operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Get Sku Subscription`

Integration name: **DISCORD\_GET\_SKU\_SUBSCRIPTION**

Retrieves a specific subscription by ID for a given SKU. Use to check details of a single user subscription.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                    |
| ----------------- | ------ | :------: | ------- | ---------------------------------------------- |
| `sku_id`          | string |     ✅    | —       | The ID of the SKU the subscription belongs to. |
| `subscription_id` | string |     ✅    | —       | The ID of the subscription to retrieve.        |

***

### `Discord Get User`

Integration name: **DISCORD\_GET\_USER**

Retrieve information about a Discord user. With OAuth Bearer token authentication, this returns the authenticated user's information (use '@me'). With Bot token authentication, you can query any user by their ID. Use this when you need user details like username, avatar, email (if email scope is granted), locale, premium status, or other profile information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |     ✅    | `"@me"` | The ID of the user to retrieve. Use '@me' to get the current authenticated user. Note: With OAuth Bearer token authentication, only '@me' is supported. With Bot token authentication, you can query any user ID (snowflake format). If you're unsure, start with '@me'. |

***

### `Discord Get User Application Role Connection`

Integration name: **DISCORD\_GET\_USER\_APPLICATION\_ROLE\_CONNECTION**

Retrieves the application role connection for the currently authenticated user for a specified application. Requires the role\_connections.write OAuth2 scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                | Description                                                                             |
| ---------------- | ------ | :------: | ---------------------- | --------------------------------------------------------------------------------------- |
| `application_id` | string |     ✅    | `"123456789012345678"` | The unique identifier (snowflake ID) of the application to get the role connection for. |

***

### `Discord Invite Resolve`

Integration name: **DISCORD\_INVITE\_RESOLVE**

Tool to resolve and retrieve information about a Discord invite code. Use when you need to get details about a guild, channel, or event associated with an invite code.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example         | Description                                                                                                                                                  |
| -------------------------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `code`                     | string  |     ✅    | `"discord-api"` | The invite code to resolve (e.g., "discord-api" for vanity URLs, "abc123xyz" for regular invite codes, or a full URL like "<https://discord.gg/abc123xyz>"). |
| `with_counts`              | boolean |          | —               | Whether to include approximate member counts (approximate\_member\_count and approximate\_presence\_count) in the response.                                  |
| `with_expiration`          | boolean |          | —               | Whether to include the expiration date (expires\_at) in the response. Note: This parameter is deprecated as expires\_at is now always returned.              |
| `guild_scheduled_event_id` | string  |          | —               | The guild scheduled event ID to include with the invite. When provided with a valid event ID, returns guild\_scheduled\_event data in the response.          |

***

### `Discord Leave Guild`

Integration name: **DISCORD\_LEAVE\_GUILD**

Leaves a Discord guild (server) on behalf of the currently authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                                 |
| ---------- | ------ | :------: | --------------------- | ----------------------------------------------------------- |
| `guild_id` | string |     ✅    | `"81384788765712384"` | The unique identifier (snowflake ID) of the guild to leave. |

***

### `Discord List My Connections`

Integration name: **DISCORD\_LIST\_MY\_CONNECTIONS**

Retrieves a list of the authenticated user's connected third-party accounts on Discord.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord List My Guilds`

Integration name: **DISCORD\_LIST\_MY\_GUILDS**

Lists the current user's guilds, returning partial data for each; primarily used for displaying server lists or verifying memberships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                    |
| ------------- | ------- | :------: | ------- | -------------------------------------------------------------- |
| `after`       | string  |          | —       | Get guilds after this guild ID.                                |
| `limit`       | integer |          | —       | Max number of guilds to return (1-200, default 200).           |
| `before`      | string  |          | —       | Get guilds before this guild ID.                               |
| `with_counts` | boolean |          | —       | Include approximate member and presence counts for each guild. |

***

### `Discord List Sku Subscriptions`

Integration name: **DISCORD\_LIST\_SKU\_SUBSCRIPTIONS**

Lists all subscriptions for a given SKU. When using a Bot token, the user\_id query parameter is required. Returns paginated subscription objects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                      |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `after`   | string  |          | —       | Retrieve subscriptions after this subscription ID for forward pagination.                        |
| `limit`   | integer |          | —       | Maximum number of subscriptions to return (1-100, default 100).                                  |
| `before`  | string  |          | —       | Retrieve subscriptions before this subscription ID for backward pagination.                      |
| `sku_id`  | string  |     ✅    | —       | The ID of the SKU to list subscriptions for.                                                     |
| `user_id` | string  |          | —       | The user ID to filter subscriptions for. Required when using a Bot token; not needed for OAuth2. |

***

### `Discord List Sticker Packs`

Integration name: **DISCORD\_LIST\_STICKER\_PACKS**

Tool to retrieve all available Discord Nitro sticker packs. Use when you need to list or browse official Discord sticker packs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discord Modify Current User`

Integration name: **DISCORD\_MODIFY\_CURRENT\_USER**

Modifies the currently authenticated Discord user's profile. Can update username (limited to 2 changes per hour) and avatar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                               |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `avatar`        | string  |          | —       | New avatar as a base64-encoded image data URI (e.g., 'data:image/png;base64,...').                        |
| `username`      | string  |          | —       | New username for the user. Limited to 2 changes per hour by Discord.                                      |
| `remove_avatar` | boolean |          | —       | Set to true to remove the user's avatar (sends null to Discord API). Cannot be used together with avatar. |

***

### `Discord Update User Application Role Connection`

Integration name: **DISCORD\_UPDATE\_USER\_APPLICATION\_ROLE\_CONNECTION**

Updates the application role connection for the currently authenticated user for a specified application. Requires the role\_connections.write OAuth2 scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                | Description                                                                                |
| ------------------- | ------ | :------: | ---------------------- | ------------------------------------------------------------------------------------------ |
| `metadata`          | object |          | —                      | Object mapping application role connection metadata keys to their string-ified values.     |
| `platform_name`     | string |          | —                      | The vanity name of the platform a bot has connected (max 50 characters).                   |
| `application_id`    | string |     ✅    | `"123456789012345678"` | The unique identifier (snowflake ID) of the application to update the role connection for. |
| `platform_username` | string |          | —                      | The username on the platform a bot has connected (max 100 characters).                     |

***


# Discordbot

Your Toolhouse AI Worker can connect to Discordbot using 165 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](https://toolhouse.app/auth-connections?authkit_slugs=discordbot).

## Tools (165)

### `Discordbot Add Group Dm User`

Integration name: **DISCORDBOT\_ADD\_GROUP\_DM\_USER**

Adds a user to a Discord group DM channel. Requires a user OAuth2 access token with the gdm.join scope. Bot tokens cannot be used for this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                |
| -------------- | ------ | :------: | ------- | -------------------------------------------------------------------------- |
| `nick`         | string |          | —       | Nickname for the user in the group DM.                                     |
| `user_id`      | string |     ✅    | —       | ID of the user to add to the group DM channel.                             |
| `channel_id`   | string |     ✅    | —       | ID of the group DM channel to add the user to.                             |
| `access_token` | string |          | —       | Access token of the user being added; must have the gdm.join OAuth2 scope. |

***

### `Discordbot Add Guild Member`

Integration name: **DISCORDBOT\_ADD\_GUILD\_MEMBER**

Adds a user to a Discord guild using their OAuth2 access token (which must have guilds.join scope). Returns the guild member object on 201 Created, or indicates the user is already a member on 204.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                      |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `deaf`         | boolean |          | —       | Whether the user should be server deafened in voice channels.                                    |
| `mute`         | boolean |          | —       | Whether the user should be server muted in voice channels.                                       |
| `nick`         | string  |          | —       | Nickname to set for the user in this guild. Maximum 32 characters.                               |
| `roles`        | array   |          | —       | List of role IDs to assign to the user upon joining.                                             |
| `user_id`      | string  |     ✅    | —       | The unique identifier (snowflake ID) of the user to add.                                         |
| `guild_id`     | string  |     ✅    | —       | The unique identifier (snowflake ID) of the guild to add the user to.                            |
| `access_token` | string  |     ✅    | —       | OAuth2 access token for the user, with guilds.join scope, to authorize adding them to the guild. |

***

### `Discordbot Add Guild Member Role`

Integration name: **DISCORDBOT\_ADD\_GUILD\_MEMBER\_ROLE**

Assigns a role to a guild member. Requires MANAGE\_ROLES permission and the role must be lower in hierarchy than the bot's highest role. Returns 204 on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------ |
| `role_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord role to be assigned to the member.     |
| `user_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord user to whom the role will be added.   |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the member and role exist. |

***

### `Discordbot Add My Message Reaction`

Integration name: **DISCORDBOT\_ADD\_MY\_MESSAGE\_REACTION**

Adds an emoji reaction from the bot to a message. Requires READ\_MESSAGE\_HISTORY, and ADD\_REACTIONS if no one else has reacted with this emoji yet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                   |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | —       | Emoji to react with. For Unicode emojis use the character directly (e.g., '👍'). For custom emojis use 'name:id' format (e.g., 'myemoji:123456789012345678'). |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message.                                                                                                                     |
| `message_id` | string |     ✅    | —       | ID of the message to react to.                                                                                                                                |

***

### `Discordbot Add Thread Member`

Integration name: **DISCORDBOT\_ADD\_THREAD\_MEMBER**

Adds a user to a specific, unarchived thread. The user must have access to the parent channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                              |
| ------------ | ------ | :------: | ------- | ---------------------------------------- |
| `user_id`    | string |     ✅    | —       | The ID of the user to add to the thread. |
| `channel_id` | string |     ✅    | —       | The ID of the thread to add the user to. |

***

### `Discordbot Ban User From Guild`

Integration name: **DISCORDBOT\_BAN\_USER\_FROM\_GUILD**

Permanently bans a user from a Discord guild, optionally deleting their recent messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                        |
| ------------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `user_id`                | string  |     ✅    | —       | The ID of the user to ban.                                                         |
| `guild_id`               | string  |     ✅    | —       | The ID of the guild to ban the user from.                                          |
| `delete_message_seconds` | integer |          | —       | Number of seconds (0-604800) of the user's past messages to delete. Defaults to 0. |

***

### `Discordbot Bulk Ban Users From Guild`

Integration name: **DISCORDBOT\_BULK\_BAN\_USERS\_FROM\_GUILD**

Bans up to 200 users from a Discord guild, optionally deleting their recent messages. Requires BAN\_MEMBERS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                         |
| ------------------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------- |
| `guild_id`               | string  |     ✅    | —       | The ID of the guild to ban users from.                                              |
| `user_ids`               | array   |     ✅    | —       | Array of user IDs to ban (maximum 200).                                             |
| `delete_message_seconds` | integer |          | —       | Number of seconds (0-604800) of messages to delete for banned users. Defaults to 0. |

***

### `Discordbot Bulk Delete Messages`

Integration name: **DISCORDBOT\_BULK\_DELETE\_MESSAGES**

Bulk deletes messages in a Discord channel. Requires MANAGE\_MESSAGES permission. Messages must be less than 14 days old. Between 2 and 100 messages can be deleted at once.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                        |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------- |
| `messages`   | array  |     ✅    | —       | List of message IDs to delete (2-100). All messages must be less than 14 days old. |
| `channel_id` | string |     ✅    | —       | ID of the channel from which to bulk delete messages.                              |

***

### `Discordbot Create Application Command`

Integration name: **DISCORDBOT\_CREATE\_APPLICATION\_COMMAND**

Creates a new global Discord application command. Global commands can take up to an hour to propagate. Command names must be unique per type within the application scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                           |
| ---------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------- |
| `name`                       | string  |     ✅    | —       | 1-32 character command name. For CHAT\_INPUT commands, must be lowercase.                             |
| `type`                       | integer |          | —       | Command type: 1 (CHAT\_INPUT, default), 2 (USER), 3 (MESSAGE).                                        |
| `options`                    | array   |          | —       | Array of command option objects (max 25). Each must have name, description, and type fields.          |
| `description`                | string  |          | —       | 1-100 character description for CHAT\_INPUT commands. Empty string or omit for USER/MESSAGE commands. |
| `dm_permission`              | boolean |          | —       | Whether the command is available in DMs (global commands only). Defaults to true.                     |
| `application_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                                      |
| `name_localizations`         | object  |          | —       | Localization dictionary mapping locale codes to localized names (1-32 chars each).                    |
| `description_localizations`  | object  |          | —       | Localization dictionary mapping locale codes to localized descriptions (1-100 chars each).            |
| `default_member_permissions` | string  |          | —       | Bitwise permission flags string a member needs. '0' disables for non-admins. Null allows everyone.    |

***

### `Discordbot Create Auto Moderation Rule`

Integration name: **DISCORDBOT\_CREATE\_AUTO\_MODERATION\_RULE**

Creates a new auto moderation rule for a Discord guild. Requires MANAGE\_GUILD permission. Use this to set up filters for profanity, spam, excessive mentions, or custom keywords.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                                                                                       |
| ------------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string  |     ✅    | —       | The name of the rule (1-100 characters).                                                                                                                          |
| `actions`          | array   |     ✅    | —       | The actions to execute when the rule is triggered (max 5).                                                                                                        |
| `enabled`          | boolean |          | —       | Whether the rule is enabled. Defaults to false.                                                                                                                   |
| `guild_id`         | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the rule will be created.                                                                         |
| `event_type`       | integer |     ✅    | —       | The event type: 1=MESSAGE\_SEND, 2=MEMBER\_UPDATE.                                                                                                                |
| `exempt_roles`     | array   |          | —       | Role IDs not affected by the rule (max 20).                                                                                                                       |
| `trigger_type`     | integer |     ✅    | —       | The trigger type: 1=KEYWORD (max 6/guild), 3=SPAM (max 1/guild), 4=KEYWORD\_PRESET (max 1/guild), 5=MENTION\_SPAM (max 1/guild), 6=MEMBER\_PROFILE (max 1/guild). |
| `exempt_channels`  | array   |          | —       | Channel IDs not affected by the rule (max 50).                                                                                                                    |
| `trigger_metadata` | object  |          | —       | Additional metadata associated with the rule's trigger type.                                                                                                      |

***

### `Discordbot Create Channel Invite`

Integration name: **DISCORDBOT\_CREATE\_CHANNEL\_INVITE**

Creates a new invite link for a Discord channel. Requires CREATE\_INSTANT\_INVITE permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                  |
| ----------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------ |
| `unique`                | boolean |          | —       | If true, do not reuse a similar invite. Useful for creating many unique one-time invites.                    |
| `max_age`               | integer |          | —       | Duration of invite in seconds before expiry, or 0 for never. Must be 0-604800. Defaults to 86400 (24 hours). |
| `max_uses`              | integer |          | —       | Maximum number of times this invite can be used, or 0 for unlimited. Defaults to 0.                          |
| `temporary`             | boolean |          | —       | Whether this invite only grants temporary membership. Defaults to false.                                     |
| `channel_id`            | string  |     ✅    | —       | The ID of the channel to create an invite for.                                                               |
| `target_type`           | integer |          | —       | The type of target for this voice channel invite. 1 for Stream, 2 for Embedded Application.                  |
| `target_user_id`        | string  |          | —       | The ID of the user whose stream to display. Required if target\_type is 1.                                   |
| `target_application_id` | string  |          | —       | The ID of the embedded application to open. Required if target\_type is 2.                                   |

***

### `Discordbot Create Dm`

Integration name: **DISCORDBOT\_CREATE\_DM**

Creates a new direct message (DM) channel or retrieves an existing one, using recipient\_id for a 1-on-1 DM or access\_tokens for a group DM; this action only establishes or fetches the channel and does not send messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                       |
| --------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `nicks`         | object |          | —       | Custom nicknames for users in a group DM. Keys are User IDs, values are nicknames. Only used with access\_tokens. |
| `recipient_id`  | string |          | —       | The User ID (snowflake) for a 1-on-1 DM. Use this OR access\_tokens, not both.                                    |
| `access_tokens` | array  |          | —       | OAuth2 access tokens for users in a group DM (1 to 9 others). Use this OR recipient\_id, not both.                |

***

### `Discordbot Create Guild`

Integration name: **DISCORDBOT\_CREATE\_GUILD**

Creates a new Discord guild (server). The bot must be in fewer than 10 guilds to use this endpoint. Icon must be a base64 encoded 128x128 image, and if afk\_channel\_id is set, afk\_timeout must also be set.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example | Description                                                                            |
| ------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------- |
| `icon`                          | string  |          | —       | Base64 encoded 128x128 image (JPEG, PNG, or GIF) for the guild icon.                   |
| `name`                          | string  |     ✅    | —       | The name of the guild (2-100 characters).                                              |
| `roles`                         | array   |          | —       | Array of role objects for the new guild. The first role sets @everyone permissions.    |
| `region`                        | string  |          | —       | Voice region ID (deprecated; handled automatically by Discord).                        |
| `channels`                      | array   |          | —       | Array of channel objects for the new guild.                                            |
| `afk_timeout`                   | integer |          | —       | AFK timeout in seconds (60, 300, 900, 1800, 3600).                                     |
| `description`                   | string  |          | —       | The description for the guild.                                                         |
| `afk_channel_id`                | string  |          | —       | The ID of the channel to which AFK users are moved. Must be a voice channel.           |
| `preferred_locale`              | string  |          | —       | The preferred locale for a Community guild. Defaults to en-US.                         |
| `system_channel_id`             | string  |          | —       | The ID of the channel where guild system messages are posted.                          |
| `verification_level`            | integer |          | —       | Verification level (0: None, 1: Low, 2: Medium, 3: High, 4: Highest).                  |
| `system_channel_flags`          | integer |          | —       | Bitwise value of system channel flags that control which system messages are sent.     |
| `explicit_content_filter`       | integer |          | —       | Explicit content filter level (0: Disabled, 1: Members without roles, 2: All members). |
| `default_message_notifications` | integer |          | —       | Default message notification level (0: All Messages, 1: Only @mentions).               |

***

### `Discordbot Create Guild Application Command`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_APPLICATION\_COMMAND**

Creates a new guild-specific application command. Command names must be unique per type within the guild (max 100 total commands).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                  |
| ---------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `name`                       | string  |     ✅    | —       | 1-32 character command name. For CHAT\_INPUT commands, must be lowercase.                    |
| `type`                       | integer |          | —       | Command type: 1 (CHAT\_INPUT, default), 2 (USER), 3 (MESSAGE).                               |
| `options`                    | array   |          | —       | Array of command option objects (max 25).                                                    |
| `guild_id`                   | string  |     ✅    | —       | The unique identifier (snowflake ID) of the guild.                                           |
| `description`                | string  |          | —       | 1-100 character description for CHAT\_INPUT commands. Empty string or omit for USER/MESSAGE. |
| `dm_permission`              | boolean |          | —       | Whether the command is available in DMs. Only for globally-scoped commands.                  |
| `application_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                             |
| `name_localizations`         | object  |          | —       | Localization dictionary mapping locale codes to localized names.                             |
| `description_localizations`  | object  |          | —       | Localization dictionary mapping locale codes to localized descriptions.                      |
| `default_member_permissions` | string  |          | —       | Bitwise permission flags string. '0' disables for non-admins.                                |

***

### `Discordbot Create Guild Channel`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_CHANNEL**

Creates a new Discord channel (text, voice, category, etc.) within a guild. Requires MANAGE\_CHANNELS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type    | Required | Example | Description                                                                                                                               |
| ------------------------------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                               | string  |     ✅    | —       | Channel name (1-100 characters).                                                                                                          |
| `nsfw`                               | boolean |          | —       | Whether the channel is age-restricted.                                                                                                    |
| `type`                               | integer |          | —       | Type of channel (0: GUILD\_TEXT, 2: GUILD\_VOICE, 4: GUILD\_CATEGORY, 5: GUILD\_ANNOUNCEMENT, 13: GUILD\_STAGE\_VOICE, 15: GUILD\_FORUM). |
| `topic`                              | string  |          | —       | Channel topic (0-1024 characters for text; 0-4096 for forum/media channels).                                                              |
| `bitrate`                            | integer |          | —       | Bitrate (in bits) for voice channels (8000-96000; up to 128000 for VIP servers).                                                          |
| `guild_id`                           | string  |     ✅    | —       | ID of the guild (server) to create the channel in.                                                                                        |
| `position`                           | integer |          | —       | Sorting position of the channel.                                                                                                          |
| `parent_id`                          | string  |          | —       | ID of the parent category for this channel.                                                                                               |
| `rtc_region`                         | string  |          | —       | Voice region ID for voice channels (auto if not set).                                                                                     |
| `user_limit`                         | integer |          | —       | Maximum users in a voice channel (0 for no limit, 1-99).                                                                                  |
| `available_tags`                     | array   |          | —       | List of tag objects for forum/media channels (max 20). Each needs a name field.                                                           |
| `default_sort_order`                 | integer |          | —       | Default sort order for forum posts: 0 for Latest Activity, 1 for Creation Date.                                                           |
| `video_quality_mode`                 | integer |          | —       | Camera video quality for voice channels: 1 for auto, 2 for 720p.                                                                          |
| `rate_limit_per_user`                | integer |          | —       | Slowmode: seconds a user must wait before sending another message (0-21600).                                                              |
| `default_forum_layout`               | integer |          | —       | Default forum layout: 0 for Not Set, 1 for List View, 2 for Gallery View.                                                                 |
| `permission_overwrites`              | array   |          | —       | Permission overwrite objects for the channel.                                                                                             |
| `default_reaction_emoji`             | object  |          | —       | Default reaction emoji for forum/media channels. Must contain emoji\_id or emoji\_name.                                                   |
| `default_auto_archive_duration`      | integer |          | —       | Default duration (minutes) for new threads to auto-archive (60, 1440, 4320, 10080).                                                       |
| `default_thread_rate_limit_per_user` | integer |          | —       | Initial rate\_limit\_per\_user for new threads in text channels.                                                                          |

***

### `Discordbot Create Guild Emoji`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_EMOJI**

Creates a new custom emoji in a specified Discord guild, requiring CREATE\_EXPRESSIONS permission and adherence to guild emoji limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                                                                                   |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`     | string |     ✅    | —       | The name for the new emoji. Must be between 2 and 32 characters long and can only contain alphanumeric characters and underscores.                                                                            |
| `image`    | string |     ✅    | —       | The base64 encoded image data for the emoji. Must be a 128x128px GIF or PNG. The data must be URI encoded (e.g., 'data:image/png;base64,BASE64\_ENCODED\_IMAGE\_DATA'). Image size should be less than 256KB. |
| `roles`    | array  |          | —       | An array of role IDs to which this emoji will be restricted. If omitted or empty, the emoji is available to @everyone.                                                                                        |
| `guild_id` | string |     ✅    | —       | The ID of the Discord guild (server) where the emoji will be created.                                                                                                                                         |

***

### `Discordbot Create Guild From Template`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_FROM\_TEMPLATE**

Creates a new Discord guild by applying channels, roles, and settings from a specified guild template code.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                       |
| --------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------- |
| `icon`          | string |          | —       | Data URI scheme (e.g., 'data:image/png;base64,...') for the guild's 128x128 icon. |
| `name`          | string |     ✅    | —       | Name for the new guild (2-100 characters).                                        |
| `template_code` | string |     ✅    | —       | The unique code of the guild template to use.                                     |

***

### `Discordbot Create Guild Role`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_ROLE**

Creates a new role in a Discord guild with customizable name, permissions, color, hoist, mentionability, and icon. Requires MANAGE\_ROLES permission. The icon and unicode\_emoji fields are mutually exclusive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                   |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------- |
| `icon`          | string  |          | —       | Hash of a custom image for the role's icon. Mutually exclusive with unicode\_emoji.           |
| `name`          | string  |          | —       | Name for the new role. If omitted, Discord defaults to 'new role'.                            |
| `color`         | integer |          | —       | RGB color value for the role as an integer (e.g., red is 16711680). Defaults to 0 (no color). |
| `hoist`         | boolean |          | —       | If true, displays the role separately in the member list. Defaults to false.                  |
| `guild_id`      | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the role will be created.     |
| `mentionable`   | boolean |          | —       | If true, this role can be mentioned by others. Defaults to false.                             |
| `permissions`   | string  |          | —       | Bitwise integer for role permissions combined from Discord permission flags.                  |
| `unicode_emoji` | string  |          | —       | Standard Unicode emoji for the role's icon. Mutually exclusive with icon.                     |

***

### `Discordbot Create Guild Scheduled Event`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_SCHEDULED\_EVENT**

Creates a new scheduled event in a Discord guild. Events can be hosted in stage channels, voice channels, or external locations. STAGE\_INSTANCE/VOICE require channel\_id, while EXTERNAL requires entity\_metadata with a location and scheduled\_end\_time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                    |
| ---------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `name`                 | string  |     ✅    | —       | The name of the scheduled event (1-100 characters).                                                                            |
| `image`                | string  |          | —       | The cover image as a base64 data URI (e.g., 'data:image/png;base64,...').                                                      |
| `guild_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the event will be created.                                     |
| `channel_id`           | string  |          | —       | The channel ID where the event will be hosted. Required for STAGE\_INSTANCE and VOICE entity types. Must be null for EXTERNAL. |
| `description`          | string  |          | —       | The description of the scheduled event (1-1000 characters).                                                                    |
| `entity_type`          | integer |     ✅    | —       | The entity type: 1=STAGE\_INSTANCE, 2=VOICE, 3=EXTERNAL.                                                                       |
| `privacy_level`        | integer |          | —       | The privacy level of the event. Use 2 for GUILD\_ONLY (only accessible to guild members).                                      |
| `entity_metadata`      | object  |          | —       | Additional metadata for the guild scheduled event.                                                                             |
| `scheduled_end_time`   | string  |          | —       | The time the event will end (ISO8601 timestamp). Required for EXTERNAL entity type.                                            |
| `scheduled_start_time` | string  |     ✅    | —       | The time the event will start (ISO8601 timestamp, e.g., '2024-12-31T20:00:00').                                                |

***

### `Discordbot Create Guild Sticker`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_STICKER**

Uploads a PNG, APNG, GIF, or Lottie JSON file (max 512KB) as a new custom sticker to the specified Discord guild; requires Manage Expressions permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                |
| ------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------- |
| `file`        | object |     ✅    | —       | Sticker file to upload (PNG, APNG, GIF, or Lottie JSON, max 512KB).                                                        |
| `name`        | string |     ✅    | —       | Name of the sticker (2-30 characters).                                                                                     |
| `tags`        | string |     ✅    | —       | Autocomplete suggestion tags (comma-separated, max 200 characters) for the sticker; corresponds to the Discord emoji name. |
| `guild_id`    | string |     ✅    | —       | ID of the guild to create the sticker for.                                                                                 |
| `description` | string |          | —       | Description for the sticker (empty or 2-100 characters).                                                                   |

***

### `Discordbot Create Guild Template`

Integration name: **DISCORDBOT\_CREATE\_GUILD\_TEMPLATE**

Creates a template of an existing Discord guild's structure (settings, roles, channels) but not its content (messages, members).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                     |
| ------------- | ------ | :------: | ------- | --------------------------------------------------------------- |
| `name`        | string |     ✅    | —       | Name for the new guild template (1-100 characters).             |
| `guild_id`    | string |     ✅    | —       | ID of the existing guild from which to create the template.     |
| `description` | string |          | —       | Optional description for the guild template (0-120 characters). |

***

### `Discordbot Create Interaction Response`

Integration name: **DISCORDBOT\_CREATE\_INTERACTION\_RESPONSE**

Sends a response to a Discord interaction (e.g., slash command, component). Ensure response type is context-appropriate and initial reply is within 3 seconds.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                      |
| ------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`              | object  |          | —       | Data payload for an interaction callback response.                                                                                                                               |
| `type`              | integer |     ✅    | —       | Type of response: 1 (Pong), 4 (ChannelMessageWithSource), 5 (DeferredChannelMessageWithSource), 6 (DeferredMessageUpdate), 7 (UpdateMessage), 8 (AutocompleteResult), 9 (Modal). |
| `interaction_id`    | string  |     ✅    | —       | ID of the originating user interaction (e.g., slash command, button).                                                                                                            |
| `interaction_token` | string  |     ✅    | —       | Temporary token for responding to the interaction, valid for 15 minutes.                                                                                                         |

***

### `Discordbot Create Message`

Integration name: **DISCORDBOT\_CREATE\_MESSAGE**

Sends a message to a Discord channel. Supports text content, embeds, stickers, components, and replies. Requires SEND\_MESSAGES permission and at least one of content, embeds, sticker\_ids, or components.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                             |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tts`               | boolean |          | —       | Whether this is a text-to-speech message.                                                                                                                                               |
| `flags`             | integer |          | —       | Message flags (e.g., 4 for SUPPRESS\_EMBEDS, 64 for EPHEMERAL).                                                                                                                         |
| `embeds`            | array   |          | —       | Up to 10 embed objects. Each embed can contain title, description, url, timestamp, color, footer, image, thumbnail, video, provider, author, and fields.                                |
| `content`           | string  |          | —       | Message text content (max 2000 characters). Required if embeds, sticker\_ids, and components are all empty.                                                                             |
| `channel_id`        | string  |     ✅    | —       | ID of the channel to send the message to.                                                                                                                                               |
| `components`        | array   |          | —       | Up to 5 action rows of interactive components (buttons, select menus).                                                                                                                  |
| `sticker_ids`       | array   |          | —       | Up to 3 sticker IDs accessible to the bot.                                                                                                                                              |
| `allowed_mentions`  | object  |          | —       | Controls which mentions in content trigger notifications. Keys: parse (list of 'roles', 'users', 'everyone'), roles (list of role IDs), users (list of user IDs), replied\_user (bool). |
| `message_reference` | object  |          | —       | Reference for replying to a message. Requires message\_id. Optional: channel\_id, guild\_id, fail\_if\_not\_exists.                                                                     |

***

### `Discordbot Create Stage Instance`

Integration name: **DISCORDBOT\_CREATE\_STAGE\_INSTANCE**

Creates a new Stage instance in a Stage channel for hosting live audio events. Requires MANAGE\_CHANNELS, MUTE\_MEMBERS, and MOVE\_MEMBERS permissions. A Stage channel can only have one active instance at a time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                               |
| ------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `topic`                   | string  |     ✅    | —       | The topic/title of the Stage instance (1-120 characters).                                                 |
| `channel_id`              | string  |     ✅    | —       | The ID of the Stage channel (type 13) where the Stage instance will be created.                           |
| `privacy_level`           | integer |          | —       | The privacy level: 2 for GUILD\_ONLY. Defaults to 2 if not specified.                                     |
| `send_start_notification` | boolean |          | —       | Whether to send a notification to @everyone when the Stage starts. Requires MENTION\_EVERYONE permission. |

***

### `Discordbot Create Thread`

Integration name: **DISCORDBOT\_CREATE\_THREAD**

Creates a new thread in a text, announcement, forum, or media channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                              |
| ----------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------- |
| `name`                  | string  |     ✅    | —       | The name of the thread (1-100 characters).                                                               |
| `type`                  | integer |          | —       | The type of thread to create. 10 for announcement, 11 for public, 12 for private.                        |
| `message`               | object  |          | —       | The initial message to send in the thread. Required for forum and media channels.                        |
| `invitable`             | boolean |          | —       | Whether non-moderators can add other non-moderators to the thread. Only for private threads.             |
| `channel_id`            | string  |     ✅    | —       | The ID of the channel in which the new thread will be created.                                           |
| `applied_tags`          | array   |          | —       | Array of tag IDs to apply to the thread. Only for forum and media channels.                              |
| `rate_limit_per_user`   | integer |          | —       | Seconds a user must wait before sending another message (0-21600).                                       |
| `auto_archive_duration` | integer |          | —       | Duration in minutes to automatically archive the thread after inactivity. Values: 60, 1440, 4320, 10080. |

***

### `Discordbot Create Thread From Message`

Integration name: **DISCORDBOT\_CREATE\_THREAD\_FROM\_MESSAGE**

Creates a new thread from a specific message in a Discord channel, requiring CREATE\_PUBLIC\_THREADS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                       |
| ----------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `name`                  | string  |     ✅    | —       | The name for the new thread (1-100 characters).                                                                   |
| `channel_id`            | string  |     ✅    | —       | The ID of the channel containing the message to create a thread from.                                             |
| `message_id`            | string  |     ✅    | —       | The ID of the message to create the thread from.                                                                  |
| `rate_limit_per_user`   | integer |          | —       | Seconds a user must wait before sending another message in the thread (0-21600).                                  |
| `auto_archive_duration` | integer |          | —       | Duration in minutes to automatically archive the thread after inactivity. Accepted values: 60, 1440, 4320, 10080. |

***

### `Discordbot Create Webhook`

Integration name: **DISCORDBOT\_CREATE\_WEBHOOK**

Creates a new webhook in a specified Discord channel, requiring MANAGE\_WEBHOOKS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                              |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | —       | Name for the webhook (1-80 characters).                                                  |
| `avatar`     | string |          | —       | Base64-encoded image data URI for the webhook avatar (e.g. 'data:image/png;base64,...'). |
| `channel_id` | string |     ✅    | —       | The ID of the channel to create the webhook in.                                          |

***

### `Discordbot Crosspost Message`

Integration name: **DISCORDBOT\_CROSSPOST\_MESSAGE**

Crossposts a message from an announcement channel to all channels following it. The message must not have been previously crossposted and must not be a system message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                         |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | ID of the announcement channel containing the message to crosspost. |
| `message_id` | string |     ✅    | —       | ID of the message to crosspost to all following channels.           |

***

### `Discordbot Delete All Message Reactions`

Integration name: **DISCORDBOT\_DELETE\_ALL\_MESSAGE\_REACTIONS**

Removes all reactions from a message. Requires MANAGE\_MESSAGES permission. This removes reactions from all users, not just the bot.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                     |
| ------------ | ------ | :------: | ------- | ----------------------------------------------- |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message.       |
| `message_id` | string |     ✅    | —       | ID of the message to remove all reactions from. |

***

### `Discordbot Delete All Message Reactions By Emoji`

Integration name: **DISCORDBOT\_DELETE\_ALL\_MESSAGE\_REACTIONS\_BY\_EMOJI**

Removes all reactions for a specific emoji from a message. Requires MANAGE\_MESSAGES permission. Removes reactions from all users, not just the bot.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                            |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | —       | Emoji to remove all reactions for. For Unicode emojis use the character directly (e.g., '👍'). For custom emojis use 'name:id' format. |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message.                                                                                              |
| `message_id` | string |     ✅    | —       | ID of the message to remove reactions from.                                                                                            |

***

### `Discordbot Delete Application Command`

Integration name: **DISCORDBOT\_DELETE\_APPLICATION\_COMMAND**

Permanently deletes a global application command. This is irreversible and the command will no longer appear in Discord clients. Global command deletions can take up to 1 hour to propagate.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                            |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------- |
| `command_id`     | string |     ✅    | —       | The unique identifier (snowflake ID) of the command to permanently delete.             |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application that owns the command. |

***

### `Discordbot Delete Auto Moderation Rule`

Integration name: **DISCORDBOT\_DELETE\_AUTO\_MODERATION\_RULE**

Permanently deletes a specific auto moderation rule from a Discord guild. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                    |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------ |
| `rule_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the auto moderation rule to delete.    |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild containing the rule. |

***

### `Discordbot Delete Channel`

Integration name: **DISCORDBOT\_DELETE\_CHANNEL**

Permanently deletes a Discord channel by its ID. This action is irreversible. Returns the deleted channel object (not 204).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                 |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | The unique identifier of the Discord channel to be deleted. |

***

### `Discordbot Delete Channel Permission Overwrite`

Integration name: **DISCORDBOT\_DELETE\_CHANNEL\_PERMISSION\_OVERWRITE**

Removes channel-specific permission overwrites for a user or role, reverting them to default permissions inherited from the server or category. Requires MANAGE\_ROLES permission. This action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                          |
| -------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------ |
| `channel_id`   | string |     ✅    | —       | ID of the Discord guild channel from which the permission overwrite will be removed. |
| `overwrite_id` | string |     ✅    | —       | ID of the user or role whose permission overwrite will be deleted from the channel.  |

***

### `Discordbot Delete Group Dm User`

Integration name: **DISCORDBOT\_DELETE\_GROUP\_DM\_USER**

Removes a recipient from a Discord group DM channel. Requires OAuth2 user access tokens with the gdm.join scope. Only the group DM owner or managing application can remove recipients.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                        |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------- |
| `user_id`    | string |     ✅    | —       | The unique identifier of the user to be removed from the group DM channel.         |
| `channel_id` | string |     ✅    | —       | The unique identifier of the group DM channel from which the user will be removed. |

***

### `Discordbot Delete Guild`

Integration name: **DISCORDBOT\_DELETE\_GUILD**

Permanently deletes a specified Discord guild (server). The authenticated user must be the owner of the guild. This action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                        |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------ |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server) to be deleted. |

***

### `Discordbot Delete Guild Application Command`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_APPLICATION\_COMMAND**

Permanently deletes a guild-specific application command. This is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | —       | The unique identifier (snowflake ID) of the guild.                         |
| `command_id`     | string |     ✅    | —       | The unique identifier (snowflake ID) of the command to permanently delete. |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.           |

***

### `Discordbot Delete Guild Emoji`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_EMOJI**

Permanently deletes a specified custom emoji from a guild, requiring Manage Expressions permissions; cannot delete default emojis and is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                               |
| ---------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------- |
| `emoji_id` | string |     ✅    | —       | The unique identifier of the custom emoji to be deleted from the guild.                   |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server) from which the emoji will be deleted. |

***

### `Discordbot Delete Guild Integration`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_INTEGRATION**

Permanently deletes a specific integration from a Discord guild, removing any associated webhooks and kicking the bot if present. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                            |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | —       | The unique identifier of the Discord guild from which the integration will be deleted. |
| `integration_id` | string |     ✅    | —       | The unique identifier of the integration to be deleted from the guild.                 |

***

### `Discordbot Delete Guild Member`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_MEMBER**

Removes (kicks) a member from a Discord guild. The user must be an existing member of the specified guild. Requires KICK\_MEMBERS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                      |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `user_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the user to be removed from the guild.                   |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild from which the member will be removed. |

***

### `Discordbot Delete Guild Member Role`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_MEMBER\_ROLE**

Removes a specified role from a member of a Discord guild. Requires MANAGE\_ROLES permission and the role must be lower in hierarchy than the bot's highest role. Idempotent - succeeds even if member does not have the role.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                             |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------- |
| `role_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the role to be removed from the guild member.                   |
| `user_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the user whose role is to be removed.                           |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild from which the member's role will be removed. |

***

### `Discordbot Delete Guild Role`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_ROLE**

Permanently deletes a specified role from a Discord guild, revoking it from all members. Requires MANAGE\_ROLES permission and the target role must be lower in hierarchy than the bot's highest role.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                    |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------- |
| `role_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the role to be deleted.                                |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild from which the role will be deleted. |

***

### `Discordbot Delete Guild Scheduled Event`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_SCHEDULED\_EVENT**

Permanently deletes a specific scheduled event from a Discord guild. This action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                     |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the scheduled event to delete.          |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild containing the event. |

***

### `Discordbot Delete Guild Sticker`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_STICKER**

Permanently deletes a custom sticker from a Discord guild; the specified guild and sticker must exist, and this action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                        |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------- |
| `guild_id`   | string |     ✅    | —       | The unique identifier of the Discord guild from which the sticker will be deleted. |
| `sticker_id` | string |     ✅    | —       | The unique identifier of the sticker to be deleted.                                |

***

### `Discordbot Delete Guild Template`

Integration name: **DISCORDBOT\_DELETE\_GUILD\_TEMPLATE**

Deletes an existing guild template by its unique code from a specified guild, returning the deleted template's details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                  |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------ |
| `guild_id`      | string |     ✅    | —       | The ID of the guild from which the template will be deleted. |
| `template_code` | string |     ✅    | —       | The unique code of the guild template to be deleted.         |

***

### `Discordbot Delete Message`

Integration name: **DISCORDBOT\_DELETE\_MESSAGE**

Permanently deletes a message from a Discord channel. The bot can delete its own messages or, with MANAGE\_MESSAGES permission, delete messages from other users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                         |
| ------------ | ------ | :------: | ------- | --------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message to delete. |
| `message_id` | string |     ✅    | —       | ID of the message to delete.                        |

***

### `Discordbot Delete My Message Reaction`

Integration name: **DISCORDBOT\_DELETE\_MY\_MESSAGE\_REACTION**

Removes the bot's own emoji reaction from a message. Only removes the bot's reaction, not other users' reactions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                               |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | —       | Emoji to remove. For Unicode emojis use the character directly (e.g., '👍'). For custom emojis use 'name:id' format (e.g., 'myemoji:123456789012345678'). |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message.                                                                                                                 |
| `message_id` | string |     ✅    | —       | ID of the message to remove the reaction from.                                                                                                            |

***

### `Discordbot Delete Original Webhook Message`

Integration name: **DISCORDBOT\_DELETE\_ORIGINAL\_WEBHOOK\_MESSAGE**

Permanently deletes the original (@original) message posted by a webhook or interaction response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                            |
| --------------- | ------ | :------: | ------- | ---------------------------------------------------------------------- |
| `thread_id`     | string |          | —       | ID of the thread where the original message is located, if applicable. |
| `webhook_id`    | string |     ✅    | —       | The webhook or application ID.                                         |
| `webhook_token` | string |     ✅    | —       | The webhook or interaction token.                                      |

***

### `Discordbot Delete Stage Instance`

Integration name: **DISCORDBOT\_DELETE\_STAGE\_INSTANCE**

Permanently deletes the Stage instance for a given stage channel, ending the live audio event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                      |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `channel_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the stage channel whose Stage instance is to be deleted. |

***

### `Discordbot Delete Thread Member`

Integration name: **DISCORDBOT\_DELETE\_THREAD\_MEMBER**

Removes a user from a specified, unarchived thread. Requires MANAGE\_THREADS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                               |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------- |
| `user_id`    | string |     ✅    | —       | The ID of the user to remove from the thread.             |
| `channel_id` | string |     ✅    | —       | The ID of the thread from which the user will be removed. |

***

### `Discordbot Delete User Message Reaction`

Integration name: **DISCORDBOT\_DELETE\_USER\_MESSAGE\_REACTION**

Removes a specific user's emoji reaction from a message. Requires MANAGE\_MESSAGES permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                          |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | —       | Emoji to remove. For Unicode emojis use the character directly (e.g., '👍'). For custom emojis use 'name:id' format. |
| `user_id`    | string |     ✅    | —       | ID of the user whose reaction to remove.                                                                             |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message.                                                                            |
| `message_id` | string |     ✅    | —       | ID of the message to remove the reaction from.                                                                       |

***

### `Discordbot Delete Webhook`

Integration name: **DISCORDBOT\_DELETE\_WEBHOOK**

Permanently deletes a Discord webhook by its unique ID. This action is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                     |
| ------------ | ------ | :------: | ------- | ----------------------------------------------- |
| `webhook_id` | string |     ✅    | —       | The unique identifier of the webhook to delete. |

***

### `Discordbot Delete Webhook By Token`

Integration name: **DISCORDBOT\_DELETE\_WEBHOOK\_BY\_TOKEN**

Permanently deletes a Discord webhook using its ID and token, without bot authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                     |
| --------------- | ------ | :------: | ------- | ----------------------------------------------- |
| `webhook_id`    | string |     ✅    | —       | The unique identifier of the webhook to delete. |
| `webhook_token` | string |     ✅    | —       | The secret token of the webhook.                |

***

### `Discordbot Delete Webhook Message`

Integration name: **DISCORDBOT\_DELETE\_WEBHOOK\_MESSAGE**

Deletes a message previously sent by a Discord webhook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                        |
| --------------- | ------ | :------: | ------- | -------------------------------------------------- |
| `thread_id`     | string |          | —       | ID of the thread the message is in, if applicable. |
| `message_id`    | string |     ✅    | —       | The ID of the message to delete.                   |
| `webhook_id`    | string |     ✅    | —       | The unique ID of the webhook.                      |
| `webhook_token` | string |     ✅    | —       | The secret token for the webhook.                  |

***

### `Discordbot Execute Github Compatible Webhook`

Integration name: **DISCORDBOT\_EXECUTE\_GITHUB\_COMPATIBLE\_WEBHOOK**

Forwards GitHub event notifications to a Discord channel via a GitHub-compatible webhook endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                |
| --------------- | ------- | :------: | ------- | -------------------------------------------------------------------------- |
| `ref`           | string  |          | —       | Git reference involved in the event (e.g. 'refs/heads/main').              |
| `wait`          | boolean |          | —       | If true, waits for message confirmation before responding.                 |
| `issue`         | object  |          | —       | GitHub issue object for issue-related events.                              |
| `action`        | string  |          | —       | Type of action that triggered the GitHub event (e.g. 'opened', 'created'). |
| `answer`        | object  |          | —       | Answer object for GitHub Discussions answer events.                        |
| `forced`        | boolean |          | —       | Whether the push was a force push.                                         |
| `forkee`        | object  |          | —       | New repository object created in fork events.                              |
| `member`        | object  |          | —       | GitHub member/user object for member-related events.                       |
| `review`        | object  |          | —       | GitHub pull request review object for review events.                       |
| `sender`        | object  |          | —       | GitHub user/application that triggered the event.                          |
| `comment`       | object  |          | —       | GitHub comment object for comment-related events.                          |
| `commits`       | array   |          | —       | List of commit details for push events.                                    |
| `compare`       | string  |          | —       | URL to view the comparison of changes.                                     |
| `release`       | object  |          | —       | GitHub release object for release events.                                  |
| `ref_type`      | string  |          | —       | Type of the Git reference (e.g. 'branch', 'tag').                          |
| `check_run`     | object  |          | —       | GitHub Check Run object for CI/CD events.                                  |
| `thread_id`     | string  |          | —       | ID of a target Discord thread for the message.                             |
| `discussion`    | object  |          | —       | GitHub Discussion object for discussion events.                            |
| `repository`    | object  |          | —       | GitHub repository object containing repo metadata.                         |
| `webhook_id`    | string  |     ✅    | —       | The unique identifier of the Discord webhook.                              |
| `check_suite`   | object  |          | —       | GitHub Check Suite object for grouped check runs.                          |
| `head_commit`   | object  |          | —       | Most recent commit object in push events.                                  |
| `pull_request`  | object  |          | —       | GitHub pull request object for PR-related events.                          |
| `webhook_token` | string  |     ✅    | —       | The secret token for the Discord webhook.                                  |

***

### `Discordbot Execute Slack Compatible Webhook`

Integration name: **DISCORDBOT\_EXECUTE\_SLACK\_COMPATIBLE\_WEBHOOK**

Sends messages to Discord via its Slack-compatible webhook endpoint, supporting Slack attachment formatting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                       |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------- |
| `text`          | string  |          | —       | The main message content (max 2000 characters). Supports Slack mrkdwn formatting. |
| `wait`          | boolean |          | —       | If true, waits for server confirmation before responding.                         |
| `icon_url`      | string  |          | —       | URL for the avatar icon, overriding the default webhook icon.                     |
| `username`      | string  |          | —       | Override the default webhook username (max 80 characters).                        |
| `thread_id`     | string  |          | —       | ID of a target thread within the channel to send the message to.                  |
| `webhook_id`    | string  |     ✅    | —       | The unique identifier of the Discord webhook.                                     |
| `attachments`   | array   |          | —       | Up to 10 Slack-style attachment objects for rich formatting.                      |
| `webhook_token` | string  |     ✅    | —       | The secret token for the Discord webhook.                                         |

***

### `Discordbot Execute Webhook`

Integration name: **DISCORDBOT\_EXECUTE\_WEBHOOK**

Executes a Discord webhook to send messages, embeds, or interactive components to a channel or thread.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                             |
| ------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------- |
| `tts`              | boolean |          | —       | Send as a text-to-speech message.                                                       |
| `poll`             | object  |          | —       | A poll object to attach to the message.                                                 |
| `wait`             | boolean |          | —       | If true, waits for server confirmation and returns a message object. Defaults to true.  |
| `flags`            | integer |          | —       | Message flags bitfield (e.g. 4 for SUPPRESS\_EMBEDS, 4096 for SUPPRESS\_NOTIFICATIONS). |
| `embeds`           | array   |          | —       | Up to 10 embed objects for rich content.                                                |
| `content`          | string  |          | —       | Message text content (max 2000 characters).                                             |
| `username`         | string  |          | —       | Override the default username of the webhook (max 80 characters).                       |
| `thread_id`        | string  |          | —       | ID of a thread in the webhook's channel to send the message to.                         |
| `avatar_url`       | string  |          | —       | Override the default avatar of the webhook with a URL to an image.                      |
| `components`       | array   |          | —       | Message components (buttons, select menus), up to 5 action rows.                        |
| `webhook_id`       | string  |     ✅    | —       | The unique ID of the Discord webhook.                                                   |
| `thread_name`      | string  |          | —       | Name of a thread to create when executing on a forum channel (max 100 characters).      |
| `applied_tags`     | array   |          | —       | Array of tag IDs to apply to a forum thread (only works with thread\_name).             |
| `webhook_token`    | string  |     ✅    | —       | The secret token for the Discord webhook.                                               |
| `allowed_mentions` | object  |          | —       | Controls which mentions in content actually ping recipients.                            |

***

### `Discordbot Follow Channel`

Integration name: **DISCORDBOT\_FOLLOW\_CHANNEL**

Follows an Announcement Channel to relay its messages to a target channel via webhook. The bot must have MANAGE\_WEBHOOKS permission in the target channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example | Description                                                                                                                              |
| -------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `channel_id`         | string |     ✅    | —       | The ID of the Announcement Channel (type 5) to follow. This is the source channel whose messages will be relayed.                        |
| `webhook_channel_id` | string |     ✅    | —       | The ID of the target channel where messages from the followed Announcement Channel will be posted. Requires MANAGE\_WEBHOOKS permission. |

***

### `Discordbot Get Active Guild Threads`

Integration name: **DISCORDBOT\_GET\_ACTIVE\_GUILD\_THREADS**

Retrieves all active (non-archived) threads in a Discord guild that the bot can access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                          |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The ID of the guild to retrieve active threads from. |

***

### `Discordbot Get Application`

Integration name: **DISCORDBOT\_GET\_APPLICATION**

Retrieves the full details of a Discord application by its application\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                  |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------- |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application to retrieve. |

***

### `Discordbot Get Application Command`

Integration name: **DISCORDBOT\_GET\_APPLICATION\_COMMAND**

Retrieves a specific global application command by its application ID and command ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                      |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `command_id`     | string |     ✅    | —       | The unique identifier (snowflake ID) of the command to retrieve. |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application. |

***

### `Discordbot Get Application Role Connections Metadata`

Integration name: **DISCORDBOT\_GET\_APPLICATION\_ROLE\_CONNECTIONS\_METADATA**

Retrieves all role connection metadata records for a Discord application. Returns an empty list if none are configured.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                      |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application. |

***

### `Discordbot Get Application User Role Connection`

Integration name: **DISCORDBOT\_GET\_APPLICATION\_USER\_ROLE\_CONNECTION**

Fetches the role connection object for the current user for a specified Discord application. Requires OAuth2 with the role\_connections.write scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                   |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `application_id` | string |     ✅    | —       | The unique ID of the Discord application for which the user's role connection information is being requested. |

***

### `Discordbot Get Auto Moderation Rule`

Integration name: **DISCORDBOT\_GET\_AUTO\_MODERATION\_RULE**

Retrieves the complete configuration of a specific auto moderation rule within a Discord guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                   |
| ---------- | ------ | :------: | ------- | ----------------------------------------------------------------------------- |
| `rule_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the auto moderation rule to retrieve. |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild.                    |

***

### `Discordbot Get Bot Gateway`

Integration name: **DISCORDBOT\_GET\_BOT\_GATEWAY**

Retrieves the WSS URL, recommended shard count, and session start limits for connecting a bot to the Discord Gateway.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Get Channel`

Integration name: **DISCORDBOT\_GET\_CHANNEL**

Retrieves detailed metadata for a specific Discord channel by its channel\_id. Returns only channel metadata, not message content or member lists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                |
| ------------ | ------ | :------: | ------- | ------------------------------------------ |
| `channel_id` | string |     ✅    | —       | The ID of the Discord channel to retrieve. |

***

### `Discordbot Get Gateway`

Integration name: **DISCORDBOT\_GET\_GATEWAY**

Retrieves the WebSocket URL to connect to Discord's Gateway for receiving real-time events. This is a public endpoint that does not require authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Get Guild`

Integration name: **DISCORDBOT\_GET\_GUILD**

Retrieves detailed information for a specified Discord guild (server) by its guild\_id, optionally including approximate member and presence counts if with\_counts is true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                     |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------- |
| `guild_id`    | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) to retrieve. |
| `with_counts` | boolean |          | —       | When true, includes approximate member and presence counts for the guild.       |

***

### `Discordbot Get Guild Application Command`

Integration name: **DISCORDBOT\_GET\_GUILD\_APPLICATION\_COMMAND**

Retrieves detailed information for a specific application command within a Discord guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                      |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild.       |
| `command_id`     | string |     ✅    | —       | The unique identifier (snowflake ID) of the command to retrieve. |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application. |

***

### `Discordbot Get Guild Application Command Permissions`

Integration name: **DISCORDBOT\_GET\_GUILD\_APPLICATION\_COMMAND\_PERMISSIONS**

Retrieves the permissions for a specific application command within a guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                      |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | —       | The unique identifier (snowflake ID) of the guild.               |
| `command_id`     | string |     ✅    | —       | The unique identifier (snowflake ID) of the command.             |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application. |

***

### `Discordbot Get Guild Ban`

Integration name: **DISCORDBOT\_GET\_GUILD\_BAN**

Fetches the ban details for a specific user in a Discord guild, if that user is currently banned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                     |
| ---------- | ------ | :------: | ------- | ----------------------------------------------- |
| `user_id`  | string |     ✅    | —       | The ID of the user to retrieve ban details for. |
| `guild_id` | string |     ✅    | —       | The ID of the guild.                            |

***

### `Discordbot Get Guild Emoji`

Integration name: **DISCORDBOT\_GET\_GUILD\_EMOJI**

Retrieves details for a specific custom emoji within a specified Discord guild, requiring valid and accessible guild and emoji IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                       |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------- |
| `emoji_id` | string |     ✅    | —       | The unique identifier of the custom emoji to retrieve.                                            |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) from which to fetch the emoji. |

***

### `Discordbot Get Guild Member`

Integration name: **DISCORDBOT\_GET\_GUILD\_MEMBER**

Retrieves detailed information for a specific member of a Discord guild, provided the bot belongs to the guild and has necessary permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                 |
| ---------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `user_id`  | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord user whose guild member information is to be retrieved. |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) from which to fetch the member.          |

***

### `Discordbot Get Guild Preview`

Integration name: **DISCORDBOT\_GET\_GUILD\_PREVIEW**

Fetches a public preview of a Discord guild by its ID, if the guild has the preview feature enabled.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                     |
| ---------- | ------ | :------: | ------- | --------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server) to preview. |

***

### `Discordbot Get Guild Scheduled Event`

Integration name: **DISCORDBOT\_GET\_GUILD\_SCHEDULED\_EVENT**

Retrieves a specific scheduled event from a Discord guild by its ID, optionally including the count of subscribed users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                     |
| ----------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------- |
| `event_id`        | string  |     ✅    | —       | The unique identifier (snowflake ID) of the scheduled event to retrieve.        |
| `guild_id`        | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild containing the event. |
| `with_user_count` | boolean |          | —       | When true, includes the count of users subscribed to the event in the response. |

***

### `Discordbot Get Guilds Onboarding`

Integration name: **DISCORDBOT\_GET\_GUILDS\_ONBOARDING**

Retrieves the onboarding settings for a specified Discord guild, including prompts, options, default channels, and enabled status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                              |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild for which to retrieve onboarding information. |

***

### `Discordbot Get Guild Sticker`

Integration name: **DISCORDBOT\_GET\_GUILD\_STICKER**

Retrieves a specific sticker from a Discord guild using the guild and sticker IDs; requires the sticker to exist in the guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                        |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------- |
| `guild_id`   | string |     ✅    | —       | The snowflake ID of the Discord guild (server) from which to retrieve the sticker. |
| `sticker_id` | string |     ✅    | —       | The snowflake ID of the sticker to retrieve.                                       |

***

### `Discordbot Get Guild Template`

Integration name: **DISCORDBOT\_GET\_GUILD\_TEMPLATE**

Retrieves the complete structure and details of a Discord guild template using its unique code.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                            |
| --------------- | ------ | :------: | ------- | -------------------------------------- |
| `template_code` | string |     ✅    | —       | The unique code of the guild template. |

***

### `Discordbot Get Guild Vanity Url`

Integration name: **DISCORDBOT\_GET\_GUILD\_VANITY\_URL**

Retrieves the vanity URL invite code and usage count for a Discord guild. Requires MANAGE\_GUILD permission and the VANITY\_URL feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                      |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild for which to retrieve the vanity URL. |

***

### `Discordbot Get Guild Webhooks`

Integration name: **DISCORDBOT\_GET\_GUILD\_WEBHOOKS**

Retrieves all webhooks for a specified Discord guild, requiring MANAGE\_WEBHOOKS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                               |
| ---------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild for which to retrieve webhooks. |

***

### `Discordbot Get Guild Welcome Screen`

Integration name: **DISCORDBOT\_GET\_GUILD\_WELCOME\_SCREEN**

Retrieves the welcome screen configuration for a Discord guild with the Community feature enabled. Returns the welcome screen description and up to 5 suggested channels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                      |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique snowflake ID of the Discord guild to retrieve the welcome screen for. |

***

### `Discordbot Get Guild Widget`

Integration name: **DISCORDBOT\_GET\_GUILD\_WIDGET**

Retrieves the public JSON widget data for a Discord guild, if the widget is enabled for that guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                      |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild for which to retrieve the widget JSON. |

***

### `Discordbot Get Guild Widget Png`

Integration name: **DISCORDBOT\_GET\_GUILD\_WIDGET\_PNG**

Tool to retrieve a PNG image widget for a Discord guild. Use when you need a visual representation of the guild widget that can be displayed on external websites. The widget must be enabled in the guild's server settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example               | Description                                                                                                                                                                    |
| ---------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `style`    | string |          | —                     | Customizes the visual appearance of the widget image. Options: 'shield' (compact badge-style), 'banner1', 'banner2', 'banner3', 'banner4' (various horizontal banner formats). |
| `guild_id` | string |     ✅    | `"81384788765712384"` | The unique identifier of the guild (snowflake ID).                                                                                                                             |

***

### `Discordbot Get Guild Widget Settings`

Integration name: **DISCORDBOT\_GET\_GUILD\_WIDGET\_SETTINGS**

Retrieves the widget settings for a specified Discord guild, indicating if the widget is enabled and its configured channel ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                      |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild for which to retrieve widget settings. |

***

### `Discordbot Get Message`

Integration name: **DISCORDBOT\_GET\_MESSAGE**

Retrieves a specific message from a Discord channel by channel and message ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                           |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | The ID of the Discord channel containing the message. |
| `message_id` | string |     ✅    | —       | The ID of the message to retrieve.                    |

***

### `Discordbot Get My Application`

Integration name: **DISCORDBOT\_GET\_MY\_APPLICATION**

Retrieves detailed information about the current authenticated Discord application via /applications/@me.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Get My Oauth2 Application`

Integration name: **DISCORDBOT\_GET\_MY\_OAUTH2\_APPLICATION**

Retrieves detailed information about the OAuth2 application associated with the current authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Get Original Webhook Message`

Integration name: **DISCORDBOT\_GET\_ORIGINAL\_WEBHOOK\_MESSAGE**

Retrieves the original (@original) message from a Discord webhook or interaction response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                 |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `thread_id`     | string |          | —       | ID of the thread where the original message was posted, if applicable.                      |
| `webhook_id`    | string |     ✅    | —       | The webhook or application ID. For interaction responses, this is the bot's application ID. |
| `webhook_token` | string |     ✅    | —       | The webhook or interaction token. For interactions, valid for 15 minutes.                   |

***

### `Discordbot Get Public Keys`

Integration name: **DISCORDBOT\_GET\_PUBLIC\_KEYS**

Retrieves Discord's OAuth2 public keys in JWK format for verifying access tokens. Keys may rotate, so refresh caches periodically.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Get Stage Instance`

Integration name: **DISCORDBOT\_GET\_STAGE\_INSTANCE**

Retrieves the active Stage instance for a specified stage channel. Returns 404 if no active Stage instance exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                               |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the stage channel whose active Stage instance is to be retrieved. |

***

### `Discordbot Get Sticker`

Integration name: **DISCORDBOT\_GET\_STICKER**

Retrieves a specific Discord sticker by its unique ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                      |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `sticker_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the sticker to retrieve. |

***

### `Discordbot Get Thread Member`

Integration name: **DISCORDBOT\_GET\_THREAD\_MEMBER**

Retrieves a member from a specified thread using their user ID, optionally including guild member details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                           |
| ------------- | ------- | :------: | ------- | --------------------------------------------------------------------- |
| `user_id`     | string  |     ✅    | —       | The ID of the user whose membership in the thread is being retrieved. |
| `channel_id`  | string  |     ✅    | —       | The ID of the thread.                                                 |
| `with_member` | boolean |          | —       | If true, includes the full guild member object in the response.       |

***

### `Discordbot Get User`

Integration name: **DISCORDBOT\_GET\_USER**

Fetches public information for a Discord user by their user ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                           |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------- |
| `user_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord user to retrieve. |

***

### `Discordbot Get Webhook`

Integration name: **DISCORDBOT\_GET\_WEBHOOK**

Retrieves detailed information for a Discord webhook by its unique ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                               |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------- |
| `webhook_id` | string |     ✅    | —       | The unique identifier of the Discord webhook to retrieve. |

***

### `Discordbot Get Webhook By Token`

Integration name: **DISCORDBOT\_GET\_WEBHOOK\_BY\_TOKEN**

Retrieves a Discord webhook's configuration using its ID and token, without requiring bot authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                   |
| --------------- | ------ | :------: | ------- | --------------------------------------------- |
| `webhook_id`    | string |     ✅    | —       | The unique identifier of the Discord webhook. |
| `webhook_token` | string |     ✅    | —       | The secret token for the Discord webhook.     |

***

### `Discordbot Get Webhook Message`

Integration name: **DISCORDBOT\_GET\_WEBHOOK\_MESSAGE**

Retrieves a specific message previously sent by a Discord webhook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                         |
| --------------- | ------ | :------: | ------- | --------------------------------------------------- |
| `thread_id`     | string |          | —       | ID of the thread if the message is part of one.     |
| `message_id`    | string |     ✅    | —       | The unique ID of the message to retrieve.           |
| `webhook_id`    | string |     ✅    | —       | The unique ID of the webhook that sent the message. |
| `webhook_token` | string |     ✅    | —       | The secret token for the webhook.                   |

***

### `Discordbot Invite Resolve`

Integration name: **DISCORDBOT\_INVITE\_RESOLVE**

Resolves a Discord invite code to get its details, optionally including member counts and expiration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                          |
| ----------------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `invite_code`     | string  |     ✅    | —       | The unique invite code (e.g. 'nYUs4yAE' from 'discord.gg/nYUs4yAE'). |
| `with_counts`     | boolean |          | —       | If true, include approximate member and presence counts.             |
| `with_expiration` | boolean |          | —       | If true, include the expiration date of the invite.                  |

***

### `Discordbot Invite Revoke`

Integration name: **DISCORDBOT\_INVITE\_REVOKE**

Revokes a Discord invite using its code, permanently preventing new joins via this link.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                      |
| ------------- | ------ | :------: | ------- | ------------------------------------------------ |
| `invite_code` | string |     ✅    | —       | The unique code of the Discord invite to revoke. |

***

### `Discordbot Join Thread`

Integration name: **DISCORDBOT\_JOIN\_THREAD**

Joins the authenticated user to a thread specified by channel\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                   |
| ------------ | ------ | :------: | ------- | ----------------------------- |
| `channel_id` | string |     ✅    | —       | The ID of the thread to join. |

***

### `Discordbot Leave Guild`

Integration name: **DISCORDBOT\_LEAVE\_GUILD**

Enables the bot to leave a specified Discord guild (server). This action is irreversible and the bot must be re-invited to rejoin.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                  |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server) the bot wishes to leave. |

***

### `Discordbot Leave Thread`

Integration name: **DISCORDBOT\_LEAVE\_THREAD**

Removes the currently authenticated user from a specified thread.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                    |
| ------------ | ------ | :------: | ------- | ------------------------------ |
| `channel_id` | string |     ✅    | —       | The ID of the thread to leave. |

***

### `Discordbot List Application Commands`

Integration name: **DISCORDBOT\_LIST\_APPLICATION\_COMMANDS**

Fetches all global application commands for the specified Discord application. Does not include guild-specific commands.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                        |
| -------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `application_id`     | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                   |
| `with_localizations` | boolean |          | —       | Whether to include full localization dictionaries in the returned command objects. |

***

### `Discordbot List Auto Moderation Rules`

Integration name: **DISCORDBOT\_LIST\_AUTO\_MODERATION\_RULES**

Retrieves all auto moderation rules for a specified Discord guild. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                    |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild whose auto moderation rules to list. |

***

### `Discordbot List Channel Invites`

Integration name: **DISCORDBOT\_LIST\_CHANNEL\_INVITES**

Fetches all active invites for a given Discord channel. Requires MANAGE\_CHANNELS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                          |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------ |
| `channel_id` | string |     ✅    | —       | The ID of the channel to retrieve invites for. Requires MANAGE\_CHANNELS permission. |

***

### `Discordbot List Channel Webhooks`

Integration name: **DISCORDBOT\_LIST\_CHANNEL\_WEBHOOKS**

Retrieves all webhooks configured in a given Discord channel. Requires the MANAGE\_WEBHOOKS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                        |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------ |
| `channel_id` | string |     ✅    | —       | The unique identifier of the Discord channel to list webhooks for. |

***

### `Discordbot List Guild Application Command Permissions`

Integration name: **DISCORDBOT\_LIST\_GUILD\_APPLICATION\_COMMAND\_PERMISSIONS**

Retrieves all guild-level permission settings for all commands of a specific application within a guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                      |
| ---------------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `guild_id`       | string |     ✅    | —       | The unique identifier (snowflake ID) of the guild.               |
| `application_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application. |

***

### `Discordbot List Guild Application Commands`

Integration name: **DISCORDBOT\_LIST\_GUILD\_APPLICATION\_COMMANDS**

Fetches all application commands registered for a specific guild. Does not include global commands.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                        |
| -------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------- |
| `guild_id`           | string  |     ✅    | —       | The unique identifier (snowflake ID) of the guild to list commands for.            |
| `application_id`     | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                   |
| `with_localizations` | boolean |          | —       | Whether to include full localization dictionaries in the returned command objects. |

***

### `Discordbot List Guild Audit Log Entries`

Integration name: **DISCORDBOT\_LIST\_GUILD\_AUDIT\_LOG\_ENTRIES**

Retrieves audit log entries for a specified Discord guild, requiring VIEW\_AUDIT\_LOG permission. Supports filtering by user, action type, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                            |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------- |
| `after`       | string  |          | —       | Retrieve audit log entries after this entry ID for pagination.         |
| `limit`       | integer |          | —       | Maximum number of audit log entries to return (1-100). Defaults to 50. |
| `before`      | string  |          | —       | Retrieve audit log entries before this entry ID for pagination.        |
| `user_id`     | string  |          | —       | Filter logs by the ID of the user who performed the action.            |
| `guild_id`    | string  |     ✅    | —       | ID of the Discord guild for which to retrieve audit logs.              |
| `action_type` | integer |          | —       | Filter logs by a specific audit log event type.                        |

***

### `Discordbot List Guild Bans`

Integration name: **DISCORDBOT\_LIST\_GUILD\_BANS**

Fetches a list of users banned from a specified Discord guild. Requires BAN\_MEMBERS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                 |
| ---------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `after`    | string  |          | —       | Fetch bans for users with IDs after this user ID. For forward pagination.   |
| `limit`    | integer |          | —       | Maximum number of bans to return (1-1000).                                  |
| `before`   | string  |          | —       | Fetch bans for users with IDs before this user ID. For backward pagination. |
| `guild_id` | string  |     ✅    | —       | The ID of the guild to retrieve bans from.                                  |

***

### `Discordbot List Guild Channels`

Integration name: **DISCORDBOT\_LIST\_GUILD\_CHANNELS**

Fetches all channels (text, voice, category, etc.) for a specified Discord guild. Does not include threads or message content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                      |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | Identifier of the Discord guild (server) whose channels to list. |

***

### `Discordbot List Guild Emojis`

Integration name: **DISCORDBOT\_LIST\_GUILD\_EMOJIS**

Fetches all custom emoji objects for a specified Discord guild if the bot has access; returns only custom guild emojis, not standard Unicode or Nitro emojis.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                  |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) for which to list emojis. |

***

### `Discordbot List Guild Integrations`

Integration name: **DISCORDBOT\_LIST\_GUILD\_INTEGRATIONS**

Lists all integration objects for a specified Discord guild. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                |
| ---------- | ------ | :------: | ------- | -------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild for which to list integrations. |

***

### `Discordbot List Guild Invites`

Integration name: **DISCORDBOT\_LIST\_GUILD\_INVITES**

Retrieves all currently active invite codes for a specified Discord guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                          |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The ID of the guild to retrieve active invites from. |

***

### `Discordbot List Guild Members`

Integration name: **DISCORDBOT\_LIST\_GUILD\_MEMBERS**

Retrieves a list of members for a Discord guild. Requires GUILD\_MEMBERS intent. Supports pagination via limit and after parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                  |
| ---------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `after`    | string  |          | —       | User ID for pagination offset; fetches members with IDs greater than this value.             |
| `limit`    | integer |          | —       | Max number of members to return (1-1000). Defaults to 1 if not specified.                    |
| `guild_id` | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) to retrieve members from. |

***

### `Discordbot List Guild Roles`

Integration name: **DISCORDBOT\_LIST\_GUILD\_ROLES**

Fetches all roles in a Discord guild, providing details for each role including permissions, color, position, and other attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------ |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) to retrieve roles from. |

***

### `Discordbot List Guild Scheduled Events`

Integration name: **DISCORDBOT\_LIST\_GUILD\_SCHEDULED\_EVENTS**

Retrieves a list of scheduled events for a specified Discord guild, optionally including subscribed user counts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                               |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------- |
| `guild_id`        | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild whose scheduled events to list. |
| `with_user_count` | boolean |          | —       | When true, includes the count of users subscribed to each scheduled event.                |

***

### `Discordbot List Guild Scheduled Event Users`

Integration name: **DISCORDBOT\_LIST\_GUILD\_SCHEDULED\_EVENT\_USERS**

Fetches users who have expressed interest in a specific scheduled event within a Discord guild. Supports pagination and optional guild member data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                  |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------- |
| `after`       | string  |          | —       | Return users after this user ID for pagination.                              |
| `limit`       | integer |          | —       | Maximum number of users to return (1-100). Defaults to 100 if not specified. |
| `before`      | string  |          | —       | Return users before this user ID for pagination.                             |
| `event_id`    | string  |     ✅    | —       | The unique identifier (snowflake ID) of the scheduled event.                 |
| `guild_id`    | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild.                   |
| `with_member` | boolean |          | —       | When true, includes the guild member object for each user in the response.   |

***

### `Discordbot List Guild Stickers`

Integration name: **DISCORDBOT\_LIST\_GUILD\_STICKERS**

Retrieves all custom sticker objects for a Discord guild; does not include standard/Nitro stickers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                    |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) for which to list stickers. |

***

### `Discordbot List Guild Templates`

Integration name: **DISCORDBOT\_LIST\_GUILD\_TEMPLATES**

Retrieves all guild templates for an existing Discord guild, specified by its ID. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                 |
| ---------- | ------ | :------: | ------- | --------------------------------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild for which to retrieve templates. |

***

### `Discordbot List Guild Voice Regions`

Integration name: **DISCORDBOT\_LIST\_GUILD\_VOICE\_REGIONS**

Fetches a list of available voice regions for a specified Discord guild.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                          |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------- |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server). |

***

### `Discordbot List Message Reactions By Emoji`

Integration name: **DISCORDBOT\_LIST\_MESSAGE\_REACTIONS\_BY\_EMOJI**

Lists users who reacted to a message with a specific emoji. Supports pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                     |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `after`      | string  |          | —       | Get users after this user ID, for pagination.                                                                                   |
| `emoji`      | string  |     ✅    | —       | Emoji to get reactions for. For Unicode emojis use the character directly (e.g., '👍'). For custom emojis use 'name:id' format. |
| `limit`      | integer |          | —       | Max number of users to return (1-100, defaults to 25).                                                                          |
| `channel_id` | string  |     ✅    | —       | ID of the channel containing the message.                                                                                       |
| `message_id` | string  |     ✅    | —       | ID of the message to retrieve reactions from.                                                                                   |

***

### `Discordbot List Messages`

Integration name: **DISCORDBOT\_LIST\_MESSAGES**

Retrieves messages from a Discord channel, ordered newest first. Supports pagination via before/after/around parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                  |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------ |
| `after`      | string  |          | —       | Get messages after this message ID for forward pagination.   |
| `limit`      | integer |          | —       | Max number of messages to return (1-100, defaults to 50).    |
| `around`     | string  |          | —       | Get messages around this message ID.                         |
| `before`     | string  |          | —       | Get messages before this message ID for backward pagination. |
| `channel_id` | string  |     ✅    | —       | ID of the Discord channel to fetch messages from.            |

***

### `Discordbot List My Private Archived Threads`

Integration name: **DISCORDBOT\_LIST\_MY\_PRIVATE\_ARCHIVED\_THREADS**

Retrieves private archived threads from a channel that the current user is a member of.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                 |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `limit`      | integer |          | —       | Maximum number of threads to return (1-100).                                |
| `before`     | string  |          | —       | ISO8601 timestamp or thread ID. Returns threads archived before this value. |
| `channel_id` | string  |     ✅    | —       | The ID of the channel to retrieve private archived threads from.            |

***

### `Discordbot List Pinned Messages`

Integration name: **DISCORDBOT\_LIST\_PINNED\_MESSAGES**

Retrieves all pinned messages from a Discord channel. Returns up to 50 pinned messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                 |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | ID of the Discord channel to retrieve pinned messages from. |

***

### `Discordbot List Private Archived Threads`

Integration name: **DISCORDBOT\_LIST\_PRIVATE\_ARCHIVED\_THREADS**

Lists private archived threads in a Discord channel, sorted by most recent archival. Requires view access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                 |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `limit`      | integer |          | —       | Maximum number of threads to return (1-100).                                |
| `before`     | string  |          | —       | ISO8601 timestamp or thread ID. Returns threads archived before this value. |
| `channel_id` | string  |     ✅    | —       | The ID of the channel to retrieve private archived threads from.            |

***

### `Discordbot List Public Archived Threads`

Integration name: **DISCORDBOT\_LIST\_PUBLIC\_ARCHIVED\_THREADS**

Lists public archived threads in a Discord channel, sorted by most recent archival.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                 |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `limit`      | integer |          | —       | Maximum number of threads to return (1-100).                                |
| `before`     | string  |          | —       | ISO8601 timestamp or thread ID. Returns threads archived before this value. |
| `channel_id` | string  |     ✅    | —       | The ID of the channel to retrieve public archived threads from.             |

***

### `Discordbot List Sticker Packs`

Integration name: **DISCORDBOT\_LIST\_STICKER\_PACKS**

Fetches all available Nitro sticker packs from Discord, excluding custom or guild-specific sticker packs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot List Thread Members`

Integration name: **DISCORDBOT\_LIST\_THREAD\_MEMBERS**

Retrieves members of a specified Discord thread, with an option to include full guild member objects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                            |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------- |
| `after`       | string  |          | —       | User ID to paginate from, returning members after this ID.             |
| `limit`       | integer |          | —       | Maximum number of thread members to return (1-100).                    |
| `channel_id`  | string  |     ✅    | —       | The ID of the thread to retrieve members from.                         |
| `with_member` | boolean |          | —       | If true, includes the full guild member object for each thread member. |

***

### `Discordbot List Voice Regions`

Integration name: **DISCORDBOT\_LIST\_VOICE\_REGIONS**

Lists all available Discord voice regions that can be used when setting a voice or stage channel's region.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Pin Message`

Integration name: **DISCORDBOT\_PIN\_MESSAGE**

Pins a message in a Discord channel. Requires MANAGE\_MESSAGES permission. A channel can have at most 50 pinned messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                         |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the message to pin.                    |
| `message_id` | string |     ✅    | —       | ID of the message to pin. Channel cannot exceed 50 pinned messages. |

***

### `Discordbot Preview Prune Guild`

Integration name: **DISCORDBOT\_PREVIEW\_PRUNE\_GUILD**

Previews the number of members that would be pruned from a Discord guild based on inactivity days and optional roles; does not remove members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                               |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `days`          | integer |          | —       | Number of days of inactivity (1-30). Defaults to 7 if not specified.                                      |
| `guild_id`      | string  |     ✅    | —       | The unique identifier of the Discord guild for which to preview the prune operation.                      |
| `include_roles` | array   |          | —       | List of role IDs to include when calculating prune count. By default, members with roles are not counted. |

***

### `Discordbot Prune Guild`

Integration name: **DISCORDBOT\_PRUNE\_GUILD**

Removes inactive members from a Discord guild. Requires KICK\_MEMBERS permission. Set compute\_prune\_count=false for large guilds to avoid timeouts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                                                                           |
| --------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `days`                | integer |          | —       | Number of days a member must be inactive (1-30, default 7) to be eligible for pruning.                                |
| `guild_id`            | string  |     ✅    | —       | ID of the Discord guild for member pruning.                                                                           |
| `include_roles`       | array   |          | —       | List of role IDs. Members with a subset of these roles who are inactive will be pruned.                               |
| `compute_prune_count` | boolean |          | —       | If true (default), returns the actual count of pruned members. If false, returns null (recommended for large guilds). |

***

### `Discordbot Put Guilds Onboarding`

Integration name: **DISCORDBOT\_PUT\_GUILDS\_ONBOARDING**

Configures or updates a Discord guild's new member onboarding flow, including prompts, options, default channels, and enabled status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                                    |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `mode`                | integer |          | —       | Onboarding mode (0 = ONBOARDING\_DEFAULT, 1 = ONBOARDING\_ADVANCED).           |
| `enabled`             | boolean |          | —       | If true, the guild's onboarding flow is active.                                |
| `prompts`             | array   |          | —       | Up to 5 onboarding prompts for the guild.                                      |
| `guild_id`            | string  |     ✅    | —       | Guild's unique ID (snowflake) for which onboarding settings are being updated. |
| `default_channel_ids` | array   |          | —       | Up to 7 channel IDs new members join post-onboarding.                          |

***

### `Discordbot Search Guild Members`

Integration name: **DISCORDBOT\_SEARCH\_GUILD\_MEMBERS**

Searches for members in a specific Discord guild by matching a query string against usernames and nicknames. Returns matching guild member objects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                            |
| ---------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | —       | Maximum number of members to return (1-1000). Defaults to 1 if not specified.                                          |
| `query`    | string  |     ✅    | —       | The query string to match against usernames or nicknames. The search is prefix-based (e.g., 'adm' will match 'admin'). |
| `guild_id` | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild (server) to search within.                                   |

***

### `Discordbot Set Channel Permission Overwrite`

Integration name: **DISCORDBOT\_SET\_CHANNEL\_PERMISSION\_OVERWRITE**

Updates or creates a permission overwrite for a role (type 0) or member (type 1) within a Discord channel using allow and deny bitwise values. Requires MANAGE\_ROLES permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                   |
| -------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------- |
| `deny`         | string  |          | —       | Bitwise value of Discord permission flags to deny as a string. '0' means no explicit denials. |
| `type`         | integer |     ✅    | —       | Type of entity overwrite\_id refers to: 0 for a role or 1 for a member (user).                |
| `allow`        | string  |          | —       | Bitwise value of Discord permission flags to grant as a string. '0' means no new permissions. |
| `channel_id`   | string  |     ✅    | —       | The unique identifier of the Discord channel where the permission overwrite will be applied.  |
| `overwrite_id` | string  |     ✅    | —       | The unique identifier of the role or member (user) to whom the permission overwrite applies.  |

***

### `Discordbot Sync Guild Template`

Integration name: **DISCORDBOT\_SYNC\_GUILD\_TEMPLATE**

Synchronizes a guild template with its source guild, updating it to match the source's current configuration; does not affect guilds already created from this template.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                    |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------ |
| `guild_id`      | string |     ✅    | —       | The unique identifier of the Discord guild that is the source of the template. |
| `template_code` | string |     ✅    | —       | The unique code of the guild template to be synchronized.                      |

***

### `Discordbot Test Auth`

Integration name: **DISCORDBOT\_TEST\_AUTH**

Tool to validate the configured Discord bot token by fetching the current authenticated bot user. Use when diagnosing repeated 401 errors to determine if the issue is an invalid token (this endpoint returns 401) or missing guild membership/permissions/wrong channel\_id (this endpoint returns 200 but other operations fail).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Discordbot Trigger Typing Indicator`

Integration name: **DISCORDBOT\_TRIGGER\_TYPING\_INDICATOR**

Shows the bot is typing in a Discord channel. The indicator stops after 10 seconds or upon message send. Use when actively preparing a response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                  |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `channel_id` | string |     ✅    | —       | The unique identifier of the Discord channel where the typing indicator should be displayed. |

***

### `Discordbot Unban User From Guild`

Integration name: **DISCORDBOT\_UNBAN\_USER\_FROM\_GUILD**

Revokes a ban for a user from a Discord guild, allowing them to rejoin. Requires BAN\_MEMBERS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                 |
| ---------- | ------ | :------: | ------- | ------------------------------------------- |
| `user_id`  | string |     ✅    | —       | The ID of the user to unban.                |
| `guild_id` | string |     ✅    | —       | The ID of the guild to remove the ban from. |

***

### `Discordbot Unpin Message`

Integration name: **DISCORDBOT\_UNPIN\_MESSAGE**

Unpins a message from a Discord channel. The message is not deleted, only removed from the pinned list. Requires MANAGE\_MESSAGES permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                      |
| ------------ | ------ | :------: | ------- | ------------------------------------------------ |
| `channel_id` | string |     ✅    | —       | ID of the channel containing the pinned message. |
| `message_id` | string |     ✅    | —       | ID of the message to unpin.                      |

***

### `Discordbot Update Application`

Integration name: **DISCORDBOT\_UPDATE\_APPLICATION**

Updates a Discord application's settings using its application\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type    | Required | Example | Description                                                                |
| ----------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------- |
| `icon`                              | string  |          | —       | Base64 encoded application icon (PNG, JPEG, or GIF).                       |
| `tags`                              | array   |          | —       | Up to 5 tags describing the application (max 20 chars each).               |
| `flags`                             | integer |          | —       | Bitwise application flags value.                                           |
| `cover_image`                       | string  |          | —       | Base64 encoded cover image (PNG, JPEG, or GIF).                            |
| `description`                       | string  |          | —       | New description for the application.                                       |
| `application_id`                    | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application to update. |
| `max_participants`                  | integer |          | —       | Max participants for an embedded activity.                                 |
| `custom_install_url`                | string  |          | —       | Custom URL for post-authorization redirection.                             |
| `interactions_endpoint_url`         | string  |          | —       | HTTPS URL for Discord to send interaction events.                          |
| `role_connections_verification_url` | string  |          | —       | URL for role connection verification.                                      |

***

### `Discordbot Update Application Command`

Integration name: **DISCORDBOT\_UPDATE\_APPLICATION\_COMMAND**

Updates properties of a global application command. Omitted properties remain unchanged. The options field, if provided, overwrites all existing options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                 |
| ---------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `name`                       | string  |          | —       | New name for the command (1-32 characters).                                                 |
| `options`                    | array   |          | —       | New list of command option objects. If provided, all existing options are overwritten.      |
| `command_id`                 | string  |     ✅    | —       | The unique identifier (snowflake ID) of the command to update.                              |
| `description`                | string  |          | —       | New description for the command (1-100 characters). Empty string for USER/MESSAGE commands. |
| `dm_permission`              | boolean |          | —       | Whether the command is available in DMs with the app.                                       |
| `application_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                            |
| `name_localizations`         | object  |          | —       | Localization dictionary mapping locale codes to localized names.                            |
| `description_localizations`  | object  |          | —       | Localization dictionary mapping locale codes to localized descriptions.                     |
| `default_member_permissions` | string  |          | —       | Bitwise permission flags string. '0' disables for non-admins. Null allows everyone.         |

***

### `Discordbot Update Application User Role Connection`

Integration name: **DISCORDBOT\_UPDATE\_APPLICATION\_USER\_ROLE\_CONNECTION**

Updates the current user's application role connection metadata for Discord's Linked Roles feature. Requires OAuth2 with the role\_connections.write scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                        |
| ------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `metadata`          | object |          | —       | A dictionary of custom metadata key-value pairs. Keys must match metadata keys configured in the application's role connection metadata schema. Maximum 5 entries. |
| `platform_name`     | string |          | —       | The vanity name of the platform to display in Discord's user profile (max 50 characters).                                                                          |
| `application_id`    | string |     ✅    | —       | The unique Discord application ID (snowflake). Must have linked role connection metadata configured.                                                               |
| `platform_username` | string |          | —       | The user's username on the external platform (max 100 characters).                                                                                                 |

***

### `Discordbot Update Auto Moderation Rule`

Integration name: **DISCORDBOT\_UPDATE\_AUTO\_MODERATION\_RULE**

Updates an existing auto moderation rule in a Discord guild. Only fields provided in the request body are changed. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                    |
| ------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `name`             | string  |          | —       | The name of the rule (1-100 characters).                                       |
| `actions`          | array   |          | —       | The actions to execute when the rule is triggered (max 5).                     |
| `enabled`          | boolean |          | —       | Whether the rule is enabled.                                                   |
| `rule_id`          | string  |     ✅    | —       | The unique identifier (snowflake ID) of the auto moderation rule to update.    |
| `guild_id`         | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild containing the rule. |
| `event_type`       | integer |          | —       | The event type: 1=MESSAGE\_SEND, 2=MEMBER\_UPDATE.                             |
| `exempt_roles`     | array   |          | —       | Role IDs not affected by the rule (max 20).                                    |
| `exempt_channels`  | array   |          | —       | Channel IDs not affected by the rule (max 50).                                 |
| `trigger_metadata` | object  |          | —       | Additional metadata associated with the rule's trigger type.                   |

***

### `Discordbot Update Channel`

Integration name: **DISCORDBOT\_UPDATE\_CHANNEL**

Updates a Discord channel's settings (name, topic, permissions, etc.). Requires MANAGE\_CHANNELS permission. All body parameters are optional -- only include fields you want to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type    | Required | Example | Description                                                                       |
| ------------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------- |
| `name`                               | string  |          | —       | New channel name (1-100 characters).                                              |
| `nsfw`                               | boolean |          | —       | Whether the channel is age-restricted (NSFW).                                     |
| `type`                               | integer |          | —       | Channel type. Only conversion between text (0) and announcement (5) is supported. |
| `flags`                              | integer |          | —       | Channel flags bitfield.                                                           |
| `topic`                              | string  |          | —       | Channel topic (0-1024 chars for text/announcement, 0-4096 for forum/media).       |
| `bitrate`                            | integer |          | —       | Bitrate in bits per second for voice/stage channels (8000-384000).                |
| `position`                           | integer |          | —       | Sorting position of the channel in the guild.                                     |
| `parent_id`                          | string  |          | —       | ID of the parent category channel (null to remove from category).                 |
| `channel_id`                         | string  |     ✅    | —       | The unique identifier of the Discord channel to modify.                           |
| `rtc_region`                         | string  |          | —       | Voice region ID (null for automatic selection).                                   |
| `user_limit`                         | integer |          | —       | Maximum users in a voice channel (0=unlimited, 1-99).                             |
| `available_tags`                     | array   |          | —       | Tags available in a forum/media channel (max 20).                                 |
| `default_sort_order`                 | integer |          | —       | Default sort order for forum posts (0=latest activity, 1=creation date).          |
| `video_quality_mode`                 | integer |          | —       | Camera video quality mode (1=auto, 2=720p).                                       |
| `rate_limit_per_user`                | integer |          | —       | Slowmode rate limit in seconds per user (0-21600).                                |
| `default_forum_layout`               | integer |          | —       | Default forum layout (0=not set, 1=list view, 2=gallery view).                    |
| `permission_overwrites`              | array   |          | —       | Channel-specific permission overwrites for roles and members.                     |
| `default_reaction_emoji`             | object  |          | —       | Default reaction emoji for forum posts.                                           |
| `default_auto_archive_duration`      | integer |          | —       | Default thread auto-archive duration in minutes (60, 1440, 4320, 10080).          |
| `default_thread_rate_limit_per_user` | integer |          | —       | Initial rate\_limit\_per\_user for new threads (0-21600 seconds).                 |

***

### `Discordbot Update Guild`

Integration name: **DISCORDBOT\_UPDATE\_GUILD**

Updates settings for a Discord guild (server). Requires the MANAGE\_GUILD permission. All parameters except guild\_id are optional -- only include the settings you want to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example | Description                                                                                                 |
| ------------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `icon`                          | string  |          | —       | Base64 encoded 128x128 image data URL for the guild icon. Set to null to remove.                            |
| `name`                          | string  |          | —       | New name for the guild (2-100 characters).                                                                  |
| `banner`                        | string  |          | —       | Base64 encoded 16:9 image for guild banner (requires BANNER feature). Set to null to remove.                |
| `region`                        | string  |          | —       | Voice region ID for the guild (deprecated). Set to null for automatic.                                      |
| `splash`                        | string  |          | —       | Base64 encoded 16:9 image for guild invite splash (requires INVITE\_SPLASH feature). Set to null to remove. |
| `features`                      | array   |          | —       | List of guild feature strings to enable (e.g. COMMUNITY, DISCOVERABLE).                                     |
| `guild_id`                      | string  |     ✅    | —       | The ID of the guild (server) to update (snowflake).                                                         |
| `owner_id`                      | string  |          | —       | User ID to transfer guild ownership to. Requires being the current owner.                                   |
| `afk_timeout`                   | integer |          | —       | AFK timeout in seconds (60, 300, 900, 1800, 3600).                                                          |
| `description`                   | string  |          | —       | New description for the guild. Set to null to remove.                                                       |
| `home_header`                   | string  |          | —       | Base64 encoded image for guild home header (requires COMMUNITY feature). Set to null to remove.             |
| `afk_channel_id`                | string  |          | —       | ID of the AFK channel; null to disable.                                                                     |
| `discovery_splash`              | string  |          | —       | Base64 encoded image for guild discovery splash (requires DISCOVERABLE feature). Set to null to remove.     |
| `preferred_locale`              | string  |          | —       | Preferred locale for server discovery and Discord notices (e.g. en-US).                                     |
| `rules_channel_id`              | string  |          | —       | ID of the channel for server rules (requires COMMUNITY feature); null to disable.                           |
| `system_channel_id`             | string  |          | —       | ID of the channel for guild notices; null to disable.                                                       |
| `verification_level`            | integer |          | —       | Verification level (0: None, 1: Low, 2: Medium, 3: High, 4: Very High).                                     |
| `system_channel_flags`          | integer |          | —       | System channel flags as an integer bitfield.                                                                |
| `explicit_content_filter`       | integer |          | —       | Explicit content filter level (0: Disabled, 1: Members without roles, 2: All members).                      |
| `safety_alerts_channel_id`      | string  |          | —       | ID of the channel for Discord safety alerts; null to disable.                                               |
| `public_updates_channel_id`     | string  |          | —       | ID of the channel for Discord notices to admins; null to disable.                                           |
| `premium_progress_bar_enabled`  | boolean |          | —       | Whether to display the server boost progress bar.                                                           |
| `default_message_notifications` | integer |          | —       | Default message notification level (0: All Messages, 1: Only @mentions).                                    |

***

### `Discordbot Update Guild Application Command`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_APPLICATION\_COMMAND**

Updates properties of a guild-specific application command. Omitted properties remain unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                            |
| ---------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------- |
| `name`                       | string  |          | —       | New name for the command (1-32 characters).                                            |
| `options`                    | array   |          | —       | New list of command option objects. If provided, all existing options are overwritten. |
| `guild_id`                   | string  |     ✅    | —       | The unique identifier (snowflake ID) of the guild.                                     |
| `command_id`                 | string  |     ✅    | —       | The unique identifier (snowflake ID) of the command to update.                         |
| `description`                | string  |          | —       | New description for the command (1-100 characters).                                    |
| `dm_permission`              | boolean |          | —       | Whether available in DMs. Not supported for guild commands; will be ignored.           |
| `application_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord application.                       |
| `name_localizations`         | object  |          | —       | Localization dictionary mapping locale codes to localized names.                       |
| `description_localizations`  | object  |          | —       | Localization dictionary mapping locale codes to localized descriptions.                |
| `default_member_permissions` | string  |          | —       | Bitwise permission flags string.                                                       |

***

### `Discordbot Update Guild Emoji`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_EMOJI**

Updates a custom emoji's name and/or role restrictions in a Discord guild; cannot create or delete emojis, and role updates for managed emojis may be restricted by their integration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                            |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------- |
| `name`     | string |          | —       | The new name for the emoji (2-32 characters). If not provided, the name will not be changed.                           |
| `roles`    | array  |          | —       | A list of role IDs that are allowed to use this emoji. Provide an empty list to make the emoji available to @everyone. |
| `emoji_id` | string |     ✅    | —       | The unique identifier of the custom emoji to be updated.                                                               |
| `guild_id` | string |     ✅    | —       | The unique identifier of the Discord guild (server) where the emoji resides.                                           |

***

### `Discordbot Update Guild Member`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_MEMBER**

Updates a guild member's attributes including nickname, roles, voice state, timeout status, and flags. Only provided fields will be updated. Requires appropriate permissions for each operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                               |
| ------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `deaf`                         | boolean |          | —       | Whether to server-deafen the member in voice channels. Requires DEAFEN\_MEMBERS permission.               |
| `mute`                         | boolean |          | —       | Whether to server-mute the member in voice channels. Requires MUTE\_MEMBERS permission.                   |
| `nick`                         | string  |          | —       | New nickname for the guild member. Set to empty string to remove. Maximum 32 characters.                  |
| `flags`                        | integer |          | —       | Guild member flags represented as a bit set integer.                                                      |
| `roles`                        | array   |          | —       | Array of role IDs to assign to the member. Replaces all current roles except @everyone.                   |
| `user_id`                      | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord user whose guild member attributes are being updated. |
| `guild_id`                     | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the member belongs.                       |
| `channel_id`                   | string  |          | —       | Voice channel ID to move the member to. Set to null to disconnect from voice.                             |
| `communication_disabled_until` | string  |          | —       | ISO8601 timestamp when the user's timeout expires. Max 28 days from now. Set to null to remove timeout.   |

***

### `Discordbot Update Guild Role`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_ROLE**

Updates a Discord guild role's attributes (name, permissions, color, etc.). Requires MANAGE\_ROLES permission. Unspecified attributes remain unchanged. The icon and unicode\_emoji fields are mutually exclusive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                              |
| --------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------- |
| `icon`          | string  |          | —       | New role icon as base64 encoded image data. Mutually exclusive with unicode\_emoji.                      |
| `name`          | string  |          | —       | New name for the role (max 100 characters).                                                              |
| `color`         | integer |          | —       | New color as an integer representation of a hex code (0 for no color).                                   |
| `hoist`         | boolean |          | —       | Whether to display the role separately in the member list.                                               |
| `role_id`       | string  |     ✅    | —       | The unique identifier (snowflake ID) of the role to be updated.                                          |
| `guild_id`      | string  |     ✅    | —       | The unique identifier (snowflake ID) of the guild containing the role.                                   |
| `mentionable`   | boolean |          | —       | Whether to allow anyone to mention this role.                                                            |
| `permissions`   | string  |          | —       | Bitwise value for new role permissions.                                                                  |
| `unicode_emoji` | string  |          | —       | New unicode emoji for the role's icon. Mutually exclusive with icon. Requires ROLE\_ICONS guild feature. |

***

### `Discordbot Update Guild Scheduled Event`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_SCHEDULED\_EVENT**

Updates an existing scheduled event in a Discord guild. Only fields provided in the request body are changed. Supports updating name, description, schedule, status, location, and other event attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                   |
| ---------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |          | —       | The name of the scheduled event (1-100 characters).                                                                           |
| `image`                | string  |          | —       | The cover image as a base64 data URI.                                                                                         |
| `status`               | integer |          | —       | The event status: 1=SCHEDULED, 2=ACTIVE, 3=COMPLETED, 4=CANCELED. Cannot change from COMPLETED or CANCELED.                   |
| `event_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the scheduled event to update.                                                        |
| `guild_id`             | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild containing the event.                                               |
| `channel_id`           | string  |          | —       | The channel ID where the event will be hosted. Required for STAGE\_INSTANCE and VOICE. Set to null when changing to EXTERNAL. |
| `description`          | string  |          | —       | The description of the scheduled event (1-1000 characters).                                                                   |
| `entity_type`          | integer |          | —       | The entity type: 1=STAGE\_INSTANCE, 2=VOICE, 3=EXTERNAL.                                                                      |
| `privacy_level`        | integer |          | —       | The privacy level of the event. Use 2 for GUILD\_ONLY.                                                                        |
| `entity_metadata`      | object  |          | —       | Additional metadata for the guild scheduled event.                                                                            |
| `scheduled_end_time`   | string  |          | —       | The time the event will end (ISO8601 timestamp). Required for EXTERNAL entity type.                                           |
| `scheduled_start_time` | string  |          | —       | The time the event will start (ISO8601 timestamp).                                                                            |

***

### `Discordbot Update Guild Sticker`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_STICKER**

Modifies a guild sticker's name, description, or tags. Requires MANAGE\_EXPRESSIONS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                   |
| ------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------- |
| `name`        | string |          | —       | New name for the sticker (2-30 characters).                                                   |
| `tags`        | string |          | —       | The Discord name of a unicode emoji representing the sticker's expression (2-200 characters). |
| `guild_id`    | string |     ✅    | —       | ID of the guild where the sticker is located.                                                 |
| `sticker_id`  | string |     ✅    | —       | ID of the sticker to be updated.                                                              |
| `description` | string |          | —       | New description for the sticker (2-100 characters).                                           |

***

### `Discordbot Update Guild Template`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_TEMPLATE**

Updates a Discord guild template's name and/or description; omitted fields retain current values, and an empty string for description clears it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                         |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `name`          | string |          | —       | New name for the guild template; if omitted, the current name is retained.                                          |
| `guild_id`      | string |     ✅    | —       | Unique identifier of the Discord guild where the template resides.                                                  |
| `description`   | string |          | —       | New description for the guild template; if omitted, the current description is retained. An empty string clears it. |
| `template_code` | string |     ✅    | —       | Unique code of the guild template to be updated.                                                                    |

***

### `Discordbot Update Guild Welcome Screen`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_WELCOME\_SCREEN**

Updates a guild's welcome screen configuration, including description, enabled status, and up to 5 welcome channels. Requires MANAGE\_GUILD permission and the COMMUNITY feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                           |
| ------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------- |
| `enabled`          | boolean |          | —       | Whether the welcome screen is enabled.                                                |
| `guild_id`         | string  |     ✅    | —       | The unique ID (snowflake) of the guild whose welcome screen is to be updated.         |
| `description`      | string  |          | —       | The server description to show in the welcome screen. Set to null to remove.          |
| `welcome_channels` | array   |          | —       | An array of welcome channel objects (max 5). Set to null or empty list to remove all. |

***

### `Discordbot Update Guild Widget Settings`

Integration name: **DISCORDBOT\_UPDATE\_GUILD\_WIDGET\_SETTINGS**

Updates a Discord guild's widget settings, such as its enabled state or invite channel. Requires MANAGE\_GUILD permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                         |
| ------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------- |
| `enabled`    | boolean |          | —       | Enables (true) or disables (false) the guild widget. Omit to leave unchanged.       |
| `guild_id`   | string  |     ✅    | —       | Unique ID (snowflake) of the Discord guild whose widget settings are to be updated. |
| `channel_id` | string  |          | —       | The channel ID to set as the widget's invite channel, or null to clear it.          |

***

### `Discordbot Update Message`

Integration name: **DISCORDBOT\_UPDATE\_MESSAGE**

Edits a message previously sent by the bot. Only provide fields you want to change; use null or empty list to clear values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                                |
| ------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------ |
| `flags`            | integer |          | —       | Message flags to set (e.g., 4 for SUPPRESS\_EMBEDS).                                       |
| `embeds`           | array   |          | —       | Up to 10 embed objects. Set to empty list to remove all embeds.                            |
| `content`          | string  |          | —       | New message content (max 2000 characters). Set to empty string to clear.                   |
| `channel_id`       | string  |     ✅    | —       | ID of the channel containing the message to edit.                                          |
| `components`       | array   |          | —       | Message components (buttons, select menus). Set to empty list to remove.                   |
| `message_id`       | string  |     ✅    | —       | ID of the message to edit. Must be a message sent by the bot.                              |
| `attachments`      | array   |          | —       | Attachments to keep or update metadata for. Omit to keep existing; empty list removes all. |
| `allowed_mentions` | object  |          | —       | Controls which mentions trigger notifications.                                             |

***

### `Discordbot Update My Application`

Integration name: **DISCORDBOT\_UPDATE\_MY\_APPLICATION**

Updates settings for the current authenticated Discord application via /applications/@me.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type    | Required | Example | Description                                                  |
| ----------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------ |
| `icon`                              | string  |          | —       | Base64 encoded application icon (PNG, JPEG, or GIF).         |
| `tags`                              | array   |          | —       | Up to 5 tags describing the application (max 20 chars each). |
| `flags`                             | integer |          | —       | Bitwise application flags value.                             |
| `cover_image`                       | string  |          | —       | Base64 encoded cover image (PNG, JPEG, or GIF).              |
| `description`                       | string  |          | —       | New description for the application.                         |
| `max_participants`                  | integer |          | —       | Max participants for an embedded activity.                   |
| `custom_install_url`                | string  |          | —       | Custom URL for post-authorization redirection.               |
| `interactions_endpoint_url`         | string  |          | —       | HTTPS URL for Discord to send interaction events.            |
| `role_connections_verification_url` | string  |          | —       | URL for role connection verification.                        |

***

### `Discordbot Update My Guild Member`

Integration name: **DISCORDBOT\_UPDATE\_MY\_GUILD\_MEMBER**

Modifies the current bot's member profile (nickname) in a Discord guild. The bot must be a member of the guild and have CHANGE\_NICKNAME permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                         |
| ---------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------- |
| `nick`     | string |          | —       | The new nickname for the bot in the guild. Set to null or empty to remove. Maximum 32 characters.   |
| `guild_id` | string |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild where the bot's nickname will be updated. |

***

### `Discordbot Update My User`

Integration name: **DISCORDBOT\_UPDATE\_MY\_USER**

Updates the current bot user's Discord username and/or avatar. Only works with bot tokens. Username changes are rate-limited to 2 per hour.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                |
| ---------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `avatar`   | string |          | —       | Base64 encoded image data for the new avatar (format: 'data:image/png;base64,...'). Set to null to remove. |
| `username` | string |          | —       | The new username for the bot user. Must be 2-32 characters. Changes are rate-limited to 2 per hour.        |

***

### `Discordbot Update Original Webhook Message`

Integration name: **DISCORDBOT\_UPDATE\_ORIGINAL\_WEBHOOK\_MESSAGE**

Updates the original (@original) message previously sent by a webhook or interaction response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                      |
| ------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------- |
| `flags`            | integer |          | —       | Message flags bitfield (e.g. 4 for SUPPRESS\_EMBEDS).                            |
| `embeds`           | array   |          | —       | Up to 10 embed objects; replaces existing embeds.                                |
| `content`          | string  |          | —       | New message content (max 2000 characters). Null or empty string removes content. |
| `thread_id`        | string  |          | —       | ID of the thread the message is in, if applicable.                               |
| `components`       | array   |          | —       | Message components (buttons, select menus); replaces existing.                   |
| `webhook_id`       | string  |     ✅    | —       | The webhook or application ID.                                                   |
| `attachments`      | array   |          | —       | Attachments to keep/update. Include existing attachment IDs to retain them.      |
| `webhook_token`    | string  |     ✅    | —       | The webhook or interaction token.                                                |
| `allowed_mentions` | object  |          | —       | Controls which mentions in the message content trigger pings.                    |

***

### `Discordbot Update Self Voice State`

Integration name: **DISCORDBOT\_UPDATE\_SELF\_VOICE\_STATE**

Updates the bot's own voice state in a guild Stage channel, such as toggling suppress or requesting to speak. The bot must already be connected to a stage channel via the Gateway API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                             |
| ---------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------- |
| `guild_id`                   | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild.                                              |
| `suppress`                   | boolean |          | —       | Whether to suppress (mute) the bot in the stage channel. True to suppress, false to unsuppress.         |
| `channel_id`                 | string  |          | —       | The ID of the stage channel. Required for stage channel operations.                                     |
| `request_to_speak_timestamp` | string  |          | —       | ISO8601 timestamp for requesting to speak. Set to a timestamp to request, or null to clear the request. |

***

### `Discordbot Update Voice State`

Integration name: **DISCORDBOT\_UPDATE\_VOICE\_STATE**

Updates another user's voice state in a Discord stage channel. Only works for stage channels, not regular voice channels. Primarily used to toggle suppress state for speaking permissions. Requires MUTE\_MEMBERS permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                         |
| ------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`    | string  |     ✅    | —       | The unique identifier (snowflake ID) of the user whose voice state to update.                                                       |
| `guild_id`   | string  |     ✅    | —       | The unique identifier (snowflake ID) of the Discord guild.                                                                          |
| `suppress`   | boolean |          | —       | Whether to suppress (mute) the user in the stage channel. True to suppress, false to unsuppress. Requires MUTE\_MEMBERS permission. |
| `channel_id` | string  |          | —       | The ID of the stage channel where the user is participating. Required for stage channel operations.                                 |

***

### `Discordbot Update Webhook`

Integration name: **DISCORDBOT\_UPDATE\_WEBHOOK**

Updates properties of an existing Discord webhook such as name, avatar, or channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                  |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------- |
| `name`       | string |          | —       | New default name for the webhook.                                            |
| `avatar`     | string |          | —       | Data URI for the new webhook avatar image. Set to null to remove the avatar. |
| `channel_id` | string |          | —       | ID of the new channel to move the webhook to.                                |
| `webhook_id` | string |     ✅    | —       | The unique identifier of the webhook to update.                              |

***

### `Discordbot Update Webhook By Token`

Integration name: **DISCORDBOT\_UPDATE\_WEBHOOK\_BY\_TOKEN**

Updates a Discord webhook's name and/or avatar using its ID and token, without bot authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                  |
| --------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------- |
| `name`          | string |          | —       | New default name for the webhook (1-80 characters).                          |
| `avatar`        | string |          | —       | Data URI for the new webhook avatar image. Set to null to remove the avatar. |
| `webhook_id`    | string |     ✅    | —       | The unique identifier of the webhook to update.                              |
| `webhook_token` | string |     ✅    | —       | The secure token of the webhook.                                             |

***

### `Discordbot Update Webhook Message`

Integration name: **DISCORDBOT\_UPDATE\_WEBHOOK\_MESSAGE**

Updates a message previously sent by a webhook, allowing modification of content, embeds, attachments, or components.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                 |
| ------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `flags`            | integer |          | —       | Message flags bitfield (e.g. 4 for SUPPRESS\_EMBEDS).                       |
| `embeds`           | array   |          | —       | Up to 10 embed objects; replaces existing embeds.                           |
| `content`          | string  |          | —       | New message text (max 2000 characters). Empty string removes content.       |
| `thread_id`        | string  |          | —       | ID of the thread the message is in, if applicable.                          |
| `components`       | array   |          | —       | Message components (buttons, select menus); replaces existing.              |
| `message_id`       | string  |     ✅    | —       | The ID of the message to update.                                            |
| `webhook_id`       | string  |     ✅    | —       | The unique ID of the webhook.                                               |
| `attachments`      | array   |          | —       | Attachments to keep/update. Include existing attachment IDs to retain them. |
| `webhook_token`    | string  |     ✅    | —       | The secret token for the webhook.                                           |
| `allowed_mentions` | object  |          | —       | Controls which mentions in the message content trigger pings.               |

***


# Dropbox

Your Toolhouse AI Worker can connect to Dropbox using 177 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](https://toolhouse.app/auth-connections?authkit_slugs=dropbox).

## Tools (177)

### `Dropbox Activate Team Folder`

Integration name: **DROPBOX\_ACTIVATE\_TEAM\_FOLDER**

Tool to activate an archived team folder. Use when you need to restore access to a previously archived team folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example         | Description                            |
| ---------------- | ------ | :------: | --------------- | -------------------------------------- |
| `team_folder_id` | string |     ✅    | `"13747111155"` | The ID of the team folder to activate. |

***

### `Dropbox Add File Member`

Integration name: **DROPBOX\_ADD\_FILE\_MEMBER**

Tool to add specified members to a Dropbox file with configurable access levels. Use when sharing a file with specific users by email or Dropbox ID. Supports custom invitation messages and notification controls. Note: This endpoint does not support apps with the app folder permission, and members will receive invitations unless quiet mode is enabled.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                         | Description                                                                                                                                                                                               |
| ------------------------ | ------- | :------: | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`                   | string  |     ✅    | `"id:7bh4zBmgZoAAAAAAAAABCQ"`   | File to which to add members. Use the file ID format (e.g., 'id:7bh4zBmgZoAAAAAAAAABCQ') or file path.                                                                                                    |
| `quiet`                  | boolean |          | —                               | Whether to suppress device notifications for added members. If false (default), members will be notified of their invitation.                                                                             |
| `members`                | array   |     ✅    | —                               | List of members to add to the file. Each member is identified by email or Dropbox ID. Note: If an email is provided and it's the user's main account email, they may be directly added to the membership. |
| `access_level`           | object  |          | —                               | Defines the access level for the new member.                                                                                                                                                              |
| `custom_message`         | string  |          | `"Please review this document"` | Custom message to include in the invitation email sent to added members.                                                                                                                                  |
| `add_message_as_comment` | boolean |          | —                               | If true and a custom\_message is provided, the message will be added as a comment on the file.                                                                                                            |

***

### `Dropbox Add File Properties`

Integration name: **DROPBOX\_ADD\_FILE\_PROPERTIES**

Tool to add custom properties to a Dropbox file using a filled property template. Use when you need to tag files with structured metadata like project info, status, or categories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                            |
| ------------------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `path`                    | string |     ✅    | `"/test_properties (1).txt"`                  | A unique identifier for the file or folder. Can be a file path (e.g., '/test.txt') or a file ID (e.g., 'id:a4ayc\_80\_OEAAAAAAAAAXw'). |
| `property_groups`         | array  |     ✅    | —                                             | The property groups to be added to the Dropbox file. Each group must reference a valid template that the file doesn't already have.    |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.               |

***

### `Dropbox Add File Tags`

Integration name: **DROPBOX\_ADD\_FILE\_TAGS**

Tool to add a tag to a file or folder in Dropbox. Use when you need to tag items for organization. Tags are automatically converted to lowercase.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                              |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `path`                    | string |     ✅    | `"/test-tag-file.txt"`                        | Path to the file or folder to tag. Must be a valid path in the user's Dropbox.                                           |
| `tag_text`                | string |     ✅    | `"important"`                                 | The tag text to add. Will be automatically converted to lowercase letters by Dropbox.                                    |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on. |

***

### `Dropbox Add Folder Member Action`

Integration name: **DROPBOX\_ADD\_FOLDER\_MEMBER\_ACTION**

Tool to add members to a shared folder with specified access levels. Use when an owner or editor needs to invite new members to a shared folder. Members receive invites and must be mounted via mount\_folder for full access. Requires appropriate ACL permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example         | Description                                                                                                                                          |
| ------------------ | ------- | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `quiet`            | boolean |          | —               | Whether to suppress email and device notifications for the added members. If true, members are added silently without notification. Default is false |
| `members`          | array   |     ✅    | —               | List of members to add to the shared folder. Each member will receive an invitation to join the folder                                               |
| `custom_message`   | string  |          | —               | Optional custom message to include in the invitation email sent to added members                                                                     |
| `shared_folder_id` | string  |     ✅    | `"84528192421"` | The ID of the shared folder to add members to. You can get this from list\_shared\_folders action                                                    |

***

### `Dropbox Add Member Space Limits Excluded Users`

Integration name: **DROPBOX\_ADD\_MEMBER\_SPACE\_LIMITS\_EXCLUDED\_USERS**

Tool to add users to the team's space limits exclusion list in Dropbox. Users on this list are exempt from space limit restrictions. Use when you need to exclude specific team members from storage quota enforcement. Requires team admin authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                                                                                   |
| --------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `users`   | array |     ✅    | —       | List of users to be added to the space limits exclusion list. Each user can be specified by team\_member\_id, external\_id, or email. Maximum size of the list is 1000 users. |

***

### `Dropbox Add Sharing Allowlist`

Integration name: **DROPBOX\_ADD\_SHARING\_ALLOWLIST**

Tool to add domains or email addresses to the team sharing allowlist. Use when team admins need to approve specific domains or emails for sharing. Requires team admin authentication. At least one of 'domains' or 'emails' must be provided, with a maximum of 100 entries per call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example              | Description                                                                                                                                                                                                                                          |
| --------- | ----- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emails`  | array |          | `"user@example.com"` | List of email addresses to add to the allowlist. Each email must be a valid string representation following RFC-5322/822 (e.g., '<user@example.com>'). Maximum 100 entries per call. At least one of 'domains' or 'emails' must be provided          |
| `domains` | array |          | `"example.com"`      | List of domains to add to the allowlist. Each domain must be a valid string representation following RFC-1034/5 (e.g., 'example.com', 'subdomain.example.org'). Maximum 100 entries per call. At least one of 'domains' or 'emails' must be provided |

***

### `Dropbox Add Team Group Members`

Integration name: **DROPBOX\_ADD\_TEAM\_GROUP\_MEMBERS**

Tool to add members to a team group with specified access levels. Use when you need to add users to an existing team group. Requires team admin credentials with group management permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                |
| ---------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `group`          | object  |     ✅    | —       | The group to add members to. Use group\_id obtained from list\_team\_groups or create\_team\_group actions |
| `members`        | array   |     ✅    | —       | List of members to add to the group with their respective access levels                                    |
| `return_members` | boolean |          | —       | Whether to return the list of members in the group after adding. Default is true                           |

***

### `Dropbox Add Team Members`

Integration name: **DROPBOX\_ADD\_TEAM\_MEMBERS**

Tool to add new members to a Dropbox team. Use when you need to invite users to join the team with specified roles and settings. Maximum of 20 members per request. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                          |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `force_async` | boolean |          | —       | Whether to force the operation to happen asynchronously. If true, returns an async\_job\_id to poll for completion. Default is false |
| `new_members` | array   |     ✅    | —       | List of new members to add to the team. Maximum of 20 members per request                                                            |

***

### `Dropbox Add Team Members Secondary Emails`

Integration name: **DROPBOX\_ADD\_TEAM\_MEMBERS\_SECONDARY\_EMAILS**

Tool to add secondary email addresses to Dropbox team members. Use when you need to associate additional email addresses with team member accounts. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type  | Required | Example | Description                                                                                                                            |
| ---------------------- | ----- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `new_secondary_emails` | array |     ✅    | —       | List of users and their secondary emails to add. Each entry specifies a user (by ID or email) and the secondary emails to add for them |

***

### `Dropbox Add Team Properties Template`

Integration name: **DROPBOX\_ADD\_TEAM\_PROPERTIES\_TEMPLATE**

Tool to add a property template for a team in Dropbox. Use when you need to create a standardized set of custom properties that can be applied to files and folders. Requires team admin permissions and a Dropbox Business account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                          | Description                                                                                                              |
| ------------- | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `name`        | string |     ✅    | `"Project Metadata"`                             | Display name for the template. Template names can be up to 256 bytes.                                                    |
| `fields`      | array  |     ✅    | —                                                | Definitions of the property fields associated with this template. There can be up to 32 properties in a single template. |
| `description` | string |     ✅    | `"Template for project-related file properties"` | Description for the template. Template descriptions can be up to 1024 bytes.                                             |

***

### `Dropbox Alpha Upload File`

Integration name: **DROPBOX\_ALPHA\_UPLOAD\_FILE**

Tool to upload a new file to Dropbox using the alpha upload endpoint. Use when uploading files up to 150 MiB. Note that the behavior of this alpha endpoint is unstable and subject to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                      | Description                                                                                                                                                                                          |
| ------------------------- | ------- | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`                    | string  |          | `"add"`                                      | Selects what to do if the file already exists.                                                                                                                                                       |
| `mute`                    | boolean |          | —                                            | If true, this tells the clients that this modification shouldn't result in a user notification.                                                                                                      |
| `path`                    | string  |     ✅    | `"/test_upload_alpha.txt"`                   | Path in the user's Dropbox to save the file. Must start with '/' and include the filename.                                                                                                           |
| `content`                 | object  |     ✅    | —                                            | File to be uploaded. Supports various formats including text, images, and PDFs.                                                                                                                      |
| `autorename`              | boolean |          | —                                            | If there's a conflict as determined by mode, have the Dropbox server try to autorename the file to avoid conflict.                                                                                   |
| `client_modified`         | string  |          | `"2015-05-12T15:50:38Z"`                     | The value to store as the client\_modified timestamp in ISO 8601 format (e.g., '2015-05-12T15:50:38Z'). Dropbox automatically records the time at which the file was written to the Dropbox servers. |
| `property_groups`         | array   |          | —                                            | List of custom properties to add to file.                                                                                                                                                            |
| `dropbox_api_select_user` | string  |          | `"dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc"` | Optional. For team accounts: Dropbox account ID or team member ID to operate on. Required when using a Dropbox Business team token. Format: 'dbid:...' or team\_member\_id.                          |

***

### `Dropbox Append Upload Session`

Integration name: **DROPBOX\_APPEND\_UPLOAD\_SESSION**

Tool to append more data to an existing upload session. Use when uploading large files in chunks. When the 'close' parameter is set to true, this call will close the session. A single request should not upload more than 150 MiB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                     |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `close`   | boolean |          | —       | If true, the upload session will be closed after appending this data. Once closed, no more data can be appended to the session. |
| `cursor`  | object  |     ✅    | —       | Cursor information containing the session\_id and current offset in bytes.                                                      |
| `content` | object  |     ✅    | —       | File data to append to the upload session.                                                                                      |

***

### `Dropbox Append Upload Session Batch`

Integration name: **DROPBOX\_APPEND\_UPLOAD\_SESSION\_BATCH**

Tool to append data to multiple upload sessions in a single request. Use when you need to upload data to multiple ongoing upload sessions efficiently. The file content for each session should be concatenated in the request body in the order specified by entries. A single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                                                           | Description                                                                                                                                                                                                                                                            |
| --------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`    | string |     ✅    | —                                                                                                                                                                                                                                                                                 | Concatenated binary data for all upload sessions. The data for each session should be concatenated in the order specified in the entries list. Each chunk's length must match the corresponding entry's length field.                                                  |
| `entries` | array  |     ✅    | `[{"close":false,"cursor":{"offset":0,"session_id":"pid_upload_session:ABIKOUDCsWWOgGdtWNm2an-FHOPmw0W9zejs1OOQmkD9nDw_0A"},"length":23},{"close":false,"cursor":{"offset":0,"session_id":"pid_upload_session:ABIKOWkEtG7FziZAUMOmoMO9PqPN8YXp_1T2ESGA8m3i91Koww"},"length":23}]` | List of upload session entries to append data to. Each entry specifies the session, how many bytes to read from the request body, and whether to close the session. The data for each entry should be concatenated in the request body in the same order as this list. |

***

### `Dropbox Archive Team Folder`

Integration name: **DROPBOX\_ARCHIVE\_TEAM\_FOLDER**

Tool to archive an active team folder in Dropbox. Sets the team folder's status to archived and removes all folder and file members. Use when you need to archive a team folder that is no longer in active use. The folder must be active before it can be archived.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example         | Description                                                                                                                                                                                                       |
| ----------------- | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_folder_id`  | string  |     ✅    | `"13746671955"` | The ID of the team folder to archive. You can get this from list team folders action. The team folder must be active to be archived.                                                                              |
| `force_async_off` | boolean |          | —               | Whether to force the operation to run synchronously. If true, the operation will complete synchronously and return metadata immediately. If false or not specified, large operations may complete asynchronously. |

***

### `Dropbox Check Copy Batch`

Integration name: **DROPBOX\_CHECK\_COPY\_BATCH**

Tool to check the status of an asynchronous copy batch job in Dropbox. Use when you have an async\_job\_id from a previous copy\_batch operation and need to poll its status. Returns 'in\_progress', 'complete' with results for each entry, or 'failed' with error details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AAA9W0f2HDJ_ueldO2YD4S79kpnkhll-mrToXietsd8rGZzchE9jsW0kaCDsvq-YTzDQrw9sYwicXx9kKkxCWNGG"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Delete Batch`

Integration name: **DROPBOX\_CHECK\_DELETE\_BATCH**

Tool to check the status of an asynchronous delete batch job in Dropbox. Use when you need to poll the status of a batch delete operation initiated by delete\_batch. Returns 'in\_progress', 'complete' with per-entry results, 'failed', or error status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AAAaeWLoZIbMa1Fx1uvOS1tDOhJ1ckaZOjW8jybNTW5pTWMQnBvaMExxK102UD562_zWXNU7h0sU_LUrp5_njKwB"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Folder Batch`

Integration name: **DROPBOX\_CHECK\_FOLDER\_BATCH**

Tool to check the status of an asynchronous folder batch creation job. Use when you need to poll the status of a create\_folder\_batch operation. Returns 'in\_progress', 'complete' with results, or 'failed' with error details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                   |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AABoj8Vt1v4sW75PK135T6dbQLwXD1yPwF6uHRcaxqX0qDvNXhznIsvYKfHYUA9LxEhPCIWTR4p_2ovDqRi345VM"` | ID of the asynchronous job. This is the value returned from the create\_folder\_batch method. |

***

### `Dropbox Check Job Status`

Integration name: **DROPBOX\_CHECK\_JOB\_STATUS**

Tool to check the status of an asynchronous sharing job in Dropbox. Use when you have an async\_job\_id from a previous sharing operation (like unshare\_folder, remove\_folder\_member) and need to poll its status. Returns 'in\_progress', 'complete', 'failed' with error details, or polling errors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AACD-aM8Oi5GiB_EqlBYrJkGDEn7tnoSiRcq6xDKrb6TiphCH0wTGpI0bB8RxddGIOQSTAWgU1zz69S4XUwTWcSr"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Move Batch`

Integration name: **DROPBOX\_CHECK\_MOVE\_BATCH**

Tool to check the status of an asynchronous move batch job. Use when you need to poll the status of a batch move operation started with move\_batch\_v2. Returns a list of results for each entry when complete.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AADqyYPi40MIgqklWOM-Mp7inh5v2jPlwhPTpREgh4cp8aQAHArn6pvoHeqYL2Tp9jEOA4tvmj1itOUKTVAFxXMw"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Move Former Member Files Job Status`

Integration name: **DROPBOX\_CHECK\_MOVE\_FORMER\_MEMBER\_FILES\_JOB\_STATUS**

Tool to check the status of an asynchronous move former member files job. Use when you have an async\_job\_id from a previous team/members/move\_former\_member\_files operation and need to poll its completion status. Returns 'in\_progress', 'complete', 'failed' with error details, or error states like 'invalid\_async\_job\_id'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                 | Description                                                                                                                                    |
| -------------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"34g93hh34h04y384084"` | Id of the asynchronous job returned from team/members/move\_former\_member\_files. This is used to poll the status of the file move operation. |

***

### `Dropbox Check Remove Member`

Integration name: **DROPBOX\_CHECK\_REMOVE\_MEMBER**

Tool to check the status of an asynchronous remove folder member job in Dropbox. Use when you have an async\_job\_id from a previous remove\_folder\_member operation and need to poll its status. Returns 'in\_progress', 'complete' with access level info, or 'failed' with error details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                          | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:your_async_job_id_here"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Save Url Status`

Integration name: **DROPBOX\_CHECK\_SAVE\_URL\_STATUS**

Tool to check the status of a save\_url job in Dropbox. Use when you have an async\_job\_id from a save\_url operation and need to poll its completion status. Returns 'in\_progress', 'complete' with file metadata, or 'failed' with error details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                    | Description                                                    |
| -------------- | ------ | :------: | -------------------------- | -------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"lOcA8blEoY4AAAAAAAAAAQ"` | The async job ID returned from a previous save\_url operation. |

***

### `Dropbox Check Share Job Status`

Integration name: **DROPBOX\_CHECK\_SHARE\_JOB\_STATUS**

Tool to check the status of an asynchronous folder sharing job in Dropbox. Use when you need to poll the status of a folder share operation that was initiated asynchronously. Returns 'in\_progress', 'complete' with folder metadata, 'failed' with error details, or polling error status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AABzGEzOnfiAAEN85fWdkEADcgkMoSXuqPmBsY_vJEKk_pUn5N2rLXMQ7hLs67sh4UZiFcP69U4nNAmUim_IqdO4"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check Team Folder Archive`

Integration name: **DROPBOX\_CHECK\_TEAM\_FOLDER\_ARCHIVE**

Tool to check the status of an asynchronous team folder archive job in Dropbox. Use when you have an async\_job\_id from a previous team\_folder/archive operation and need to poll its status. Returns 'in\_progress' while archiving, 'complete' with team folder metadata when done, or error states like 'invalid\_async\_job\_id'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                   |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AACyVg9Hu8Lp5jLDVqbUGMkeDUIQvFMV8QkHnvV9lbXOFKCkQeqWdDiCuHUphKDxBziprdjNjpswqqoG9xUJ9upm"` | Id of the asynchronous job returned from the team\_folder/archive method that launched the archive operation. |

***

### `Dropbox Check Upload Batch`

Integration name: **DROPBOX\_CHECK\_UPLOAD\_BATCH**

Tool to check the status of an asynchronous upload batch job in Dropbox. Use when you need to poll the status of a batch upload operation initiated by upload\_session/finish\_batch. Returns 'in\_progress', 'complete' with per-entry results, or error status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                | Description                                                                                                 |
| -------------- | ------ | :------: | ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"pid_upload_result:ABIKOTGn3VW8UUPSFEGZIJY7TpYv-HSdyGw8Y0DBsz-jPTf8"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job. |

***

### `Dropbox Check User`

Integration name: **DROPBOX\_CHECK\_USER**

Tool to test Dropbox API connection and validate access token by echoing back a supplied string. Use when you need to verify that the Dropbox API is accessible and the access token is valid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                            |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------- |
| `query`   | string |          | `"foo"` | The string that you'd like to be echoed back to you. Maximum length is 500 characters. |

***

### `Dropbox Copy Batch`

Integration name: **DROPBOX\_COPY\_BATCH**

Tool to copy multiple files or folders to different locations at once in Dropbox. Use when you need to duplicate multiple items efficiently. This operation may complete synchronously or return a job ID for async processing. Use copy\_batch/check:2 to check async job status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                       | Description                                                                                                                           |
| ------------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `entries`                 | array   |     ✅    | —                                             | List of entries to be copied. Each entry is a RelocationPath with from\_path and to\_path.                                            |
| `autorename`              | boolean |          | —                                             | If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default is false. |
| `dropbox_api_select_user` | string  |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.              |

***

### `Dropbox Copy File Or Folder`

Integration name: **DROPBOX\_COPY\_FILE\_OR\_FOLDER**

Tool to copy a file or folder to a different location in Dropbox. Use when you need to duplicate content without removing the original. If the source path is a folder, all its contents will be copied.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                       | Description                                                                                                                                                                                 |
| -------------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_path`                  | string  |     ✅    | `"/Homework/archive/math_prime_numbers.txt"`  | Path in the user's Dropbox that is the destination. This path is case-sensitive.                                                                                                            |
| `from_path`                | string  |     ✅    | `"/Homework/math/prime_numbers.txt"`          | Path in the user's Dropbox to be copied. This path is case-sensitive.                                                                                                                       |
| `autorename`               | boolean |          | —                                             | If there's a conflict (e.g., a file with the same name already exists at the destination), have the Dropbox server try to auto-rename the file to avoid the conflict. The default is false. |
| `allow_shared_folder`      | boolean |          | —                                             | If true, allows copying of shared folders. Note: This flag has no effect in current API version. The default is false.                                                                      |
| `dropbox_api_select_user`  | string  |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.                                                                    |
| `allow_ownership_transfer` | boolean |          | —                                             | Allow moves by owner even if it would result in an ownership transfer for the content being moved. Note: This does not apply to copies. The default is false.                               |

***

### `Dropbox Count File Requests`

Integration name: **DROPBOX\_COUNT\_FILE\_REQUESTS**

Tool to get the total number of file requests owned by the authenticated user. Use when you need to count how many file requests (both open and closed) exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Create File Request`

Integration name: **DROPBOX\_CREATE\_FILE\_REQUEST**

Tool to create a new file request in Dropbox. Use when you need to request files from others by generating a unique link for uploads to a specified Dropbox folder, optionally with a deadline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                    |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `open`        | boolean |          | —       | Whether the file request should be open by default. If true, the file request will start accepting files immediately.          |
| `title`       | string  |     ✅    | —       | The title of the new file request. Must be 1 character or more.                                                                |
| `deadline`    | object  |          | —       | Represents the deadline parameters for a file request.                                                                         |
| `destination` | string  |     ✅    | —       | The path in the user's Dropbox where uploaded files will be saved. Must be a path starting with '/'. Example: '/Homework/math' |

***

### `Dropbox Create Folder`

Integration name: **DROPBOX\_CREATE\_FOLDER**

Tool to create a new folder at a specified path in Dropbox. Use when you need to organize files by creating a new directory.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example          | Description                                                                                                                                                                                                                                                                     |
| ------------ | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`       | string  |     ✅    | `"/test_folder"` | Path in the user's Dropbox to create the folder. Must start with a slash. May use 'id:' prefix for namespace-based paths. Must not end with '/' or whitespace. Paths are case-insensitive but must be correctly formatted to avoid validation errors.                           |
| `autorename` | boolean |          | —                | If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. Default is False. Without autorename, a conflict returns a `path_conflict` error. For idempotent folder creation, set autorename=true or treat `path_conflict` as non-fatal. |

***

### `Dropbox Create Folder Batch`

Integration name: **DROPBOX\_CREATE\_FOLDER\_BATCH**

Tool to create multiple folders at once in Dropbox. Use when you need to create several folders efficiently in a single request. For large batches, returns a job ID immediately and runs asynchronously; for smaller inputs, creates folders and returns results synchronously.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                             | Description                                                                                                                                                                 |
| ------------- | ------- | :------: | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `paths`       | array   |     ✅    | `["/test_folder1","/test_folder2"]` | List of paths to be created in the user's Dropbox. Each path must start with a slash. Duplicate path arguments in the batch are considered only once. Maximum 10,000 paths. |
| `autorename`  | boolean |          | —                                   | If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. Default is False.                                                        |
| `force_async` | boolean |          | —                                   | Whether to force the create to happen asynchronously. For large batches, the operation will be asynchronous automatically. Default is False.                                |

***

### `Dropbox Create Paper Document`

Integration name: **DROPBOX\_CREATE\_PAPER\_DOCUMENT**

Creates a new Dropbox Paper document at the specified path using HTML or Markdown content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                     | Description                                                                                                                                                     |
| --------------- | ------ | :------: | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`          | string |     ✅    | `"/Paper Docs/New Doc.paper"`               | The fully qualified path in Dropbox where the Paper document will be created. MUST include the .paper extension at the end (e.g., '/My Documents/Notes.paper'). |
| `content`       | string |     ✅    | `"<h1>My Document</h1><p>Content here</p>"` | Content of the paper document                                                                                                                                   |
| `import_format` | string |          | `"html"`                                    | Format of the provided content                                                                                                                                  |

***

### `Dropbox Create Paper Folder`

Integration name: **DROPBOX\_CREATE\_PAPER\_FOLDER**

Tool to create a new Paper folder with the provided info. Use when you need to organize Paper documents by creating a new folder. Note: This endpoint works for content created by users on the older version of Paper.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                | Description                                                                                                                                |
| ------------------ | ------- | :------: | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`             | string  |     ✅    | `"Test Paper Folder"`  | The name of the new Paper folder.                                                                                                          |
| `is_team_folder`   | boolean |          | —                      | Whether the folder to be created should be a team folder. If not specified, defaults to false.                                             |
| `parent_folder_id` | string  |          | `"e.1234567890abcdef"` | The encrypted Paper folder Id where the new Paper folder should be created. If not provided, the folder will be created at the root level. |

***

### `Dropbox Create Shared Link`

Integration name: **DROPBOX\_CREATE\_SHARED\_LINK**

Tool to create a stable, long-lived shared link for a Dropbox file or folder. Use when the user needs a permanent URL suitable for embedding or long-term sharing (as opposed to temporary links that expire in hours). Supports optional settings like expiration, password protection, and visibility controls. Note: If a shared link already exists for the path, the API will return an error; in that case, use a separate list\_shared\_links endpoint to retrieve existing links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                   | Description                                                                                                                                         |
| ---------- | ------ | :------: | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`     | string |     ✅    | `"/Documents/report.pdf"` | The path or file identifier to be shared by the shared link. Supports Dropbox path (e.g., '/folder/file.txt'), id:..., rev:..., or ns:... notation. |
| `settings` | object |          | —                         | Settings for the shared link configuration.                                                                                                         |

***

### `Dropbox Create Shared Link Simple`

Integration name: **DROPBOX\_CREATE\_SHARED\_LINK\_SIMPLE**

DEPRECATED: Use CreateSharedLinkV2 instead. Tool to create a basic shared link for a Dropbox file or folder. If a shared link already exists for the given path, that link is returned. Use when you need a simple shared link without advanced settings like password protection or custom expiration. For links with advanced settings, use the create\_shared\_link action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                   | Description                                                                                                                                                                                          |
| ---------------- | ------- | :------: | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`           | string  |     ✅    | `"/Documents/report.pdf"` | The path to share. This can be a file or folder path in Dropbox (e.g., '/folder/file.txt'). If a shared link already exists for this path, that link will be returned instead of creating a new one. |
| `short_url`      | boolean |          | —                         | Whether to return a shortened URL. If true, the returned URL will be shorter and easier to share.                                                                                                    |
| `pending_upload` | object  |          | —                         | Mode for pending upload indicating file or folder type.                                                                                                                                              |

***

### `Dropbox Create Team Folder`

Integration name: **DROPBOX\_CREATE\_TEAM\_FOLDER**

Tool to create a new, active team folder with no members in Dropbox. Use when you need to set up a new team folder for collaboration. The folder is created without any members initially.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example       | Description                                                            |
| -------------- | ------ | :------: | ------------- | ---------------------------------------------------------------------- |
| `name`         | string |     ✅    | `"Marketing"` | Name for the new team folder. The name must be unique within the team. |
| `sync_setting` | string |          | —             | Sync setting enum for the team folder.                                 |

***

### `Dropbox Create Team Group`

Integration name: **DROPBOX\_CREATE\_TEAM\_GROUP**

Tool to create a new, empty team group in Dropbox with a specified name. Use when you need to create a new group for organizing team members. Requires team admin credentials with team member management permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example            | Description                                                                                                     |
| ----------------------- | ------ | :------: | ------------------ | --------------------------------------------------------------------------------------------------------------- |
| `group_name`            | string |     ✅    | `"Marketing Team"` | The name for the new group. Must not be empty.                                                                  |
| `group_external_id`     | string |          | —                  | An arbitrary external ID that the creator of the team can associate with the group for organizational purposes. |
| `group_management_type` | string |          | —                  | The type of group management for the team group.                                                                |

***

### `Dropbox Delete All Closed File Requests`

Integration name: **DROPBOX\_DELETE\_ALL\_CLOSED\_FILE\_REQUESTS**

Tool to delete all closed file requests owned by the current user. Use when you need to clean up closed file requests in bulk.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Delete Batch`

Integration name: **DROPBOX\_DELETE\_BATCH**

Tool to delete multiple files or folders at once in Dropbox. Use when you need to delete several items simultaneously. This route is asynchronous and returns a job ID immediately for large batches. Use delete\_batch/check to verify completion status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                                | Description                                                           |
| --------- | ----- | :------: | ------------------------------------------------------ | --------------------------------------------------------------------- |
| `entries` | array |     ✅    | `[{"path":"/file1.txt"},{"path":"/folder/file2.pdf"}]` | List of files or folders to delete. Maximum 1000 entries per request. |

***

### `Dropbox Delete File`

Integration name: **DROPBOX\_DELETE\_FILE**

Tool to delete a file or folder at the specified path in Dropbox. Use when you need to permanently remove a file or folder and all its contents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example            | Description                                                                                                            |
| ------------ | ------ | :------: | ------------------ | ---------------------------------------------------------------------------------------------------------------------- |
| `path`       | string |     ✅    | `"/test_file.txt"` | Path in the user's Dropbox to delete. The path must start with a slash.                                                |
| `parent_rev` | string |          | —                  | Perform delete if given 'rev' matches the existing file's latest 'rev'. This field does not support deleting a folder. |

***

### `Dropbox Delete File Or Folder`

Integration name: **DROPBOX\_DELETE\_FILE\_OR\_FOLDER**

DEPRECATED: Use DeleteFile instead. Permanently and irreversibly deletes the file or folder at the specified path in Dropbox. Folder deletion is recursive — all nested contents are removed. Always obtain explicit user confirmation before calling, especially for folders. Requires the `files.content.write` scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                              |
| --------- | ------ | :------: | ------- | ---------------------------------------- |
| `path`    | string |     ✅    | —       | The path to the file or folder to delete |

***

### `Dropbox Delete File Requests`

Integration name: **DROPBOX\_DELETE\_FILE\_REQUESTS**

Tool to delete a batch of closed file requests in Dropbox. Use when you need to remove multiple file requests that are no longer needed. Only closed file requests can be deleted; attempting to delete open file requests will fail.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                           | Description                                                                   |
| --------- | ----- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------- |
| `ids`     | array |     ✅    | `["oaCAVmEyrqYnkZX9955Y","BaZmehYoXMPtaRmfTbSG"]` | List of file request IDs to delete. Only closed file requests can be deleted. |

***

### `Dropbox Delete Manual Contacts Batch`

Integration name: **DROPBOX\_DELETE\_MANUAL\_CONTACTS\_BATCH**

Tool to delete specific manually added contacts from Dropbox by their email addresses. Use when you need to remove contacts that were manually added to a user's Dropbox account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                                                    |
| ------------------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email_addresses`         | array  |     ✅    | `["test1@example.com","test2@example.com"]`   | List of email addresses of manually added contacts to delete. Must be valid email addresses.                                                                   |
| `dropbox_api_select_user` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) to specify which team member's contacts to delete. Required when using team OAuth tokens. Optional for individual accounts. |

***

### `Dropbox Delete Team Folder Permanently`

Integration name: **DROPBOX\_DELETE\_TEAM\_FOLDER\_PERMANENTLY**

Tool to permanently delete an archived team folder in Dropbox. Use when you need to permanently remove an archived team folder and all its contents. The team folder must be archived before it can be permanently deleted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example         | Description                                                                                                                                                             |
| ---------------- | ------ | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_folder_id` | string |     ✅    | `"13746671955"` | The ID of the team folder to permanently delete. The team folder must be archived before it can be permanently deleted. You can get this from list team folders action. |

***

### `Dropbox Delete Team Group`

Integration name: **DROPBOX\_DELETE\_TEAM\_GROUP**

Tool to delete a Dropbox team group. Use when you need to remove a team group. Note that this requires team admin permissions and the group cannot be system-managed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                | Description                                                                                                                                                                  |
| ------------------- | ------ | :------: | -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`          | string |          | `"g:e18cdeb8c1e9c0280000000000000053"` | The Dropbox group ID. Required when selector\_type is 'group\_id'. Example: 'g:e18cdeb8c1e9c0280000000000000053'                                                             |
| `selector_type`     | string |     ✅    | `"group_id"`                           | The type of selector to use for identifying the group. 'group\_id' - Select group by Dropbox group ID. 'group\_external\_id' - Select group by external ID.                  |
| `group_external_id` | string |          | —                                      | The external ID of the group. Required when selector\_type is 'group\_external\_id'. This is the ID from an external system that has been associated with the Dropbox group. |

***

### `Dropbox Delete Team Member Profile Photo`

Integration name: **DROPBOX\_DELETE\_TEAM\_MEMBER\_PROFILE\_PHOTO**

Tool to delete a team member's profile photo. Use when you need to remove the profile picture of a team member. Requires team admin permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                            |
| --------- | ------ | :------: | ------- | ------------------------------------------------------ |
| `user`    | object |     ✅    | —       | The team member whose profile photo should be deleted. |

***

### `Dropbox Delete Team Members Secondary Emails`

Integration name: **DROPBOX\_DELETE\_TEAM\_MEMBERS\_SECONDARY\_EMAILS**

Tool to delete secondary email addresses from Dropbox team members. Use when you need to remove secondary emails from one or more team members. Requires team member management permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type  | Required | Example | Description                                                                                                                         |
| ------------------ | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `emails_to_delete` | array |     ✅    | —       | List of users and their secondary emails to delete. Each entry specifies a user and which secondary emails to remove from that user |

***

### `Dropbox Download Zip`

Integration name: **DROPBOX\_DOWNLOAD\_ZIP**

Tool to download a folder from Dropbox as a zip file. Use when you need to download an entire folder structure with multiple files. The folder must be less than 20 GB in size with any single file less than 4 GB, and the resulting zip must have fewer than 10,000 total entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description                                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`    | string |     ✅    | `"/Documents/project_files"` | The path to the folder to download as a zip file. Must be a folder path, not a single file. The folder must be less than 20 GB in size with any single file less than 4 GB. The resulting zip must have fewer than 10,000 total file and folder entries. |

***

### `Dropbox Export File`

Integration name: **DROPBOX\_EXPORT\_FILE**

Tool to export non-downloadable Dropbox files (especially Dropbox Paper) to Markdown/HTML/plain text and return usable content. Use when you need to access content from files that cannot be downloaded directly, such as Dropbox Paper documents or Google Docs stored in Dropbox. Requires files.content.read scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                     | Description                                                                                                                                                                                     |
| --------------- | ------ | :------: | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`          | string |          | —                           | 'return\_text': return exported text directly (truncated safely if very large). 'store\_and\_link': create a temporary Dropbox download link to the original file.                              |
| `path`          | string |     ✅    | `"/Documents/sample.paper"` | The path of the file to be exported. Supports Dropbox path (e.g., '/folder/file.paper'), id:..., rev:..., or ns:... notation. Use this for non-downloadable files like Dropbox Paper documents. |
| `export_format` | string |          | `"markdown"`                | The file format to export to. Common values: 'markdown', 'html', 'plain\_text'. If not specified, the default format for the file type will be used. For Dropbox Paper, default is 'markdown'.  |

***

### `Dropbox Files Search`

Integration name: **DROPBOX\_FILES\_SEARCH**

Tool to search for files and folders in Dropbox by name or content. Use when you need to find items matching a search query within a specific path or across the entire Dropbox.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example  | Description                                                                                                                                                                                                       |
| ------------- | ------- | :------: | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`        | string  |          | —        | Search mode for Dropbox files search.                                                                                                                                                                             |
| `path`        | string  |          | `""`     | The path in the user's Dropbox to search. Should probably be a folder. Use empty string to search the entire Dropbox.                                                                                             |
| `query`       | string  |     ✅    | `"test"` | The string to search for. The search string is split on spaces into multiple tokens. For file name searching, the last token is used for prefix matching (e.g., 'bat c' matches 'bat cave' but not 'batman car'). |
| `start`       | integer |          | —        | The starting index within the search results (used for paging). Default is 0.                                                                                                                                     |
| `max_results` | integer |          | —        | The maximum number of search results to return. Default is 100, max is 1000.                                                                                                                                      |

***

### `Dropbox Finish Upload Session`

Integration name: **DROPBOX\_FINISH\_UPLOAD\_SESSION**

Tool to finish an upload session and save the uploaded data to the given file path. Use when completing a multi-part upload after using upload\_session/start and upload\_session/append. A single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2,199,019,061,248 bytes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                        |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------ |
| `commit`  | object |     ✅    | —       | Contains the path and other optional modifiers for the commit.                                                     |
| `cursor`  | object |     ✅    | —       | Cursor information containing the session\_id and current offset in bytes.                                         |
| `content` | object |          | —       | Final file data to append before finishing the session. Can be omitted if no additional data needs to be appended. |

***

### `Dropbox Finish Upload Session Batch`

Integration name: **DROPBOX\_FINISH\_UPLOAD\_SESSION\_BATCH**

Tool to commit many files at once into a user's Dropbox after uploading file contents via upload\_session/start and upload\_session/append. Use when you need to finish multiple upload sessions in a single request. Returns an async\_job\_id which can be used with upload\_session/finish\_batch/check to poll for completion. Maximum 1000 entries per request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                                        |
| --------- | ----- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `entries` | array |     ✅    | —       | List of upload sessions to finish. Each entry contains cursor information and commit parameters. Maximum 1000 entries per request. |

***

### `Dropbox Get About Me`

Integration name: **DROPBOX\_GET\_ABOUT\_ME**

Tool to get information about the current user's Dropbox account. Use when you need to retrieve account details like email, name, or account type. Useful for verifying authenticated account identity before destructive operations in multi-account setups. Note: successful response does not imply access to all shared or team folders; path-specific permission errors from other tools indicate missing folder-level permissions, not empty results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Account`

Integration name: **DROPBOX\_GET\_ACCOUNT**

Tool to get information about a user's Dropbox account using their account ID. Use when you need to retrieve account details for a specific user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                      | Description                                                                       |
| ------------ | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------------- |
| `account_id` | string |     ✅    | `"dbid:AAAg6CG-fX-PFZBs5HJhXA9ULyesUj6f6h0"` | A user's account identifier. Can be obtained from get\_current\_account endpoint. |

***

### `Dropbox Get Account Batch`

Integration name: **DROPBOX\_GET\_ACCOUNT\_BATCH**

Tool to get information about multiple user accounts in a single request. At most 300 accounts may be queried per request. Use when you need to retrieve details for multiple Dropbox users efficiently.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type  | Required | Example                                        | Description                                                                                                       |
| ------------- | ----- | :------: | ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `account_ids` | array |     ✅    | `["dbid:AAAg6CG-fX-PFZBs5HJhXA9ULyesUj6f6h0"]` | List of user account identifiers. Should not contain any duplicate account IDs. Maximum 300 accounts per request. |

***

### `Dropbox Get Available Team Member Roles`

Integration name: **DROPBOX\_GET\_AVAILABLE\_TEAM\_MEMBER\_ROLES**

Tool to retrieve all available team member roles for the connected Dropbox team. Use when you need to discover what roles can be assigned to team members (e.g., Team, Billing, Report, Content, Security, User management, Support).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Copy Reference`

Integration name: **DROPBOX\_GET\_COPY\_REFERENCE**

Tool to get a copy reference to a file or folder. Use when you need to generate a reference string that can be used to copy the file or folder to another user's Dropbox via copy\_reference/save.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                                                      |
| --------- | ------ | :------: | ------------- | ------------------------------------------------------------------------------------------------ |
| `path`    | string |     ✅    | `"/test.txt"` | The path to the file or folder you want to get a copy reference to. This path is case-sensitive. |

***

### `Dropbox Get File Lock Batch`

Integration name: **DROPBOX\_GET\_FILE\_LOCK\_BATCH**

Tool to return lock metadata for multiple files in a single batch request. Use when you need to check the lock status of up to 1000 files at once.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                               |
| --------- | ----- | :------: | ------- | ------------------------------------------------------------------------- |
| `entries` | array |     ✅    | —       | List of files to check lock status for. Maximum 1000 entries per request. |

***

### `Dropbox Get File Metadata Batch`

Integration name: **DROPBOX\_GET\_FILE\_METADATA\_BATCH**

Tool to retrieve metadata for multiple shared files in a single batch request. Use when you need to get information about shared file permissions, access levels, owners, and sharing policies for multiple files at once.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                         | Description                                                                                                                                                                           |
| --------- | ----- | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `files`   | array |     ✅    | `["/Documents/report.pdf","/Photos/image.png"]` | List of files to query. Each can be a file ID (e.g., 'id:7bh4zBmgZoAAAAAAAAAAFg') or a path (e.g., '/path/to/file.txt'). Maximum 100 files per request.                               |
| `actions` | array |          | —                                               | A list of FileActions corresponding to FilePermissions that should appear in the response's permissions field describing the actions the authenticated user can perform on the files. |

***

### `Dropbox Get File Preview`

Integration name: **DROPBOX\_GET\_FILE\_PREVIEW**

Tool to get a preview for a file. PDF previews are generated for document formats (.ai, .doc, .docx, .eps, .ppt, .pptx, etc.), and HTML previews are generated for spreadsheet formats (.csv, .xls, .xlsx, etc.). Use when you need to view file content without downloading the original file. Returns error for unsupported file types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                                                                                                                                                   |
| --------- | ------ | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`    | string |     ✅    | `"/Documents/report.docx"` | The path of the file to preview. Supported preview formats: PDF previews (.ai, .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf); HTML previews (.csv, .ods, .xls, .xlsm, .gsheet, .xlsx). |

***

### `Dropbox Get File Request`

Integration name: **DROPBOX\_GET\_FILE\_REQUEST**

Tool to retrieve details of an existing file request by ID. Use when you need to check the status, URL, deadline, or other details of a specific file request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                             |
| --------- | ------ | :------: | ------------------------ | --------------------------------------- |
| `id`      | string |     ✅    | `"mi5NYsiwUIS6sYwhEeDS"` | The ID of the file request to retrieve. |

***

### `Dropbox Get File Tags`

Integration name: **DROPBOX\_GET\_FILE\_TAGS**

Tool to get list of tags assigned to files or folders in Dropbox. Use when you need to retrieve tags for one or more items. This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example         | Description                                                                                                                              |
| --------- | ----- | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `paths`   | array |     ✅    | `["/test.txt"]` | List of file or folder paths to get tags for (e.g., \["/Documents/report.pdf", "/Photos/image.jpg"]). Maximum of 1000 paths per request. |

***

### `Dropbox Get Folder Cursor`

Integration name: **DROPBOX\_GET\_FOLDER\_CURSOR**

Tool to get a cursor representing the current state of a folder without listing its contents. Use when you only need to track future changes to a folder, not retrieve existing files. This is more efficient than list\_folder for setting up change monitoring or sync functionality.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                             | Type    | Required | Example | Description                                                                                                                                            |
| ------------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `path`                                | string  |          | `""`    | The path to the folder. Use "" (empty string) for the root folder, or a path like "/folder/subfolder". Also accepts folder IDs (e.g., "id:abc123xyz"). |
| `limit`                               | integer |          | —       | The maximum number of results to return per request when using this cursor with list\_folder/continue. If not specified, the API uses a default.       |
| `recursive`                           | boolean |          | —       | If true, the cursor will include all subfolders and their contents recursively. If false, only the immediate contents are tracked.                     |
| `shared_link`                         | object  |          | —       | Shared link information for listing folder contents.                                                                                                   |
| `include_deleted`                     | boolean |          | —       | If true, deleted files and folders will be included when using this cursor to track changes.                                                           |
| `include_media_info`                  | boolean |          | —       | If true, media metadata (dimensions, location, etc.) will be included for photo and video files when using this cursor.                                |
| `include_mounted_folders`             | boolean |          | —       | If true, results will include entries under mounted folders (app folders, shared folders, team folders).                                               |
| `include_property_groups`             | object  |          | —       | Template filter for property groups.                                                                                                                   |
| `include_has_explicit_shared_members` | boolean |          | —       | If true, results will include a flag indicating whether each file or folder has explicit shared members.                                               |

***

### `Dropbox Get Jwks`

Integration name: **DROPBOX\_GET\_JWKS**

Tool to retrieve JSON Web Key Set containing public verification keys for Dropbox signed ID tokens. Use when you need to verify JWT signatures from Dropbox OpenID Connect authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Metadata`

Integration name: **DROPBOX\_GET\_METADATA**

Tool to fetch metadata for a file or folder by path. Use when you need to verify existence, get canonical identifiers (id, path\_display), determine type (.tag), or retrieve detailed attributes without enumerating folder contents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                             | Type    | Required | Example                   | Description                                                                                                                                   |
| ------------------------------------- | ------- | :------: | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`                                | string  |     ✅    | `"/Documents/report.pdf"` | The path of a file or folder on Dropbox (e.g., "/Documents/report.pdf"). Note: The root folder ("" or "/") is not supported by this endpoint. |
| `include_deleted`                     | boolean |          | —                         | If true, DeletedMetadata will be returned for deleted files or folders. Otherwise, deleted items will return an error.                        |
| `include_media_info`                  | boolean |          | —                         | If true, FileMetadata.media\_info is set for photo and video files, providing additional metadata like dimensions and location.               |
| `include_has_explicit_shared_members` | boolean |          | —                         | If true, the result will include a flag indicating whether the file has any explicit shared members.                                          |

***

### `Dropbox Get Metadata Alpha`

Integration name: **DROPBOX\_GET\_METADATA\_ALPHA**

Tool to fetch metadata for a file or folder using the alpha endpoint. Use when you need metadata with advanced property filtering or custom property template support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                             | Type    | Required | Example                   | Description                                                                                                                     |
| ------------------------------------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `path`                                | string  |     ✅    | `"/Documents/report.pdf"` | The path of a file or folder on Dropbox (e.g., "/Documents/report.pdf"). Use "" or "/" for the root folder.                     |
| `include_deleted`                     | boolean |          | —                         | If true, DeletedMetadata will be returned for deleted files or folders. Otherwise, deleted items will return an error.          |
| `include_media_info`                  | boolean |          | —                         | If true, FileMetadata.media\_info is set for photo and video files, providing additional metadata like dimensions and location. |
| `include_property_groups`             | object  |          | —                         | Filter for property template IDs.                                                                                               |
| `include_has_explicit_shared_members` | boolean |          | —                         | If true, the result will include a flag indicating whether the file has any explicit shared members.                            |

***

### `Dropbox Get Openid Config`

Integration name: **DROPBOX\_GET\_OPENID\_CONFIG**

Tool to retrieve Dropbox's OpenID Connect discovery document describing supported OAuth 2.0 and OIDC parameters. Use when you need to discover Dropbox's OAuth configuration endpoints and capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Shared File Metadata`

Integration name: **DROPBOX\_GET\_SHARED\_FILE\_METADATA**

Tool to retrieve metadata for a shared file in Dropbox. Use when you need to get information about a shared file's permissions, access levels, owner, and sharing policies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                       | Description                                                                                                                                                                          |
| --------- | ------ | :------: | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `file`    | string |     ✅    | `"id:7bh4zBmgZoAAAAAAAAAAFg"` | The file to query. Can be a file ID (e.g., 'id:7bh4zBmgZoAAAAAAAAAAFg') or a path.                                                                                                   |
| `actions` | array  |          | —                             | A list of FileActions corresponding to FilePermissions that should appear in the response's permissions field describing the actions the authenticated user can perform on the file. |

***

### `Dropbox Get Shared Folder Metadata`

Integration name: **DROPBOX\_GET\_SHARED\_FOLDER\_METADATA**

Tool to retrieve metadata for a specific shared folder by its ID. Use when you need detailed information about a shared folder including access level, policies, owner, paths, and permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example         | Description                                                                                                                                                                               |
| ------------------ | ------ | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `actions`          | array  |          | —               | A list of FolderActions corresponding to FolderPermissions that should appear in the response's permissions field describing the actions the authenticated user can perform on the folder |
| `shared_folder_id` | string |     ✅    | `"84528192421"` | The ID for the shared folder                                                                                                                                                              |

***

### `Dropbox Get Shared Link File`

Integration name: **DROPBOX\_GET\_SHARED\_LINK\_FILE**

Tool to download a file from a Dropbox shared link. Use when you have a shared link URL and need to retrieve the actual file content. This endpoint works with shared links to files; for shared links to folders, use the path parameter to specify which file within the folder to download.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                              | Description                                                                                                                                       |
| --------------- | ------ | :------: | -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`           | string |     ✅    | `"https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"` | URL of the shared link to download the file from.                                                                                                 |
| `path`          | string |          | `"/subfolder/file.txt"`                                              | If the shared link is to a folder, this parameter can be used to retrieve a specific file or sub-folder in this folder. Path must start with '/'. |
| `link_password` | string |          | —                                                                    | If the shared link has a password, this parameter can be used to provide it.                                                                      |

***

### `Dropbox Get Shared Link Metadata`

Integration name: **DROPBOX\_GET\_SHARED\_LINK\_METADATA**

Tool to resolve a Dropbox shared link URL into structured metadata. Use when the user provides a shared link and you need to determine what it points to (file vs folder) and obtain canonical identifiers (id, path) to enable follow-on operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                              | Description                                                                                                                                                          |
| --------------- | ------ | :------: | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`           | string |     ✅    | `"https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"` | The shared link URL to retrieve metadata for.                                                                                                                        |
| `path`          | string |          | `"/subfolder"`                                                       | If the shared link is to a folder, this parameter can be used to retrieve metadata for a specific file or sub-folder in this folder. A relative path should be used. |
| `link_password` | string |          | —                                                                    | If the shared link has a password, this parameter can be used to provide it.                                                                                         |

***

### `Dropbox Get Space Usage`

Integration name: **DROPBOX\_GET\_SPACE\_USAGE**

Tool to get space usage information for the current user's Dropbox account. Use when you need to check storage usage, available space, or quota information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Team Feature Values`

Integration name: **DROPBOX\_GET\_TEAM\_FEATURE\_VALUES**

Tool to get values for one or more team features. Use when you need to check team capabilities like upload rate limits, shared team root availability, file events, or selective sync status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type  | Required | Example                               | Description                                                                                                                                                                                                         |
| ---------- | ----- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `features` | array |     ✅    | `[{"tag":"has_team_shared_dropbox"}]` | A list of features to get values for. At least one feature must be included. Available features: 'upload\_api\_rate\_limit', 'has\_team\_shared\_dropbox', 'has\_team\_file\_events', 'has\_team\_selective\_sync'. |

***

### `Dropbox Get Team Folder Info`

Integration name: **DROPBOX\_GET\_TEAM\_FOLDER\_INFO**

Tool to retrieve metadata for team folders. Returns information about folder status, sync settings, and properties for the specified team folder IDs. Use when you need to check the status or configuration of one or more team folders.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type  | Required | Example                            | Description                                                                         |
| ----------------- | ----- | :------: | ---------------------------------- | ----------------------------------------------------------------------------------- |
| `team_folder_ids` | array |     ✅    | `["947182","5819424","852307532"]` | The list of team folder IDs to retrieve metadata for. Must contain at least one ID. |

***

### `Dropbox Get Team Groups Info`

Integration name: **DROPBOX\_GET\_TEAM\_GROUPS\_INFO**

Tool to retrieve information about one or more team groups by their IDs or external IDs. Use when you need to get details about specific groups including name, member count, management type, and creation time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                                                                              |
| -------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `group_ids`          | array  |          | `["g:e18cdeb8c1e9c0280000000000000053"]` | List of Dropbox group IDs. Required when selector\_type is 'group\_ids'. Example: \['g:e18cdeb8c1e9c0280000000000000053', 'g:e18cdeb8c1e9c0280000000000000054']          |
| `selector_type`      | string |     ✅    | `"group_ids"`                            | The type of selector to use for identifying groups. 'group\_ids' - Select groups by Dropbox group IDs. 'group\_external\_ids' - Select groups by external IDs.           |
| `group_external_ids` | array  |          | —                                        | List of external group IDs. Required when selector\_type is 'group\_external\_ids'. These are IDs from an external system that have been associated with Dropbox groups. |

***

### `Dropbox Get Team Groups Job Status`

Integration name: **DROPBOX\_GET\_TEAM\_GROUPS\_JOB\_STATUS**

Tool to check the status of an asynchronous team groups job in Dropbox. Use when you have an async\_job\_id from a previous team groups operation (like groups\_delete) and need to poll its completion status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                   | Description                                                                                                                                   |
| -------------- | ------ | :------: | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AABqMA6RIxE3E6A"` | Id of the asynchronous job. This is the value of a response returned from the method that launched the job (e.g., from team\_groups\_delete). |

***

### `Dropbox Get Team Info`

Integration name: **DROPBOX\_GET\_TEAM\_INFO**

Tool to retrieve information about a Dropbox team. Use when you need to get team details such as team name, ID, licensed user counts, or team policies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Get Team Log Events`

Integration name: **DROPBOX\_GET\_TEAM\_LOG\_EVENTS**

Tool to retrieve team audit log events from Dropbox. Use when you need to access team activity logs, audit trails, or monitor team events. Supports filtering by time range and event category, with pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                                                                                                                           |
| ---------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `time`     | object  |          | —       | Time range filter for events.                                                                                                                                                                                         |
| `limit`    | integer |          | —       | Maximum number of events to return per request. Default is 1000, maximum is 1000.                                                                                                                                     |
| `cursor`   | string  |          | —       | Cursor for pagination, obtained from a previous response. Use this to retrieve the next page of results.                                                                                                              |
| `category` | string  |          | —       | Event category filter to limit results (e.g., 'apps', 'devices', 'domains', 'file\_operations', 'file\_requests', 'groups', 'logins', 'members', 'paper', 'passwords', 'sharing', 'team\_folders', 'team\_policies'). |

***

### `Dropbox Get Team Log Events Continue`

Integration name: **DROPBOX\_GET\_TEAM\_LOG\_EVENTS\_CONTINUE**

Tool to paginate through team audit log events using a cursor from team\_log/get\_events. Use when you have a cursor from a previous call and need to retrieve the next batch of team events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                 | Description                                                                                                                                                 |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAP6SdLPJYCLd3O11Q0JTGW5Ms0gcC66rNdX-AF2kuxmLfnodmK97xxVMp9xUp2K2-ewsj8OEdF5LPo18wSGVQlA1PfuxP7F1cajKhsXPEHQRVx6homquXLCA1qCsR18Mcwg_1BFs6EvxELlhvIZUWOfuD33pBdZ_QSrgRzfVKh7sborjnoh-s_HAPDA4TTH8oFm43YnSP0mPS2MQOYDottqWqDeFw6FwmPTupLCfzKCjACvXQFT747K5UCLsMeaokUvjOSrVZyVo5qXiFx6mOhQsRYZTrSBMJ-NQy7sa7i8pqiRSRkJ590oqjVJeqhwNTwvTB5fdiSs6TVo95zknKUGVfi0mymG21WDhvlto93rtt4fKqYQCEE4d3GtaUcAFuU"` | The cursor returned by a previous call to team\_log/get\_events or team\_log/get\_events/continue. This cursor is used to paginate through all team events. |

***

### `Dropbox Get Team Member Custom Quota`

Integration name: **DROPBOX\_GET\_TEAM\_MEMBER\_CUSTOM\_QUOTA**

Tool to retrieve custom storage quotas for team members. Use when you need to check which team members have custom quota allocations and their quota amounts. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                                                                    | Description                                                                                                                                                                                                                                      |
| --------- | ----- | :------: | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `users`   | array |          | `[{".tag":"team_member_id","team_member_id":"dbmid:AACwJ2ojytbXGFyiUs6_0Py3GqOt2LyicSg"}]` | List of team member identifiers to retrieve custom quota for. Each member must be identified by exactly one of: team\_member\_id, external\_id, or email. Maximum of 1000 users per request. An empty list returns all users with custom quotas. |

***

### `Dropbox Get Team Members Add Job Status`

Integration name: **DROPBOX\_GET\_TEAM\_MEMBERS\_ADD\_JOB\_STATUS**

Tool to poll the status of an asynchronous team member addition job. Use when you have an async\_job\_id from team/members/add\_v2 and need to check if the member addition has completed. Returns 'in\_progress', 'complete' with per-member results, or 'failed' with error details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                            | Description                                                                                                                 |
| -------------- | ------ | :------: | -------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `async_job_id` | string |     ✅    | `"dbjid:AABxv50qC1yK7PO_ZBHJJo9fx233_sEGTeTyfXpzbdkfDpNf9Ry3ZtSMr237ybOTkPMahsSBohIiRm948EcJ0FGj"` | Id of the asynchronous job returned from team/members/add\_v2. This is used to poll the status of the asynchronous request. |

***

### `Dropbox Get Team Members Info`

Integration name: **DROPBOX\_GET\_TEAM\_MEMBERS\_INFO**

Tool to retrieve information about multiple team members in a single request. Use when you need to get details like email, name, status, role, and account information for one or more team members. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                                                                    | Description                                                                                                                                              |
| --------- | ----- | :------: | ------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `members` | array |     ✅    | `[{".tag":"team_member_id","team_member_id":"dbmid:AACwJ2ojytbXGFyiUs6_0Py3GqOt2LyicSg"}]` | List of team member identifiers to retrieve information for. Each member must be identified by exactly one of: team\_member\_id, external\_id, or email. |

***

### `Dropbox Get Team Properties Template`

Integration name: **DROPBOX\_GET\_TEAM\_PROPERTIES\_TEMPLATE**

Tool to get the schema for a specified property template for a team. Use when you need to retrieve the structure and field definitions of a team property template.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                         | Description                                                                                                                             |
| ------------- | ------ | :------: | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `template_id` | string |     ✅    | `"ptid:4YzeuMHpwCgAAAAAAAAAPQ"` | An identifier for a template added by route templates/add\_for\_user or templates/add\_for\_team. Typically in the format 'ptid:XXXXX'. |

***

### `Dropbox Get Temporary Link`

Integration name: **DROPBOX\_GET\_TEMPORARY\_LINK**

Tool to get a one-click temporary (expiring) download link. Use when you need to share a Dropbox file directly without proxying content through this service. Only works for files, not folders. Returned URLs expire within hours and must be regenerated for future use; never treat them as permanent links. Requires `files.content.read` scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                              | Description                                                                                                                                            |
| --------- | ------ | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `path`    | string |     ✅    | `"/Homework/math/Prime_Numbers.txt"` | The path or identifier of the file to get a temporary link for. Supports Dropbox path (e.g., '/folder/file.txt'), id:..., rev:..., or ns:... notation. |

***

### `Dropbox Get Temporary Upload Link`

Integration name: **DROPBOX\_GET\_TEMPORARY\_UPLOAD\_LINK**

Tool to get a one-time use temporary upload link to upload a file to Dropbox. Use when you need to perform a delayed upload where the file will be uploaded to the returned link via POST with Content-Type: application/octet-stream. The upload link is valid for up to 4 hours.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                           |
| ------------- | ------- | :------: | ------- | --------------------------------------------------------------------- |
| `duration`    | integer |          | `3600`  | Link validity period in seconds. Maximum is 4 hours (14400 seconds).  |
| `commit_info` | object  |     ✅    | —       | Upload configuration specifying destination path and upload behavior. |

***

### `Dropbox Get Thumbnail`

Integration name: **DROPBOX\_GET\_THUMBNAIL**

Tool to get a thumbnail for an image file. Use when you need to generate a thumbnail preview of an image. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `mode`    | string |          | —                        | How to resize and crop the image. 'strict': scale down to fit within the given size. 'bestfit': scale down to fit within size or its transpose. 'fitone\_bestfit': scale down to completely cover size or its transpose. |
| `path`    | string |     ✅    | `"/Photos/vacation.jpg"` | The path to the image file you want to thumbnail. Must start with '/'.                                                                                                                                                   |
| `size`    | string |          | —                        | The size for the thumbnail image. Options range from 32x32 pixels to 2048x1536 pixels.                                                                                                                                   |
| `format`  | string |          | —                        | The format for the thumbnail image. Use 'jpeg' for photos (default), 'png' for screenshots and digital arts.                                                                                                             |

***

### `Dropbox Get Thumbnail Batch`

Integration name: **DROPBOX\_GET\_THUMBNAIL\_BATCH**

Tool to get thumbnails for multiple image files in a single batch request. Use when you need to generate thumbnail previews for up to 25 images at once. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                          |
| --------- | ----- | :------: | ------- | -------------------------------------------------------------------- |
| `entries` | array |     ✅    | —       | List of files to get thumbnails for. Maximum 25 entries per request. |

***

### `Dropbox Get Thumbnail V2`

Integration name: **DROPBOX\_GET\_THUMBNAIL\_V2**

Tool to get a thumbnail for an image file. Use when you need to generate a thumbnail preview of an image. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB. Can access files via direct path or shared link.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                             | Description                                                                                                                                                                                                              |
| --------------- | ------ | :------: | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `url`           | string |          | `"https://www.dropbox.com/s/abc123/image.jpg?dl=0"` | The shared link URL (required when resource\_type is 'link').                                                                                                                                                            |
| `mode`          | string |          | —                                                   | How to resize and crop the image. 'strict': scale down to fit within the given size. 'bestfit': scale down to fit within size or its transpose. 'fitone\_bestfit': scale down to completely cover size or its transpose. |
| `path`          | string |          | `"/Photos/vacation.jpg"`                            | The path to the image file (required when resource\_type is 'path'). Must start with '/'.                                                                                                                                |
| `size`          | string |          | —                                                   | The size for the thumbnail image. Options range from 32x32 pixels to 2048x1536 pixels.                                                                                                                                   |
| `format`        | string |          | —                                                   | The format for the thumbnail image. Use 'jpeg' for photos, 'png' for screenshots and digital arts.                                                                                                                       |
| `link_path`     | string |          | —                                                   | Optional relative path within shared folder (only used with resource\_type='link' when link points to a folder).                                                                                                         |
| `resource_type` | string |     ✅    | —                                                   | Type of resource: 'path' for direct file path or 'link' for shared link.                                                                                                                                                 |

***

### `Dropbox Get User Features`

Integration name: **DROPBOX\_GET\_USER\_FEATURES**

Tool to get a list of feature values configured for the current Dropbox account. Use when you need to check which features are enabled, such as paper\_as\_files or file\_locking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type  | Required | Example                                             | Description                                                                                                                                                                                        |
| ---------- | ----- | :------: | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `features` | array |     ✅    | `[{"tag":"paper_as_files"},{"tag":"file_locking"}]` | A list of features to get values for. Available features: 'paper\_as\_files' (information about how Paper files are stored), 'file\_locking' (whether users can lock files in shared directories). |

***

### `Dropbox List Excluded Users Continue`

Integration name: **DROPBOX\_LIST\_EXCLUDED\_USERS\_CONTINUE**

Tool to paginate through team members excluded from space limits using a cursor from a previous list call. Use when you have a cursor from the initial excluded users list endpoint and need to retrieve the next batch of excluded team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                            | Description                                                                                                                                                                                                                                                                                         |
| --------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAbfs_7ExsNYasJr9Y4iFlAbSetz6vpWVR0G3_k1gb6dMOpMGO4DUUYQ7yUcGGCFT0wZv_PE6cgGIoetyVvRR7cV5nW7WcRf3vmmt4V8if8OcpdBjr_ifZspHgftt3nOj7aTmZ-rnBfprgGvfaD4YgcuT80vskf8FYrJPWMaSGLd2Z520mqgBgyL8Cjd_FyAM5F0plBaBkw6e73Yf_iounqN-dworDeDyzxjkoKnM2QA4Q"` | The cursor returned by a previous call to list member space limits excluded users. This cursor is used to paginate through all excluded users. Must come from a previous call to /2/team/member\_space\_limits/excluded\_users/list or /2/team/member\_space\_limits/excluded\_users/list/continue. |

***

### `Dropbox List File Members`

Integration name: **DROPBOX\_LIST\_FILE\_MEMBERS**

Tool to obtain the members who have been invited to a file, both inherited and uninherited members. Use when you need to retrieve detailed information about users, groups, and invitees with access to a specific file, including their access levels and permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                       | Description                                                                                                                                                                    |
| ------------------- | ------- | :------: | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `file`              | string  |     ✅    | `"id:3kmLmQFnf1AAAAAAAAAAAw"` | The file for which you want to see members. Can be a file ID (starting with 'id:') or a file path (starting with '/').                                                         |
| `limit`             | integer |          | —                             | Number of members to return max per query. Must be between 1 and 300.                                                                                                          |
| `actions`           | array   |          | `["make_editor","remove"]`    | The actions for which to return permissions on a member. Valid values: 'leave\_a\_copy', 'make\_editor', 'make\_owner', 'make\_viewer', 'make\_viewer\_no\_comment', 'remove'. |
| `include_inherited` | boolean |          | —                             | Whether to include members who only have access from a parent shared folder. Defaults to true.                                                                                 |

***

### `Dropbox List File Members Batch`

Integration name: **DROPBOX\_LIST\_FILE\_MEMBERS\_BATCH**

Tool to get members of multiple files at once. Use when you need to retrieve sharing information for multiple files in a single request. Returns users, groups, and invitees with access to each file, but does not include inherited members or detailed permissions. For more detailed results, use the individual file member endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                    | Description                                                                                                                           |
| --------- | ------- | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| `files`   | array   |     ✅    | `["id:abc123xyz","/Documents/report.pdf"]` | Files for which to return members. Can be file IDs (starting with 'id:') or paths (starting with '/'). Maximum 100 files per request. |
| `limit`   | integer |          | —                                          | Number of members to return max per query per file. Defaults to 10 if not specified. Maximum 20.                                      |

***

### `Dropbox List File Requests`

Integration name: **DROPBOX\_LIST\_FILE\_REQUESTS**

Tool to list all file requests owned by the current user. Use when you need to see existing file requests, their status, and details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                               |
| --------- | ------- | :------: | ------- | --------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of file requests to return. Default: 1000. |

***

### `Dropbox List File Requests Continue`

Integration name: **DROPBOX\_LIST\_FILE\_REQUESTS\_CONTINUE**

Tool to paginate through file requests using a cursor from a previous list call. Use when you have a cursor from /2/file\_requests/list or /2/file\_requests/list/continue and need to retrieve the next batch of file requests.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                   | Description                                                                                                                                                                                                           |
| --------- | ------ | :------: | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"` | The cursor returned by a previous call to list file requests. This cursor is used to paginate through all file requests. Must come from a previous call to /2/file\_requests/list or /2/file\_requests/list/continue. |

***

### `Dropbox List File Revisions`

Integration name: **DROPBOX\_LIST\_FILE\_REVISIONS**

Tool to retrieve the revision history for a file. Use when you need to see past versions of a file, restore a previous version, or track changes over time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                   | Description                                                                                                                  |
| --------- | ------- | :------: | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `mode`    | object  |          | —                         | Mode for listing revisions.                                                                                                  |
| `path`    | string  |     ✅    | `"/Documents/report.pdf"` | The path to the file you want to see the revisions of (e.g., "/Documents/report.pdf"). Must be a valid file path in Dropbox. |
| `limit`   | integer |          | —                         | The maximum number of revision entries returned. Default is 10, minimum is 1, maximum is 100.                                |

***

### `Dropbox List Files In Folder`

Integration name: **DROPBOX\_LIST\_FILES\_IN\_FOLDER**

Tool to list files and folders in a specified Dropbox directory. Use when you need to see the contents of a folder, including subfolders if recursive is true. When the response contains `has_more=true`, continue fetching with the returned cursor until `has_more=false` — stopping early misses entries in large folders. Response entries include both files and folders; use the `.tag` field on each entry to distinguish item types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                        |
| -------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `path`                           | string  |          | —       | The folder path (e.g., "/europe/invoices") or folder ID (e.g., "id:aBcDeFgH123") to list contents from. Use "" (empty string) for the root folder. No trailing slashes or whitespace allowed — malformed paths can silently produce empty results. Prefer paths from `path_display` or `path_lower` fields in prior API responses over manually constructed paths. |
| `limit`                          | integer |          | —       | The maximum number of results to return per request. Default is 2000. Max is 2000.                                                                                                                                                                                                                                                                                 |
| `recursive`                      | boolean |          | —       | If true, recursively lists contents of nested subfolders; otherwise, lists only immediate contents. Large or broad folder trees with recursive=true can produce very large responses and high latency; use only when full hierarchy is explicitly needed.                                                                                                          |
| `include_deleted`                | boolean |          | —       | If true, includes deleted (but potentially recoverable) files and folders in the listing.                                                                                                                                                                                                                                                                          |
| `include_media_info`             | boolean |          | —       | If true, includes media metadata (e.g., dimensions, location) for photo and video files.                                                                                                                                                                                                                                                                           |
| `include_non_downloadable_files` | boolean |          | —       | If true, includes non-downloadable files (e.g., Google Docs, Dropbox Paper) in the listing.                                                                                                                                                                                                                                                                        |

***

### `Dropbox List Folder Continue`

Integration name: **DROPBOX\_LIST\_FOLDER\_CONTINUE**

Tool to continue paginating through folder contents using a cursor from list\_folder. Use when has\_more is true to retrieve remaining entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                                                                |
| --------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"your_cursor_token_here"` | The cursor returned by your last call to list\_folder or list\_folder/continue. Use this to paginate through all files and retrieve updates to the folder. |

***

### `Dropbox List Folder Members`

Integration name: **DROPBOX\_LIST\_FOLDER\_MEMBERS**

Tool to list members of a shared folder, including users, groups, and invitees. Use when you need to retrieve information about who has access to a specific shared folder and their permission levels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example         | Description                                                                                                                                                                                                                                                            |
| ------------------ | ------- | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`            | integer |          | —               | The maximum number of results that include members, groups and invitees to return per request                                                                                                                                                                          |
| `actions`          | array   |          | —               | List indicating whether each returned member will include a boolean value showing if the current user can perform the MemberAction on the member. Valid values: 'leave\_a\_copy', 'make\_editor', 'make\_owner', 'make\_viewer', 'make\_viewer\_no\_comment', 'remove' |
| `shared_folder_id` | string  |     ✅    | `"84528192421"` | The ID for the shared folder                                                                                                                                                                                                                                           |

***

### `Dropbox List Folder Members Continue`

Integration name: **DROPBOX\_LIST\_FOLDER\_MEMBERS\_CONTINUE**

Tool to continue paginating through shared folder members using a cursor from list\_folder\_members. Use when cursor is present in list\_folder\_members response to retrieve remaining member entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                            | Description                                                                                                                                               |
| --------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AhHdpP3yi-6qOSoY_epBXgEbKTbPQ3BidBe5QX2mfv90FCC_rR__814MZb3yBrSkHqwyVUo9mwjqGbkxCsDwnfqCTmsaA5vLEXYexqNx6puKy3ZGQtNFdPJsLeq9QITY9NFTBs4Dnke6-Lm74jmHPpQm0FUBT_tTW30cjP7yv-ONdw"` | The cursor returned by your last call to list\_folder\_members or list\_folder\_members/continue. Use this to paginate through all shared folder members. |

***

### `Dropbox List Folders`

Integration name: **DROPBOX\_LIST\_FOLDERS**

DEPRECATED: Use ListFilesInFolder instead. Retrieves a list of folders, files, and deleted entries from a specified Dropbox path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                     |
| ----------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`            | string  |          | —       | Path to the folder (e.g., "" for root, "/folder/subfolder", or "id:abc123xyz"). If a path string, it must start with / and not end with / or whitespace.                                                                        |
| `limit`           | integer |          | —       | Maximum number of folder entries to return per request; an approximate upper bound.                                                                                                                                             |
| `recursive`       | boolean |          | —       | Whether to include folders in nested subfolders (True) or only immediate subfolders (False) Combining with a high `limit` or broad `path` can yield very large responses; scope `path` narrowly to keep result sets manageable. |
| `include_deleted` | boolean |          | —       | Whether to include folders that have been deleted but may be recoverable                                                                                                                                                        |

***

### `Dropbox List Folders Continue`

Integration name: **DROPBOX\_LIST\_FOLDERS\_CONTINUE**

Tool to continue paginating through shared folders using a cursor from list\_folders. Use when the cursor is present in list\_folders response to retrieve remaining shared folder entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                            | Description                                                                                                                           |
| --------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AhEZoCTVobpJ50FL9o65wOvibCEMRe8vuB4Qf-5GzuHNpvqavj4GzN3qfZBcHPiqRdSFAgjbLmA58TWgikdObP1Egk2HOLsEXtlAkWjOLbEyYI9XRqIBHM8Hdl-r-DGJeCDG01JFxQqGdfYDh_ZZx1RTRRHzVoQXMLH3oHJqpo7O0IvYlTKxSfesfY1SLuEllK-ngYDCRNvn0tytM2DM7tGP02s_FWcXV_N7Ak9IMCj1Hw"` | The cursor returned by the previous call to list\_folders or list\_folders/continue. Use this to paginate through all shared folders. |

***

### `Dropbox List Member Linked Apps`

Integration name: **DROPBOX\_LIST\_MEMBER\_LINKED\_APPS**

Tool to list all applications linked to a specific team member's account. Use when you need to audit or review which third-party applications have been authorized by a particular team member.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                       | Description                                                          |
| ---------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------- |
| `team_member_id` | string |     ✅    | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | The team member ID. Can be obtained from team/members/list endpoint. |

***

### `Dropbox List Member Space Limits Excluded Users`

Integration name: **DROPBOX\_LIST\_MEMBER\_SPACE\_LIMITS\_EXCLUDED\_USERS**

Tool to list team members excluded from space limits. Use when you need to view which users are exempt from storage quotas. This is a team-level operation requiring team admin authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                  |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Number of results to return per call. If not specified, all excluded users will be returned. |

***

### `Dropbox List Mountable Folders`

Integration name: **DROPBOX\_LIST\_MOUNTABLE\_FOLDERS**

Tool to list all shared folders the current user can mount or unmount. Use when discovering mountable shared folders (unmounted folders can be identified by absence of path\_lower field). This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                    |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of mountable folders to return per request. If not specified, the API will use its default limit.                                                                                               |
| `actions` | array   |          | —       | List of FolderActions corresponding to FolderPermissions that should appear in the response's SharedFolderMetadata.permissions field, describing the actions the authenticated user can perform on the folder. |

***

### `Dropbox List Mountable Folders Continue`

Integration name: **DROPBOX\_LIST\_MOUNTABLE\_FOLDERS\_CONTINUE**

Tool to paginate through mountable shared folders using a cursor. Use when you have a cursor from a previous call to list\_mountable\_folders or list\_mountable\_folders/continue and need to retrieve the next batch of folders.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                            | Description                                                                                                                                                         |
| --------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AhFFlnMhPWwceCrpaXF0ifpPl0fjff8G3VN7SqR0RT-xlD1qPgBypIZPneBv5QYQ0bT_rYaz7avfSjdk_fVdmgPCMlx5j0QWoKik4rnCfDkc-dW3JmlJGQwMNB4Mh4ZPcGxm_9BYgREmcPOVmjUwvulqa3mY7XY97ixvun0oYRMuIMFFPTp3XWFxns_8FX-dXAbVmlHI5G5UlzitPS4K6UaoDiw9eubAEClOdryO25mh9Q"` | The cursor returned by a previous call to list\_mountable\_folders or list\_mountable\_folders/continue. Use this to paginate through all mountable shared folders. |

***

### `Dropbox List Paper Docs`

Integration name: **DROPBOX\_LIST\_PAPER\_DOCS**

Tool to return the list of all Paper docs according to filter and sort specifications. Use when you need to retrieve Paper document IDs for further operations. To iterate through full pagination, pass the cursor to docs/list/continue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example           | Description                                                                                                                                                                                                         |
| ------------ | ------- | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | `100`             | Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. Higher value results in invalid arguments error.                                                                          |
| `sort_by`    | string  |          | `"accessed"`      | Allows user to specify how the Paper docs should be sorted. 'accessed' sorts by last accessed time, 'modified' sorts by last modified time, 'created' sorts by creation time.                                       |
| `filter_by`  | string  |          | `"docs_accessed"` | Allows user to specify how the Paper docs should be filtered. 'docs\_accessed' fetches all Paper doc IDs that the user has ever accessed. 'docs\_created' fetches only the Paper doc IDs that the user has created. |
| `sort_order` | string  |          | `"ascending"`     | Allows user to specify the sort order of the result. 'ascending' sorts in ascending order, 'descending' sorts in descending order.                                                                                  |

***

### `Dropbox List Paper Docs Continue`

Integration name: **DROPBOX\_LIST\_PAPER\_DOCS\_CONTINUE**

Tool to continue paginating through Paper documents using a cursor from paper/docs/list. Use when has\_more is true to retrieve remaining Paper documents. Note: This endpoint continues to work for older Paper content; check user features to determine Paper version.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                              |
| --------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `cursor`  | string |     ✅    | `"your_cursor_token_here"` | The cursor obtained from paper/docs/list or paper/docs/list/continue. Allows for pagination through all Paper documents. |

***

### `Dropbox List Received Files`

Integration name: **DROPBOX\_LIST\_RECEIVED\_FILES**

Tool to list all files shared with the current user. Returns files directly shared with the user but does not include files received via shared folders or unclaimed invitations. Use when discovering files that have been shared with the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                             |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Number of files to return max per query. Defaults to 100 if no limit is specified. Must be between 1 and 300.                                                                                           |
| `actions` | array   |          | —       | A list of FileActions corresponding to FilePermissions that should appear in the response's SharedFileMetadata.permissions field describing the actions the authenticated user can perform on the file. |

***

### `Dropbox List Shared Folders`

Integration name: **DROPBOX\_LIST\_SHARED\_FOLDERS**

Tool to list all shared folders the authenticated user has access to. Use when discovering shared or team-mounted folders that may not appear in a standard path listing. Returns metadata including folder name, ID, access level, and paths (if mounted).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                            |
| --------- | ------- | :------: | ------- | ------------------------------------------------------ |
| `limit`   | integer |          | —       | Maximum number of shared folders to return per request |

***

### `Dropbox List Shared Links`

Integration name: **DROPBOX\_LIST\_SHARED\_LINKS**

Tool to list existing shared links for the current user, optionally filtered by path. Use when you need to discover or reuse existing shared links to avoid creating duplicates or to check what links already exist for a file or folder. Supports pagination via cursor for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                   | Description                                                                                                                                                                                                                                                                                                    |
| ------------- | ------- | :------: | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`        | string  |          | `"/Documents/report.pdf"` | The path to the file or folder to list shared links for. If omitted, returns all shared links for the current user. If provided, returns links that grant access to the specified path (including parent folder links unless direct\_only is true). Supports Dropbox path notation (e.g., '/folder/file.txt'). |
| `cursor`      | string  |          | —                         | The cursor returned by a previous call to this endpoint. Use this to retrieve additional results when 'has\_more' is true. The API returns a maximum of \~200 links per call.                                                                                                                                  |
| `direct_only` | boolean |          | —                         | If true, only return direct links to the specified path. If false or omitted, also include links to parent folders. Only relevant when 'path' is specified.                                                                                                                                                    |

***

### `Dropbox List Sharing Allowlist`

Integration name: **DROPBOX\_LIST\_SHARING\_ALLOWLIST**

Tool to list Approve List entries for a team from newest to oldest. Use when you need to retrieve allowed domains and emails for team sharing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                              |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------ |
| `limit`   | integer |          | —       | The number of entries to fetch at one time. Maximum and default is 1000. |

***

### `Dropbox List Team Devices`

Integration name: **DROPBOX\_LIST\_TEAM\_DEVICES**

Tool to list all device sessions of a team including web sessions, desktop clients, and mobile clients. Use when you need to audit team devices, view active sessions, or monitor device activity across the team. Supports pagination via cursor for large result sets. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                                                                                                                                                                                                 |
| ------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`                  | string  |          | —       | Pagination cursor for retrieving additional results. At the first call to list\_team\_devices, the cursor shouldn't be passed. Then, if the result includes a cursor, subsequent requests should include the received cursor to retrieve the next sub-list of team devices. |
| `include_web_sessions`    | boolean |          | —       | Whether to list web sessions of the team members. If omitted, defaults to the API's default behavior.                                                                                                                                                                       |
| `include_mobile_clients`  | boolean |          | —       | Whether to list mobile clients of the team members. If omitted, defaults to the API's default behavior.                                                                                                                                                                     |
| `include_desktop_clients` | boolean |          | —       | Whether to list desktop clients of the team members. If omitted, defaults to the API's default behavior.                                                                                                                                                                    |

***

### `Dropbox List Team Folders`

Integration name: **DROPBOX\_LIST\_TEAM\_FOLDERS**

Tool to list all team folders for a Dropbox Business team. Use when you need to discover team-wide folders or manage team folder access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                          |
| --------- | ------- | :------: | ------- | ---------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of team folders to return per request |

***

### `Dropbox List Team Folders Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_FOLDERS\_CONTINUE**

Tool to continue paginating through team folders using a cursor from team\_folder/list. Use when the cursor is present in list\_team\_folders response to retrieve remaining team folder entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                 | Description                                                                                                                                 |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAYRoi-7YM0zYifgbnQum--nG59C4L1PSpKO_ylWlTsNNoOiicBHi1SiNpwUdm14MA3b1tkfcuV9YLnCtAA1YrdM0naZh-3hYjdJD4v1ZadefpWLT31H8UZfD4MG6WdY24Js75GQ2k_vviHCKX3m-0-eN1Ye8yC385M80Zbs__dARmN5M7N3cfFhElxEDaBTAmmeBSISpJaKAr8zYP896-7NUL_15L0SESoa_mS_yuhIgQiBhN_7h4EC_6cw803oW9MOocR-dsdBzgxjyRVMIz-L_XPSjQ5zPhAtadFLFM-rIW_b9yY5t2jB-0_e9SPxeTtqGFw8ZmbkA5_T8p3GKd89hCAhbegnLj3jODbQewqr5pJh8zx3AM8eocv6AuP8sb0"` | The cursor returned by the previous call to team\_folder/list or team\_folder/list/continue. Use this to paginate through all team folders. |

***

### `Dropbox List Team Group Members`

Integration name: **DROPBOX\_LIST\_TEAM\_GROUP\_MEMBERS**

Tool to list members of a Dropbox team group. Use when you need to retrieve the list of team members who belong to a specific group. Returns member profiles with email, status, and access information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                | Description                                                                                                                                                                  |
| ------------------- | ------- | :------: | -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`             | integer |          | —                                      | Maximum number of members to return per request. Must be between 1 and 1000.                                                                                                 |
| `group_id`          | string  |          | `"g:e18cdeb8c1e9c0280000000000000003"` | The Dropbox group ID. Required when selector\_type is 'group\_id'. Example: 'g:e18cdeb8c1e9c0280000000000000003'                                                             |
| `selector_type`     | string  |     ✅    | `"group_id"`                           | The type of selector to use for identifying the group. 'group\_id' - Select group by Dropbox group ID. 'group\_external\_id' - Select group by external ID.                  |
| `group_external_id` | string  |          | —                                      | The external ID of the group. Required when selector\_type is 'group\_external\_id'. This is the ID from an external system that has been associated with the Dropbox group. |

***

### `Dropbox List Team Groups`

Integration name: **DROPBOX\_LIST\_TEAM\_GROUPS**

Tool to list all groups on a Dropbox team. Use when you need to see all team groups with their metadata including group ID, name, and member count.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                     |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Number of groups to return per call. If not specified, all groups are returned. |

***

### `Dropbox List Team Groups Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_GROUPS\_CONTINUE**

Tool to continue listing team groups using a cursor from team/groups/list. Use when you have a cursor from a previous team groups list call and need to retrieve the next batch of groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                                                                                            | Description                                                                                       |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAbFsrAxa8JoiIl-7rpL-xfxyoGJkL-QkqIWTUWbPqT-9PX1k-8IZTdXj5VqwkONNWl9mlETk4a8mLiWIjgK6U_XCjDviA9vWEpdzWiK3b-Ugxf00_3njNvATQ8e9ulYI2h_X5vCCLcrwFCkVIHz7tuesiZwn-sF4yWjcIhJDD4l_aUi6o8Tymo1mNp9BywmSpirekXQh5DFklNWfwWVk91WGkoakmN49rrcMgnCk4P1GsslDscc1H61T08OAeqTjPc63lx0CndG-L1E-TJOoIzbPtLFhHxXCQJRLlUojif0hg"` | The cursor returned by team/groups/list. Indicates from what point to get the next set of groups. |

***

### `Dropbox List Team Groups Members Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_GROUPS\_MEMBERS\_CONTINUE**

Tool to continue listing team group members using a cursor from team/groups/members/list. Use when you have a cursor from a previous group members list call and need to retrieve the next batch of members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                 | Description                                                                                                      |
| --------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAbL--oalATVo-qUR1xnMHfxUpb1FouP_usV_QrQi0fMrb297qjgfNs7CjxnNqty4MUcY6HTt0HkcBxgOkDMxqNLJWbyyvYu9cMGpmUBVlnOeEBNHpQzWej0mRrvSXDS2T-aKOwDIi3BrOzZhS7mVsn_fpoNFedVXFcpUCWnJg1edDUpNCxYSI-qyHLALLBPvFXmkUaz01zOsgktfuiq9_pcRvYwfTxY2RadJNL7JvEd7A5Pf206nInwvqPochiJtI4Xut2dpDzdFA1p-aJ7jOxwDEjvtqbPrIpQWJ6wG-0uJLdKPsPKPZ9Jg5L_5dEbyHs"` | The cursor returned by team/groups/members/list. Indicates from what point to get the next set of group members. |

***

### `Dropbox List Team Linked Apps`

Integration name: **DROPBOX\_LIST\_TEAM\_LINKED\_APPS**

Tool to list all applications linked to team members' accounts. Use when you need to audit or review which third-party applications have been authorized by team members. Supports pagination for large teams.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                   | Description                                                                                                                                                                                         |
| --------- | ------ | :------: | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | `"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"` | At the first call, the cursor shouldn't be passed. Then, if the result includes a cursor, subsequent requests should include the received cursor to receive the next sub-list of team applications. |

***

### `Dropbox List Team Member Devices`

Integration name: **DROPBOX\_LIST\_TEAM\_MEMBER\_DEVICES**

Tool to list all device sessions of a team's member, including web sessions, desktop clients, and mobile clients. Use when you need to retrieve information about a team member's active devices and sessions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                       | Description                                                                    |
| ------------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------ |
| `team_member_id`          | string  |     ✅    | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | The team's member id. Can be obtained from team/members/list endpoint.         |
| `include_web_sessions`    | boolean |          | —                                             | Whether to list web sessions of the team's member. Defaults to true.           |
| `include_mobile_clients`  | boolean |          | —                                             | Whether to list linked mobile devices of the team's member. Defaults to true.  |
| `include_desktop_clients` | boolean |          | —                                             | Whether to list linked desktop devices of the team's member. Defaults to true. |

***

### `Dropbox List Team Members`

Integration name: **DROPBOX\_LIST\_TEAM\_MEMBERS**

Tool to list members of a Dropbox team. Use when you need to retrieve information about team members, including their status, roles, and contact details. Supports pagination for teams with many members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                      |
| ----------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------- |
| `limit`           | integer |          | —       | Number of results to return per call. Maximum is 1000. If not specified, the server will use a default value.    |
| `include_removed` | boolean |          | —       | Whether to return members who have been removed from the team. If true, includes removed members in the results. |

***

### `Dropbox List Team Members Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_MEMBERS\_CONTINUE**

Tool to continue listing team members using a cursor from team/members/list or team/members/list/continue\_v2. Use when you have a cursor from a previous team members list call and need to retrieve the next batch of members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                            | Description                                                                                                                           |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"AAQwkgr3PAthE6u1nueULylh7zNad5wE6YKisbxiFWkk4kcjMqtHTZEnX2jIhV7uUU6_MUpyGcnXe2qIPjED1euB1CmLL3ba_LHK-xTYZizaaA"` | The cursor returned by team/members/list or team/members/list/continue\_v2. Indicates from what point to get the next set of members. |

***

### `Dropbox List Team Namespaces`

Integration name: **DROPBOX\_LIST\_TEAM\_NAMESPACES**

Tool to list all team-accessible namespaces in a Dropbox Business team. Use when you need to discover team folders, shared folders, member home namespaces, or app folders accessible to the team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                   |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Specifying a value here has no effect. The parameter is included for API compatibility but is not functional. |

***

### `Dropbox List Team Namespaces Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_NAMESPACES\_CONTINUE**

Tool to continue paginating through team-accessible namespaces using a cursor from team/namespaces/list. Use when you have a cursor and need to retrieve the next batch of team namespaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                                                               |
| --------- | ------ | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"your_cursor_token_here"` | Cursor returned by a previous call to team/namespaces/list or team/namespaces/list/continue. Use this to paginate through all team-accessible namespaces. |

***

### `Dropbox List Team Sharing Allowlist Continue`

Integration name: **DROPBOX\_LIST\_TEAM\_SHARING\_ALLOWLIST\_CONTINUE**

Tool to continue paginating through team sharing allowlist entries using a cursor. Use when you have a cursor from a previous sharing\_allowlist/list or sharing\_allowlist/list/continue call and need to retrieve the next batch of allowed domains and emails.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                                                                |
| --------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |     ✅    | `"your_cursor_token_here"` | The cursor returned by a previous call to sharing\_allowlist/list or sharing\_allowlist/list/continue. Use this to paginate through all allowlist entries. |

***

### `Dropbox List Templates For Team`

Integration name: **DROPBOX\_LIST\_TEMPLATES\_FOR\_TEAM**

Tool to list all property templates for a team. Use when you need to retrieve available custom file property templates at the team level. Requires a Dropbox Business account with team-level authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox List User Templates`

Integration name: **DROPBOX\_LIST\_USER\_TEMPLATES**

Tool to get the template identifiers for a user. Use when you need to retrieve available custom file property templates that can be applied to files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Modify Shared Link Settings`

Integration name: **DROPBOX\_MODIFY\_SHARED\_LINK\_SETTINGS**

Tool to modify settings of an existing Dropbox shared link. Use when the user needs to change visibility, access permissions, expiration, or password settings for a shared link. Supports changing audience (public/team/private), access level (viewer/editor), expiration dates, and password protection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                              | Description                                                                                                                   |
| ------------------- | ------- | :------: | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `url`               | string  |     ✅    | `"https://www.dropbox.com/s/2sn712vy1ovegw8/Prime_Numbers.txt?dl=0"` | The URL of the shared link to modify. This must be a valid Dropbox shared link URL.                                           |
| `settings`          | object  |     ✅    | —                                                                    | The new settings to apply to the shared link. Only the specified fields will be updated; unspecified fields remain unchanged. |
| `remove_expiration` | boolean |          | —                                                                    | If set to true, removes the expiration date from the shared link. This overrides any 'expires' value in settings.             |

***

### `Dropbox Mount Folder`

Integration name: **DROPBOX\_MOUNT\_FOLDER**

Tool to mount a shared folder for the current user after they have been added as a member. Once mounted, the shared folder will appear in their Dropbox. Use when a user needs to access a shared folder that has been shared with them but not yet mounted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example         | Description                           |
| ------------------ | ------ | :------: | --------------- | ------------------------------------- |
| `shared_folder_id` | string |     ✅    | `"13512984419"` | The ID of the shared folder to mount. |

***

### `Dropbox Move Batch`

Integration name: **DROPBOX\_MOVE\_BATCH**

Tool to move multiple files or folders to different locations at once in Dropbox. Use when you need to relocate several items in a single operation. Note that case-only renaming is not supported. The operation may complete synchronously (returning status for each entry) or asynchronously (returning a job ID to check later with move\_batch/check:2).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                                                                     | Description                                                                                                                           |
| -------------------------- | ------- | :------: | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `entries`                  | array   |     ✅    | `[{"to_path":"/Archive/prime_numbers.txt","from_path":"/Homework/math/prime_numbers.txt"}]` | List of entries to be moved. Each entry specifies a from\_path and to\_path. Minimum 1 entry, maximum 1000 entries.                   |
| `autorename`               | boolean |          | —                                                                                           | If there's a conflict with any file, have the Dropbox server try to autorename that file to avoid the conflict. The default is false. |
| `allow_ownership_transfer` | boolean |          | —                                                                                           | Allow moves by owner even if it would result in an ownership transfer for the content being moved. The default is false.              |

***

### `Dropbox Move File Or Folder`

Integration name: **DROPBOX\_MOVE\_FILE\_OR\_FOLDER**

Move file or folder

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                         |
| -------------------------- | ------- | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_path`                  | string  |     ✅    | `"/Homework/archive/math_prime_numbers.txt"` | Path in the user's Dropbox that is the destination. This path is case-sensitive.                                                                                                                                                                                                                    |
| `from_path`                | string  |     ✅    | `"/Homework/math/prime_numbers.txt"`         | Path in the user's Dropbox to be moved. This path is case-sensitive. Use canonical paths from metadata (path\_display or path\_lower) rather than manually constructed strings to avoid path/not\_found errors.                                                                                     |
| `autorename`               | boolean |          | —                                            | If there's a conflict (e.g., a file with the same name already exists at the destination), have the Dropbox server try to auto-rename the file to avoid the conflict. The default is false. Leaving this false will cause the call to fail outright when a name conflict exists at the destination. |
| `allow_shared_folder`      | boolean |          | —                                            | If true, allows moving shared folders. The default is false.                                                                                                                                                                                                                                        |
| `allow_ownership_transfer` | boolean |          | —                                            | Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does not apply to copies. The default is false.                                                                                                                                             |

***

### `Dropbox Overwrite File Properties`

Integration name: **DROPBOX\_OVERWRITE\_FILE\_PROPERTIES**

Tool to overwrite property groups associated with a file or folder. Use when you need to force apply or replace custom property values for specific templates on a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                              |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `path`                    | string |     ✅    | `"/test_file.txt"`                            | A unique identifier for the file or folder. Can be a path (e.g., '/test\_file.txt') or a file ID.                        |
| `property_groups`         | array  |     ✅    | —                                             | The property groups to force apply. This operation will overwrite existing property groups for the specified templates.  |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on. |

***

### `Dropbox Read File`

Integration name: **DROPBOX\_READ\_FILE**

Downloads a file from the specified Dropbox path, requiring `files.content.read` scope. Response field `file_content_bytes` is base64-encoded binary; decode before saving or passing to libraries. Bursty reads may trigger HTTP 429; honor the `Retry-After` header.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                                                                                                                                                                                                                                     |
| --------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`    | string |     ✅    | `"/photo.jpg"` | The path to search in Must be a canonical Dropbox path from `path_display` or `path_lower` in API results — hand-typed paths frequently cause not-found or 409 errors. Paths in shared/team folders may become invalid if items are moved or access is revoked. |

***

### `Dropbox Remove File Member`

Integration name: **DROPBOX\_REMOVE\_FILE\_MEMBER**

Tool to remove a specified member from a file's sharing permissions. Use when you need to revoke a member's access to a shared file. Note: This does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                       | Description                                                                                 |
| --------- | ------ | :------: | ----------------------------- | ------------------------------------------------------------------------------------------- |
| `file`    | string |     ✅    | `"id:7bh4zBmgZoAAAAAAAAAAFg"` | File from which to remove members. Use the file ID in the format 'id:...' or the file path. |
| `member`  | object |     ✅    | —                             | Member to remove from this file. Specify either by email or dropbox\_id.                    |

***

### `Dropbox Remove File Properties`

Integration name: **DROPBOX\_REMOVE\_FILE\_PROPERTIES**

Tool to permanently remove specified property groups from a file or folder. Use when you need to delete custom properties associated with a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                                                                                                    |
| ------------------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`                    | string |     ✅    | `"/test_properties_file.txt"`                 | A unique identifier for the file or folder. This can be a path (e.g., '/test\_properties\_file.txt') or a file ID.                                                                                             |
| `property_template_ids`   | array  |     ✅    | `["ptid:1a5n2i6d3OYEAAAAAAAAAYa"]`            | A list of identifiers for property templates to remove from the file. These are template IDs created by templates/add\_for\_user or templates/add\_for\_team. Use an empty list to remove all property groups. |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.                                                                                       |

***

### `Dropbox Remove File Properties Template For Team`

Integration name: **DROPBOX\_REMOVE\_FILE\_PROPERTIES\_TEMPLATE\_FOR\_TEAM**

Tool to remove a property template from a team. Use when you need to delete a file properties template that was previously added to the team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                         | Description                                                                                                     |
| ------------- | ------ | :------: | ------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| `template_id` | string |     ✅    | `"ptid:4YzeuMHpwCgAAAAAAAAAPQ"` | An identifier for a template created by templates/add\_for\_user or templates/add\_for\_team. Format: ptid:XXXX |

***

### `Dropbox Remove File Tag`

Integration name: **DROPBOX\_REMOVE\_FILE\_TAG**

Tool to remove a tag from a file or folder in Dropbox. Use when you need to delete or untag an existing tag from an item. The tag will be removed only if it exists on the specified path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                              |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `path`                    | string |     ✅    | `"/test.txt"`                                 | Path to the file or folder to remove the tag from. Must start with a slash.                                              |
| `tag_text`                | string |     ✅    | `"important"`                                 | The tag to remove. Will be automatically converted to lowercase letters by Dropbox.                                      |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on. |

***

### `Dropbox Remove Folder Member`

Integration name: **DROPBOX\_REMOVE\_FOLDER\_MEMBER**

Tool to remove a member from a shared folder. Use when an owner or editor needs to revoke access for a user or group. The member can be identified by email or Dropbox ID. On success, the response is empty; on error, contains detailed error information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example         | Description                                                                                                                                                                         |
| ------------------ | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `member`           | object  |     ✅    | —               | The member to remove from the shared folder. Can be identified by email address or Dropbox ID                                                                                       |
| `leave_a_copy`     | boolean |          | —               | If true, the removed user will keep their copy of the folder after it's unshared (if mounted). Otherwise, it will be removed from their Dropbox. Must be false when kicking a group |
| `shared_folder_id` | string  |     ✅    | `"13497809747"` | The ID for the shared folder from which to remove the member                                                                                                                        |

***

### `Dropbox Remove Group Members`

Integration name: **DROPBOX\_REMOVE\_GROUP\_MEMBERS**

Tool to remove members from a Dropbox team group. Use when you need to remove one or more users from a team group. Requires team admin permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                              |
| ---------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group`          | object  |     ✅    | —       | The group from which users will be removed. Specify either by group\_id or group\_external\_id                                                           |
| `users`          | array   |     ✅    | —       | List of users to be removed from the group. Each user can be identified by team\_member\_id, external\_id, or email                                      |
| `return_members` | boolean |          | —       | Whether to return the list of members in the group after removal. Note that setting this to true may take a long time for large groups. Default is false |

***

### `Dropbox Remove Sharing Allowlist`

Integration name: **DROPBOX\_REMOVE\_SHARING\_ALLOWLIST**

Tool to remove domains or email addresses from the team sharing allowlist. Use when team admins need to revoke approval for specific domains or emails. Requires team admin authentication. At least one of 'domains' or 'emails' must be provided, with a maximum of 1000 entries per call. Entries must already exist on the allowlist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example              | Description                                                                                                                                                                                                                                                                                             |
| --------- | ----- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emails`  | array |          | `"user@example.com"` | List of email addresses to remove from the allowlist. Each email must be a valid string representation following RFC-5322/822 (e.g., '<user@example.com>'). Entries must already exist on the allowlist. Maximum 1000 entries per call. At least one of 'domains' or 'emails' must be provided          |
| `domains` | array |          | `"example.com"`      | List of domains to remove from the allowlist. Each domain must be a valid string representation following RFC-1034/5 (e.g., 'example.com', 'subdomain.example.org'). Entries must already exist on the allowlist. Maximum 1000 entries per call. At least one of 'domains' or 'emails' must be provided |

***

### `Dropbox Remove Team Member Custom Quota`

Integration name: **DROPBOX\_REMOVE\_TEAM\_MEMBER\_CUSTOM\_QUOTA**

Tool to remove custom storage quota for team members, reverting them to the team's default quota. Use when you need to reset storage limits for specific team members. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                                                                            |
| --------- | ----- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `users`   | array |     ✅    | —       | List of users to remove custom quota from. Each user must be identified by exactly one of: team\_member\_id, external\_id, or email. Maximum of 1000 users per request |

***

### `Dropbox Remove Team Member Space Limits Excluded Users`

Integration name: **DROPBOX\_REMOVE\_TEAM\_MEMBER\_SPACE\_LIMITS\_EXCLUDED\_USERS**

Tool to remove users from the member space limits excluded users list. Use when you need to re-enable space limits for specific team members. Maximum of 1000 users per request. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                 |
| --------- | ----- | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `users`   | array |     ✅    | —       | List of users to be removed from the excluded users list. Maximum of 1000 users per request |

***

### `Dropbox Rename Team Folder`

Integration name: **DROPBOX\_RENAME\_TEAM\_FOLDER**

Tool to rename an existing team folder in Dropbox. Use when you need to update the name of a team folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                   | Description                                                                          |
| ---------------- | ------ | :------: | ------------------------- | ------------------------------------------------------------------------------------ |
| `name`           | string |     ✅    | `"Marketing Team Folder"` | New name for the team folder.                                                        |
| `team_folder_id` | string |     ✅    | `"13752586147"`           | The ID of the team folder to rename. You can get this from list team folders action. |

***

### `Dropbox Resend Secondary Email Verification`

Integration name: **DROPBOX\_RESEND\_SECONDARY\_EMAIL\_VERIFICATION**

Tool to resend secondary email verification emails to team members. Use when team members need verification emails resent for their secondary email addresses. Requires team admin credentials.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type  | Required | Example | Description                                                                                                                                                |
| ------------------ | ----- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emails_to_resend` | array |     ✅    | —       | Collection of users paired with secondary emails needing verification resent. Each item contains the user identifier and list of secondary email addresses |

***

### `Dropbox Restore File`

Integration name: **DROPBOX\_RESTORE\_FILE**

Tool to restore a specific revision of a file to the given path in Dropbox. Use when you need to revert a file to a previous version using its revision identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                             | Description                                                                                           |
| --------- | ------ | :------: | ----------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `rev`     | string |     ✅    | `"01649efbe6f88ab00000002e00499b3"` | The revision to restore for the file. This is a unique identifier for a specific version of the file. |
| `path`    | string |     ✅    | `"/test_restore_file.txt"`          | The path to the file you want to restore in the user's Dropbox. Path is case-sensitive.               |

***

### `Dropbox Revoke Shared Link`

Integration name: **DROPBOX\_REVOKE\_SHARED\_LINK**

Tool to revoke a Dropbox shared link. Use when you need to remove access to a file or folder by disabling its shared link. Note that revoking a direct link to a file may not fully prevent access if parent folders have active shared links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                | Description                                                                                                                                                                                |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `url`     | string |     ✅    | `"https://www.dropbox.com/scl/fi/5qnoiq0sb4bra3mwwpsfs/test.txt?rlkey=v2ld1w6kc7wimjf55uqjloz3t&dl=0"` | The URL of the shared link to revoke. Can be any valid Dropbox shared link URL. Note: After revoking a link, the file may still be accessible if there are shared links to parent folders. |

***

### `Dropbox Save Copy Reference`

Integration name: **DROPBOX\_SAVE\_COPY\_REFERENCE**

Tool to save a copy reference to the user's Dropbox. Use when you have a copy reference (obtained from copy\_reference/get) and need to save it to a specific destination path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                         | Description                                                                                                                                                |
| ---------------- | ------ | :------: | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`           | string |     ✅    | `"/test_file_copy_saved.txt"`   | Path in the user's Dropbox that is the destination where the referenced file or folder will be saved. This path is case-sensitive and must start with '/'. |
| `copy_reference` | string |     ✅    | `"AAAAAuAEmbNibzBibzd2dnR5dG0"` | A copy reference returned by copy\_reference/get. This is an opaque string that can be used to save a file or folder to the user's Dropbox.                |

***

### `Dropbox Save Url`

Integration name: **DROPBOX\_SAVE\_URL**

Tool to save a file to Dropbox directly from a public URL via server-side fetch. Use when you have a temporary or public link and want Dropbox to download it directly without local staging. The operation is asynchronous and may take up to 15 minutes for large files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                       | Description                                                                                                              |
| ------------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `url`                     | string  |     ✅    | `"https://example.com/file.pdf"`              | The URL to be saved. Must be a valid, publicly accessible URL.                                                           |
| `path`                    | string  |     ✅    | `"/images/downloaded.png"`                    | The path in Dropbox where the URL will be saved to (including filename). Must start with a slash.                        |
| `wait`                    | boolean |          | —                                             | If true, poll the job status until completion or timeout. If false, return the async\_job\_id immediately.               |
| `timeout_seconds`         | integer |          | —                                             | Maximum time in seconds to wait for job completion when wait=true. Ignored if wait=false.                                |
| `Dropbox-API-Select-User` | string  |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on. |

***

### `Dropbox Search Continue`

Integration name: **DROPBOX\_SEARCH\_CONTINUE**

Tool to fetch the next page of search results from a previous Dropbox search. Use when you have a cursor from a search operation and need to retrieve additional results. Note: search along with search\_continue can only retrieve a maximum of 10,000 matches total.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                   | Description                                                                                                  |
| --------- | ------ | :------: | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `cursor`  | string |     ✅    | `"ZtkX9_EHj3x7PMkVuFIhwKYXEpwpLwyxp9vMKomUhllil9q7eWiAu"` | The cursor returned by your last call to search or search\_continue. Used to fetch the next page of results. |

***

### `Dropbox Search File Or Folder`

Integration name: **DROPBOX\_SEARCH\_FILE\_OR\_FOLDER**

Tool to search for files and folders in Dropbox by name or content, optionally scoped to a path, with pagination support. Results paginate via cursor (up to 100 per page); check `has_more` in the response and re-fetch with the cursor until `has_more` is false. Newly indexed items may have a brief delay before appearing. Verify `path_display` and `.tag` (file vs folder) on each result before acting, as multiple similar-named items may match. Results are limited to items visible to the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------- | ------ | :------: | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`                   | string |          | —                                             | The search string. Must be 1 or more non-whitespace characters. Queries are case-insensitive. Required unless cursor is provided.                                                                                                                                                                                                                                                                                                                                       |
| `cursor`                  | string |          | —                                             | Cursor from a previous search response for fetching the next page of results. When provided, all other parameters are ignored and the continue endpoint is called.                                                                                                                                                                                                                                                                                                      |
| `options`                 | object |          | —                                             | Additional options for the search. If not provided, default search options will be used. Key sub-fields: `path` (must start with '/' or use 'id:...' format; omit to search entire account, narrow to reduce noise); `file_categories` and `file_extensions` to filter by type; no native date-range filter — apply date logic client-side using `server_modified` (UTC). Prefer reusing `path_display` values from prior results rather than manually composing paths. |
| `match_field_options`     | object |          | —                                             | Options for match field highlighting. If not provided, default options will be used.                                                                                                                                                                                                                                                                                                                                                                                    |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.                                                                                                                                                                                                                                                                                                                                                |

***

### `Dropbox Search File Properties`

Integration name: **DROPBOX\_SEARCH\_FILE\_PROPERTIES**

Tool to search across property templates for particular property field values. Use when you need to find files or folders that have specific custom property values (e.g., find all files with priority='high'). Note: This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                               |
| ----------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `queries`         | array  |     ✅    | —       | List of queries to search. Each query specifies a property field value to search for and the field name to search within. |
| `template_filter` | object |          | —       | Filter results to contain only properties associated with specific template IDs.                                          |

***

### `Dropbox Send Team Member Welcome Email`

Integration name: **DROPBOX\_SEND\_TEAM\_MEMBER\_WELCOME\_EMAIL**

Tool to send a welcome email to a pending team member. Use when a team admin needs to resend or send a welcome email to a user who has been invited to the team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                       | Description                                                                                                                    |
| ---------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `.tag`           | string |     ✅    | —                                             | Type of identifier to use: 'team\_member\_id' for team member ID, 'external\_id' for external ID, or 'email' for email address |
| `email`          | string |          | `"partnerships@usefulagents.com"`             | Email address of the user. Required when tag is 'email'                                                                        |
| `external_id`    | string |          | —                                             | External ID of the user. Required when tag is 'external\_id'                                                                   |
| `team_member_id` | string |          | `"dbmid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I"` | The team member ID of the user. Required when tag is 'team\_member\_id'                                                        |

***

### `Dropbox Set Profile Photo`

Integration name: **DROPBOX\_SET\_PROFILE\_PHOTO**

Tool to set the profile photo for the current user's Dropbox account. Use when you need to update or change the user's profile picture. Requires a base64-encoded JPEG image.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                              |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `photo`                   | object |     ✅    | —                                             | Photo data to set as the profile photo. Must be a base64-encoded JPEG image.                                             |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on. |

***

### `Dropbox Set Team Member Custom Quota`

Integration name: **DROPBOX\_SET\_TEAM\_MEMBER\_CUSTOM\_QUOTA**

Tool to set custom storage quotas for team members in Dropbox. Use when you need to assign specific storage limits to individual team members. Maximum of 1000 users per request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type  | Required | Example | Description                                                                      |
| ------------------ | ----- | :------: | ------- | -------------------------------------------------------------------------------- |
| `users_and_quotas` | array |     ✅    | —       | List of users and their custom quotas to set. Maximum of 1000 users per request. |

***

### `Dropbox Share Folder`

Integration name: **DROPBOX\_SHARE\_FOLDER**

Tool to share a folder with collaborators in Dropbox. Most sharing will be completed synchronously, but large folders will be completed asynchronously. If an async\_job\_id is returned, you'll need to call check\_share\_job\_status until the action completes to get the folder metadata. Use when you need to create a shared folder or convert an existing folder to a shared folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example               | Description                                                                                                                                                                                                     |
| -------------------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`               | string  |     ✅    | `"/TestSharedFolder"` | The path to the folder to share. If it does not exist, then a new one is created. Must be a valid Dropbox path (e.g., '/TestSharedFolder').                                                                     |
| `actions`            | array   |          | —                     | A list of FolderActions corresponding to FolderPermissions that should appear in the response's SharedFolderMetadata.permissions field describing the actions the authenticated user can perform on the folder. |
| `force_async`        | boolean |          | —                     | Whether to force the share to happen asynchronously. Large folders will be completed asynchronously anyway. Set to true to make testing the async case repeatable.                                              |
| `link_settings`      | object  |          | —                     | Settings that apply to a link.                                                                                                                                                                                  |
| `member_policy`      | object  |          | —                     | Policy governing who can be a member of a shared folder.                                                                                                                                                        |
| `acl_update_policy`  | object  |          | —                     | Who can change a shared folder's access control list.                                                                                                                                                           |
| `shared_link_policy` | object  |          | —                     | Who can view shared links in this folder.                                                                                                                                                                       |
| `viewer_info_policy` | object  |          | —                     | Who can enable/disable viewer info for this shared folder.                                                                                                                                                      |

***

### `Dropbox Start Upload Session`

Integration name: **DROPBOX\_START\_UPLOAD\_SESSION**

Tool to start a new upload session with the given data. Use when uploading large files in multiple requests. This call starts the session and you can then use upload\_session/append\_v2 to add more data and upload\_session/finish to complete the upload. A single request should not upload more than 150 MiB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                 |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `close`   | boolean |          | —       | If true, the current session will be closed after uploading this data, at which point you won't be able to call upload\_session/append\_v2 anymore with the current session. Set to false to keep the session open for appending more data. |
| `content` | object  |     ✅    | —       | File data to upload in this initial session.                                                                                                                                                                                                |

***

### `Dropbox Start Upload Session Batch`

Integration name: **DROPBOX\_START\_UPLOAD\_SESSION\_BATCH**

Tool to start a batch of upload sessions. Use when you need to upload multiple large files and want to initialize multiple upload sessions at once. Each session can then be used with upload\_session/append\_v2 to upload file chunks and upload\_session/finish\_batch to complete the uploads.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example        | Description                                                                                                                                                                                         |
| -------------- | ------- | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `num_sessions` | integer |     ✅    | `1`            | The number of upload sessions to start. Must be between 1 and 1000.                                                                                                                                 |
| `session_type` | string  |          | `"sequential"` | Type of upload session. 'sequential' means pieces of data are uploaded sequentially one after another (default). 'concurrent' means pieces of data can be uploaded in concurrent RPCs in any order. |

***

### `Dropbox Unlock File Batch`

Integration name: **DROPBOX\_UNLOCK\_FILE\_BATCH**

Tool to unlock multiple files at specified paths in a single batch operation. Locked files can only be unlocked by the lock holder or a team admin (for business accounts). Returns metadata for each unlocked file or error details for failures.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                              |
| --------- | ----- | :------: | ------- | -------------------------------------------------------------------------------------------------------- |
| `entries` | array |     ✅    | —       | List of files to unlock. Each entry contains a path or file ID. Duplicate paths are processed only once. |

***

### `Dropbox Unmount Folder`

Integration name: **DROPBOX\_UNMOUNT\_FOLDER**

Tool to unmount a shared folder for the current user. Once unmounted, the shared folder will be removed from the user's Dropbox. Use when a user wants to remove a shared folder from their Dropbox while remaining a member of the folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example         | Description                             |
| ------------------ | ------ | :------: | --------------- | --------------------------------------- |
| `shared_folder_id` | string |     ✅    | `"13495912993"` | The ID of the shared folder to unmount. |

***

### `Dropbox Unshare File`

Integration name: **DROPBOX\_UNSHARE\_FILE**

Tool to remove all members from a Dropbox file. Use when you need to revoke access for all collaborators on a file. Note: This does not remove inherited members from parent folders and does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                       | Description                                                                                                                                                                                                      |
| --------- | ------ | :------: | ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`    | string |     ✅    | `"id:7bh4zBmgZoAAAAAAAAABJA"` | The file to unshare. Use the file ID format (e.g., 'id:7bh4zBmgZoAAAAAAAAABJA') or a path to the file. This action removes all members from the file, but does not remove inherited members from parent folders. |

***

### `Dropbox Unshare Folder`

Integration name: **DROPBOX\_UNSHARE\_FOLDER**

Tool to allow a shared folder owner to unshare the folder. Use when you need to stop sharing a folder with all members. Unshare will not work if: the shared folder contains shared folders OR the shared folder is inside another shared folder. You must call check\_job\_status with the returned async\_job\_id to determine if the action completed successfully. Requires sharing.write scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example         | Description                                                                                                                                                                                                                     |
| ------------------ | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `leave_a_copy`     | boolean |          | —               | If true, members of this shared folder will get a copy of this folder after it's unshared. Otherwise, it will be removed from their Dropbox. The current user, who is an owner, will always retain their copy. Default is false |
| `shared_folder_id` | string  |     ✅    | `"13512984419"` | The ID for the shared folder to unshare. You can get this from list\_shared\_folders action                                                                                                                                     |

***

### `Dropbox Update File Member`

Integration name: **DROPBOX\_UPDATE\_FILE\_MEMBER**

Tool to change a member's access level on a shared file. Use when you need to update permissions for an existing file member (e.g., change from editor to viewer or vice versa). Note: This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                   | Description                                                                                                                                                                                          |
| -------------- | ------ | :------: | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`         | string |     ✅    | `"/Documents/report.pdf"` | File for which to update the member's access. Can be a file path (e.g., '/test\_read\_file\_basic.txt') or file ID (e.g., 'id:xxxxx').                                                               |
| `member`       | object |     ✅    | —                         | The member whose access to update. Identify by email or Dropbox ID.                                                                                                                                  |
| `access_level` | string |     ✅    | —                         | The new access level for the member. 'viewer' - The member can only view the file. 'editor' - The member can edit the file. Note: Editor access may fail with no\_permission for certain file types. |

***

### `Dropbox Update File Properties`

Integration name: **DROPBOX\_UPDATE\_FILE\_PROPERTIES**

Tool to update custom properties on a file or folder in Dropbox. Use when you need to modify metadata fields associated with a property template, such as updating status, priority, or other custom attributes. Requires the files.metadata.write scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                     |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `path`                    | string |     ✅    | `"/Documents/report.pdf"`                     | A unique identifier for the file or folder. Can be a path (e.g., '/test.txt') or file ID (e.g., 'id:a4ayc\_80\_OEAAAAAAAAAXz'). |
| `update_property_groups`  | array  |     ✅    | —                                             | The property groups 'delta' updates to apply. Each update specifies a template ID and the fields to add/update or remove.       |
| `Dropbox-API-Select-User` | string |          | `"dbmid:AACzIks68_T0zljJAk8hGSmt0rLx6g5X9p0"` | Team member ID (format: dbmid:...) required when using team tokens. Specifies which team member's account to operate on.        |

***

### `Dropbox Update File Request`

Integration name: **DROPBOX\_UPDATE\_FILE\_REQUEST**

Tool to update an existing file request in Dropbox. Use when you need to modify the title, destination, deadline, open/closed status, or description of a file request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                        |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | —       | The ID of the file request to update. Example: 'oaCAVmEyrqYnkZX9955Y'                                                              |
| `open`        | boolean |          | —       | Whether to set this file request as open or closed. If true, the file request will accept files. If false, it will be closed.      |
| `title`       | string  |          | —       | The new title of the file request. Must not be empty if provided.                                                                  |
| `deadline`    | object  |          | —       | Represents the deadline parameters when updating a file request deadline.                                                          |
| `description` | string  |          | —       | The new description of the file request.                                                                                           |
| `destination` | string  |          | —       | The new path in the user's Dropbox where uploaded files will be saved. Must be a path starting with '/'. Example: '/Homework/math' |

***

### `Dropbox Update Folder Member`

Integration name: **DROPBOX\_UPDATE\_FOLDER\_MEMBER**

Tool to update another member's permissions in a shared folder. Use when an owner or editor needs to change access levels for existing members. This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example         | Description                                                                                                                                                      |
| ------------------ | ------ | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `member`           | object |     ✅    | —               | The member of the shared folder to update. Note: Only the dropbox\_id may be used for updates according to API docs, but email is also supported by the endpoint |
| `access_level`     | object |     ✅    | —               | The new access level for the member. Note: Cannot set access level to 'owner' through this endpoint                                                              |
| `shared_folder_id` | string |     ✅    | `"84528192421"` | The ID of the shared folder containing the member to update. You can get this from list\_shared\_folders action                                                  |

***

### `Dropbox Update Folder Policy`

Integration name: **DROPBOX\_UPDATE\_FOLDER\_POLICY**

Tool to update the sharing policies for a shared folder. Use when you need to change who can be members, who can update the ACL, viewer info settings, shared link policies, or link settings. User must have AccessLevel.owner access to the shared folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example         | Description                                                                                                                                                                                                    |
| -------------------- | ------ | :------: | --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `actions`            | array  |          | —               | A list of FolderActions corresponding to FolderPermissions that should appear in the response's SharedFolderMetadata.permissions field describing the actions the authenticated user can perform on the folder |
| `link_settings`      | object |          | —               | Settings that apply to a link.                                                                                                                                                                                 |
| `member_policy`      | object |          | —               | Policy governing who can be a member of a shared folder.                                                                                                                                                       |
| `shared_folder_id`   | string |     ✅    | `"13512984419"` | The ID for the shared folder. You must have AccessLevel.owner access to update its policies                                                                                                                    |
| `acl_update_policy`  | object |          | —               | Who can change a shared folder's access control list (ACL).                                                                                                                                                    |
| `shared_link_policy` | object |          | —               | Policy governing who can view shared links.                                                                                                                                                                    |
| `viewer_info_policy` | object |          | —               | Policy governing who can view viewer information.                                                                                                                                                              |

***

### `Dropbox Update Group Member Access Type`

Integration name: **DROPBOX\_UPDATE\_GROUP\_MEMBER\_ACCESS\_TYPE**

Tool to change a member's access type in a team group. Use when you need to promote a member to owner or demote an owner to regular member. Requires team admin permissions with group management capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                                             |
| ---------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`           | object  |     ✅    | —       | The user whose access type will be changed. Must be an existing member of the group. Can be identified by team\_member\_id, external\_id, or email                                      |
| `group`          | object  |     ✅    | —       | The group containing the member whose access type will be changed. Specify either by group\_id or group\_external\_id                                                                   |
| `access_type`    | object  |     ✅    | —       | The new access type to assign to the user in the group                                                                                                                                  |
| `return_members` | boolean |          | —       | Whether to return the list of members in the group after updating. Note that the default value will cause all group members to be returned, which may take a long time for large groups |

***

### `Dropbox Update Paper Document`

Integration name: **DROPBOX\_UPDATE\_PAPER\_DOCUMENT**

Tool to update an existing Dropbox Paper document with new content in Markdown, HTML, or plain text format. Use when you need to modify, append, prepend, or overwrite content in an existing Paper doc. This endpoint does not support apps with the app folder permission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                         | Description                                                                                                                                                                                                      |
| ------------------- | ------- | :------: | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`              | string  |     ✅    | `"/API Test Document.paper"`                                    | Path to the existing Paper doc in Dropbox to update. MUST include the .paper extension at the end (e.g., '/My Documents/Notes.paper').                                                                           |
| `content`           | string  |     ✅    | `"\n\nThis is additional content appended via the update API."` | Content to add or replace in the Paper document based on the update policy.                                                                                                                                      |
| `import_format`     | string  |     ✅    | `"plain_text"`                                                  | Format of the provided content: plain\_text, markdown, or html.                                                                                                                                                  |
| `paper_revision`    | integer |          | `1`                                                             | The paper revision number. Required when doc\_update\_policy is 'update'. This value must match the current revision of the doc or an error will be returned.                                                    |
| `doc_update_policy` | string  |     ✅    | `"append"`                                                      | Policy for updating the document: 'append' adds content to the end, 'prepend' adds content to the beginning, 'overwrite' replaces all content, 'update' merges content intelligently (requires paper\_revision). |

***

### `Dropbox Update Property Template For Team`

Integration name: **DROPBOX\_UPDATE\_PROPERTY\_TEMPLATE\_FOR\_TEAM**

Tool to update a property template for a team in Dropbox. Use when you need to modify an existing template's name, description, or add new property fields. Requires team admin permissions and a Dropbox Business account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                   | Description                                                                                                                        |
| ------------- | ------ | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string |          | `"Updated Test Template"`                 | A display name for the template. Template names can be up to 256 bytes. If not provided, the name will not be changed.             |
| `add_fields`  | array  |          | —                                         | Property field templates to be added to the group template. There can be up to 32 properties in a single template.                 |
| `description` | string |          | `"Updated description for test template"` | Description for the template. Template descriptions can be up to 1024 bytes. If not provided, the description will not be changed. |
| `template_id` | string |     ✅    | `"ptid:4YzeuMHpwCgAAAAAAAAAfQ"`           | An identifier for template added by templates/add\_for\_user or templates/add\_for\_team. Typically in the format 'ptid:XXXXX'.    |

***

### `Dropbox Update Team Folder Sync Settings`

Integration name: **DROPBOX\_UPDATE\_TEAM\_FOLDER\_SYNC\_SETTINGS**

Tool to update the sync settings on a team folder or its contents in Dropbox. Use when you need to control whether a team folder or specific content within it is synchronized to members' devices. This is useful for managing storage space and controlling access to sensitive content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example        | Description                                                                                                                                   |
| ----------------------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `sync_setting`          | string |     ✅    | `"not_synced"` | The sync setting to apply to the team folder. Possible values: 'default' (sync normally), 'not\_synced' (do not sync)                         |
| `team_folder_id`        | string |     ✅    | `"123456789"`  | The ID of the team folder to update sync settings for. You can get this from list\_team\_folders or other team folder operations              |
| `content_sync_settings` | array  |          | —              | Optional list of content-specific sync settings within the team folder. Each entry specifies a file or folder ID and its desired sync setting |

***

### `Dropbox Update Team Group`

Integration name: **DROPBOX\_UPDATE\_TEAM\_GROUP**

Tool to update a team group's name, external ID, and/or management type. Use when you need to modify group properties such as renaming a group or changing how it's managed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                    | Description                                                                                                                                                            |
| --------------------------- | ------- | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group`                     | object  |     ✅    | —                          | Specify the group to update by either group\_id or group\_external\_id.                                                                                                |
| `new_group_name`            | string  |          | `"Updated Marketing Team"` | The new name for the group. If not provided, the group name remains unchanged.                                                                                         |
| `return_members`            | boolean |          | —                          | Whether to return the list of members in the response. Note that the default will cause all group members to be returned, which may take a long time for large groups. |
| `new_group_external_id`     | string  |          | —                          | The new external ID for the group. If not provided, the external ID remains unchanged. Set to empty string to clear the external ID.                                   |
| `new_group_management_type` | object  |          | —                          | The management type for the group.                                                                                                                                     |

***

### `Dropbox Update Team Member Admin Permissions`

Integration name: **DROPBOX\_UPDATE\_TEAM\_MEMBER\_ADMIN\_PERMISSIONS**

Tool to update a team member's admin permissions. Use when you need to grant or revoke admin privileges for team members. Requires team admin permissions to execute.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                       |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`     | object |     ✅    | —       | Identity of the team member whose admin permissions will be set. Use exactly one of team\_member\_id, email, or external\_id to identify the user |
| `new_role` | object |     ✅    | —       | The new admin permissions role to assign to the team member                                                                                       |

***

### `Dropbox Update Team Member Profile`

Integration name: **DROPBOX\_UPDATE\_TEAM\_MEMBER\_PROFILE**

Tool to update a team member's profile information. Use when you need to change a team member's email, name, external ID, or directory restrictions. At least one profile field must be provided for update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example | Description                                                                                                                                       |
| ----------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`                        | object  |     ✅    | —       | Identity of user whose profile will be set. Exactly one of team\_member\_id, email, or external\_id must be provided to identify the user account |
| `new_email`                   | string  |          | —       | New email for member                                                                                                                              |
| `new_surname`                 | string  |          | —       | New surname for member                                                                                                                            |
| `new_given_name`              | string  |          | —       | New given name for member                                                                                                                         |
| `new_external_id`             | string  |          | —       | New external ID for member                                                                                                                        |
| `new_persistent_id`           | string  |          | —       | New persistent ID. This field only available to teams using persistent ID SAML configuration                                                      |
| `new_is_directory_restricted` | boolean |          | —       | New value for whether the user is a directory restricted user                                                                                     |

***

### `Dropbox Update Team Member Profile Photo`

Integration name: **DROPBOX\_UPDATE\_TEAM\_MEMBER\_PROFILE\_PHOTO**

Tool to update a team member's profile photo. Use when you need to set or change the profile picture of a team member. Requires team admin permissions and a JPEG image (minimum 128x128 pixels) in base64 format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                  |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------ |
| `user`    | object |     ✅    | —       | The team member whose profile photo should be updated.       |
| `photo`   | object |     ✅    | —       | The photo data to be set as the team member's profile photo. |

***

### `Dropbox Upload File`

Integration name: **DROPBOX\_UPLOAD\_FILE**

Uploads a file (up to \~150 MB) to a specified path in the user's Dropbox, with options for handling existing files. Files larger than 150 MB require a chunked upload approach.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                             |
| ----------------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`            | string  |          | `"add"`               | Specifies how to handle the upload if a file already exists at the specified path.                                                                                                                                                                                                                                                      |
| `mute`            | boolean |          | —                     | If true, the user will not be notified of the new file via desktop or mobile notifications.                                                                                                                                                                                                                                             |
| `path`            | string  |     ✅    | `"/Images/photo.jpg"` | Path in the user's Dropbox to save the file.                                                                                                                                                                                                                                                                                            |
| `content`         | object  |     ✅    | —                     | File to be uploaded; supports various formats including images, PDFs, and text files. Must be a valid internal s3key obtained from a trusted upload helper — raw file bytes, public URLs, or manually constructed keys are not accepted. Ensure the content is the intended file and not an HTML/XML error page from the source server. |
| `autorename`      | boolean |          | —                     | If true and a file already exists at the path, the new file will be renamed to avoid conflict.                                                                                                                                                                                                                                          |
| `strict_conflict` | boolean |          | —                     | If true, the upload will be rejected if the file already exists, regardless of the autorename setting.                                                                                                                                                                                                                                  |

***


# Dropbox Sign

Your Toolhouse AI Worker can connect to Dropbox Sign using 56 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](https://toolhouse.app/auth-connections?authkit_slugs=dropbox_sign).

## Tools (56)

### `Dropbox Sign Add User To Team`

Integration name: **DROPBOX\_SIGN\_ADD\_USER\_TO\_TEAM**

Tool to invite a user to your Team. Use when you need to add a member by email or account ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                              | Description                                                                                 |
| --------------- | ------ | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------- |
| `role`          | string |          | —                                    | Role to assign to the invited user. Allowed values: Member, Developer, Team Manager, Admin. |
| `team_id`       | string |          | `"f32ba4f0cda311e985b40a3fe3ad9f3f"` | The ID of the team to which the user will be invited.                                       |
| `account_id`    | string |          | `"d004ec4dc2194c5f9b4f0cda311e985b"` | The account ID of the user to invite. If provided, takes precedence over email\_address.    |
| `email_address` | string |          | `"user@example.com"`                 | The email address of the user to invite. Required if account\_id is not provided.           |

***

### `Dropbox Sign Add User To Template`

Integration name: **DROPBOX\_SIGN\_ADD\_USER\_TO\_TEMPLATE**

Tool to grant a specified account access to a template. Use when you need to share a template with another user after confirming template and account identifiers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                      | Description                                                                                           |
| ------------------- | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `account_id`        | string  |          | `"a5be022c9f7f27139f1103d66a981e6e089ff22e"` | ID of the account to grant access (must be 40 characters long). Takes precedence over email\_address. |
| `template_id`       | string  |     ✅    | `"e3f1c4a2d5b711ebb5e0242ac130002a"`         | ID of the template to share                                                                           |
| `email_address`     | string  |          | `"user@example.com"`                         | Email of the account to grant access. Ignored if account\_id is provided.                             |
| `skip_notification` | boolean |          | —                                            | If true, suppresses the email notification sent when sharing the template.                            |

***

### `Dropbox Sign Bulk Create Embedded Sig Req With Template`

Integration name: **DROPBOX\_SIGN\_BULK\_CREATE\_EMBEDDED\_SIG\_REQ\_WITH\_TEMPLATE**

Tool to create a BulkSendJob for embedded templated signature requests. Use when you need to send up to 250 embedded signature requests at once via one or more templates for iFrame signing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                                                            |
| ---------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ccs`                  | array   |          | —       | CC recipients; required if template defines CC roles                                                                                                                   |
| `title`                | string  |          | —       | Optional internal title for the job                                                                                                                                    |
| `message`              | string  |          | —       | Custom email message to signers                                                                                                                                        |
| `subject`              | string  |          | —       | Custom email subject line                                                                                                                                              |
| `metadata`             | object  |          | —       | Up to 10 key/value pairs to be returned in events; keys ≤40 chars, values ≤1000 chars                                                                                  |
| `client_id`            | string  |     ✅    | —       | Client ID of the application creating the embedded request                                                                                                             |
| `test_mode`            | boolean |          | —       | If true, the request is not legally binding                                                                                                                            |
| `signer_file`          | object  |          | —       | CSV file with signer data: columns name,email\_address,optional pin,sms\_phone\_number, and any \*\_field for custom fields. Required unless signer\_list is provided. |
| `signer_list`          | array   |          | —       | Structured list of signers and custom fields. Required unless signer\_file is provided.                                                                                |
| `template_ids`         | array   |     ✅    | —       | List of template IDs in the order they should be applied                                                                                                               |
| `allow_decline`        | boolean |          | —       | Allow signers to decline the request                                                                                                                                   |
| `custom_fields`        | array   |          | —       | Global template merge fields to prefill                                                                                                                                |
| `signing_redirect_url` | string  |          | —       | URL to redirect signers after signing completes                                                                                                                        |

***

### `Dropbox Sign Bulk Send With Template`

Integration name: **DROPBOX\_SIGN\_BULK\_SEND\_WITH\_TEMPLATE**

Tool to create a BulkSendJob for templated signature requests. Use when you need to send up to 250 signature requests at once via one or more templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                                                            |
| ---------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ccs`                  | array   |          | —       | CC recipients; required if template defines CC roles                                                                                                                   |
| `title`                | string  |          | —       | Optional internal title for the job                                                                                                                                    |
| `message`              | string  |          | —       | Custom email message to signers                                                                                                                                        |
| `subject`              | string  |          | —       | Custom email subject line                                                                                                                                              |
| `metadata`             | object  |          | —       | Up to 10 key/value pairs to be returned in events; keys ≤40 chars, values ≤1000 chars                                                                                  |
| `client_id`            | string  |          | —       | API App client\_id for branding and callbacks                                                                                                                          |
| `test_mode`            | boolean |          | —       | If true, the request is not legally binding                                                                                                                            |
| `signer_file`          | object  |          | —       | CSV file with signer data: columns name,email\_address,optional pin,sms\_phone\_number, and any \*\_field for custom fields. Required unless signer\_list is provided. |
| `signer_list`          | array   |          | —       | Structured list of signers and custom fields. Required unless signer\_file is provided.                                                                                |
| `template_ids`         | array   |     ✅    | —       | List of template IDs in the order they should be applied                                                                                                               |
| `allow_decline`        | boolean |          | —       | Allow signers to decline the request                                                                                                                                   |
| `custom_fields`        | array   |          | —       | Global template merge fields to prefill                                                                                                                                |
| `signing_redirect_url` | string  |          | —       | URL to redirect signers after signing completes                                                                                                                        |

***

### `Dropbox Sign Cancel Signature Request`

Integration name: **DROPBOX\_SIGN\_CANCEL\_SIGNATURE\_REQUEST**

Cancels an incomplete signature request. Use when you need to cancel a pending signature request that has not been completed. The operation is asynchronous and not reversible - once canceled, the signature request cannot be restored.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                                                |
| ---------------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `signature_request_id` | string |     ✅    | `"69051d323301791ac8a1354807a74e0672aeb9e3"` | The id of the SignatureRequest to cancel. Must be a valid signature request ID (40-character hexadecimal string). Note: This operation is asynchronous and not reversible. |

***

### `Dropbox Sign Create Account`

Integration name: **DROPBOX\_SIGN\_CREATE\_ACCOUNT**

Tool to create a new Dropbox Sign account associated with a specified email address. Use when you need to programmatically register new users in the Dropbox Sign platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                    | Description                                                                   |
| --------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------------------- |
| `locale`        | string |          | `"en_US"`                  | The locale for the account. Defaults to 'en\_US' if not specified.            |
| `client_id`     | string |          | `"a1b2c3d4e5f6g7h8"`       | Used for OAuth account creation. The Client ID for your API App.              |
| `client_secret` | string |          | `"secret1234567890abcdef"` | Used for OAuth account creation. The Client Secret for your API App.          |
| `email_address` | string |     ✅    | `"newuser@example.com"`    | The email address which will be associated with the new Dropbox Sign account. |

***

### `Dropbox Sign Create Api App`

Integration name: **DROPBOX\_SIGN\_CREATE\_API\_APP**

Tool to create a new Dropbox Sign API App. Use when you need to register a new application for API integration. The app will have a client\_id for authentication and can be configured with OAuth, callbacks, and white labeling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type   | Required | Example                              | Description                                                                                                                              |
| ------------------------ | ------ | :------: | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                   | string |     ✅    | `"My API App"`                       | The name to assign to the API App.                                                                                                       |
| `oauth`                  | object |          | —                                    | OAuth configuration for the API App.                                                                                                     |
| `domains`                | array  |     ✅    | `["example.com","app.example.com"]`  | List of domain names associated with the app (hostname only, without protocol). Use when the app will be accessed from specific domains. |
| `options`                | object |          | —                                    | Options for the API App.                                                                                                                 |
| `callback_url`           | string |          | `"https://example.com/api/callback"` | URL where event callbacks will be sent. Use when you need to receive notifications about signature request events.                       |
| `white_labeling_options` | object |          | —                                    | White labeling customization options for the API App.                                                                                    |

***

### `Dropbox Sign Create Embedded Signature Request`

Integration name: **DROPBOX\_SIGN\_CREATE\_EMBEDDED\_SIGNATURE\_REQUEST**

Tool to create an embedded signature request for signing in an iFrame. Use when you need to initiate a signature request that will be signed within your application rather than via email links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                              | Description                                                                                                             |
| --------------------------- | ------- | :------: | ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------- |
| `files`                     | array   |          | —                                    | Document files to be signed (multipart upload). Use files or file\_urls, not both.                                      |
| `title`                     | string  |          | —                                    | Title displayed in the signature interface                                                                              |
| `message`                   | string  |          | —                                    | Custom message included in signer emails                                                                                |
| `signers`                   | array   |     ✅    | —                                    | List of signer objects with name, email, and optional order                                                             |
| `subject`                   | string  |          | —                                    | Email subject line for signature request                                                                                |
| `metadata`                  | object  |          | —                                    | Up to 10 custom key/value metadata entries (keys <=40 chars, values <=1000 chars)                                       |
| `client_id`                 | string  |     ✅    | `"caa86bcefd46b4314301cfaf7b32a813"` | Client ID for embedded signing (must be exactly 32 characters). Get this from your API app settings at sign.dropbox.com |
| `file_urls`                 | array   |          | —                                    | URLs to documents to be signed; Dropbox Sign will fetch. Use file\_urls or files, not both.                             |
| `test_mode`                 | boolean |          | —                                    | Whether request operates in sandbox mode (default false)                                                                |
| `expires_at`                | integer |          | —                                    | Unix timestamp when request expires; unsigned requests move to expired                                                  |
| `attachments`               | array   |          | —                                    | Signer attachments to collect                                                                                           |
| `allow_decline`             | boolean |          | —                                    | Allow signers to decline (default false)                                                                                |
| `custom_fields`             | array   |          | —                                    | Custom field values for merge fields or text tags                                                                       |
| `field_options`             | object  |          | —                                    | Field formatting options.                                                                                               |
| `use_text_tags`             | boolean |          | —                                    | Enable text tags parsing in documents                                                                                   |
| `allow_reassign`            | boolean |          | —                                    | Allow signers to reassign (premium feature, default false)                                                              |
| `hide_text_tags`            | boolean |          | —                                    | Remove text tags in the final document                                                                                  |
| `signing_options`           | object  |          | —                                    | Signature creation method options.                                                                                      |
| `cc_email_addresses`        | array   |          | —                                    | Email addresses to CC on the request                                                                                    |
| `populate_auto_fill_fields` | boolean |          | —                                    | Allow auto-fill fields to pre-populate signer info during signing                                                       |

***

### `Dropbox Sign Create Embedded Signature Request With Template`

Integration name: **DROPBOX\_SIGN\_CREATE\_EMBEDDED\_SIGNATURE\_REQUEST\_WITH\_TEMPLATE**

Tool to create an embedded signature request based on a template. Use when you need to initiate a new signature request for embedded signing using pre-defined templates. Returns signature request details including signing URLs for embedded iFrame integration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                        | Description                                                                              |
| --------------------------- | ------- | :------: | ---------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `ccs`                       | array   |          | —                                              | CC recipients matching any CC roles in template                                          |
| `files`                     | array   |          | —                                              | Binary file uploads; mutually exclusive with file\_urls                                  |
| `title`                     | string  |          | —                                              | Title for the signature request (max 255 chars)                                          |
| `message`                   | string  |          | `"Please review and sign this document"`       | Custom email message to signers (max 5000 chars)                                         |
| `signers`                   | array   |     ✅    | —                                              | Signer definitions matching template roles                                               |
| `subject`                   | string  |          | `"Test Embedded Signature Request"`            | Email subject to signers (max 255 chars)                                                 |
| `metadata`                  | object  |          | —                                              | Key/value metadata (≤10 keys, values ≤1000 chars)                                        |
| `client_id`                 | string  |     ✅    | `"caa86bcefd46b4314301cfaf7b32a813"`           | Client ID of your Dropbox Sign app for embedded requests (must be exactly 32 characters) |
| `file_urls`                 | array   |          | —                                              | URLs for Dropbox Sign to fetch file(s); mutually exclusive with files                    |
| `test_mode`                 | boolean |          | `true`                                         | If true, signature request is a non-legally binding test                                 |
| `template_ids`              | array   |     ✅    | `["0bf765f428e95d0a0107c2575c761001ea77d7d0"]` | One or more template IDs to use for the signature request                                |
| `allow_decline`             | boolean |          | —                                              | Allow signers to decline                                                                 |
| `custom_fields`             | array   |          | —                                              | Values for merge fields in template                                                      |
| `signing_options`           | object  |          | —                                              | Signing method options for signature requests.                                           |
| `populate_auto_fill_fields` | boolean |          | —                                              | If true, auto-fill fields are pre-populated during embedded signing                      |

***

### `Dropbox Sign Create Embedded Template Draft`

Integration name: **DROPBOX\_SIGN\_CREATE\_EMBEDDED\_TEMPLATE\_DRAFT**

Tool to create an embedded template draft. Use when initiating an embedded template workflow where users can edit the template in an iframe before finalizing it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                                                       | Description                                                                                   |
| ------------------------ | ------- | :------: | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `files`                  | array   |          | —                                                                             | List of PDF files to upload. Either files or file\_urls must be provided.                     |
| `title`                  | string  |          | `"Test Template Draft"`                                                       | Title for the template                                                                        |
| `message`                | string  |          | —                                                                             | Message to be included with the template                                                      |
| `subject`                | string  |          | —                                                                             | Subject line for the template                                                                 |
| `cc_roles`               | array   |          | —                                                                             | Array of CC role names                                                                        |
| `metadata`               | object  |          | —                                                                             | Key-value data to be returned in callbacks and webhooks                                       |
| `allow_ccs`              | boolean |          | —                                                                             | Allow users to add CC recipients when sending                                                 |
| `client_id`              | string  |     ✅    | `"caa86bcefd46b4314301cfaf7b32a813"`                                          | Client ID from your API App. Required for embedded template workflow.                         |
| `file_urls`              | array   |          | `["https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf"]` | Array of publicly accessible URLs for PDF files. Either files or file\_urls must be provided. |
| `test_mode`              | boolean |          | —                                                                             | Whether this is a test (true for test, false for production)                                  |
| `skip_me_now`            | boolean |          | —                                                                             | Skip the current user in the signing order                                                    |
| `merge_fields`           | array   |          | —                                                                             | Array of merge field objects                                                                  |
| `show_preview`           | boolean |          | —                                                                             | Show preview before sending                                                                   |
| `signer_roles`           | array   |          | `[{"name":"Signer","order":0}]`                                               | Array of signer role objects with name and order                                              |
| `allow_reassign`         | boolean |          | —                                                                             | Allow signers to reassign the signature request                                               |
| `show_progress_stepper`  | boolean |          | —                                                                             | Show progress stepper in the embedded UI                                                      |
| `use_preexisting_fields` | boolean |          | —                                                                             | Enable to auto-detect fields from the document                                                |

***

### `Dropbox Sign Create Embedded Unclaimed Draft With Template`

Integration name: **DROPBOX\_SIGN\_CREATE\_EMBEDDED\_UNCLAIMED\_DRAFT\_WITH\_TEMPLATE**

Tool to create an embedded unclaimed draft using saved templates. Use when you need to create a draft that can be claimed and embedded in an iFrame for signature collection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                                          |
| ------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------- |
| `ccs`                     | array   |          | —       | CC recipients; required if template defines CC roles                                                                 |
| `title`                   | string  |          | —       | Optional internal title for the draft                                                                                |
| `message`                 | string  |          | —       | Custom email message to signers                                                                                      |
| `signers`                 | array   |     ✅    | —       | List of signers for the signature request; order and roles must match template requirements                          |
| `subject`                 | string  |          | —       | Custom email subject line                                                                                            |
| `metadata`                | object  |          | —       | Up to 10 key/value pairs to be returned in events; keys ≤40 chars, values ≤1000 chars                                |
| `client_id`               | string  |     ✅    | —       | Client ID of the app used to create the draft; applies app branding and callback URL (must be exactly 32 characters) |
| `test_mode`               | boolean |          | —       | If true, the request is not legally binding                                                                          |
| `skip_me_now`             | boolean |          | —       | Skip the current user's signature step if they are a signer                                                          |
| `show_preview`            | boolean |          | —       | Enable preview mode in the embedded editor                                                                           |
| `template_ids`            | array   |     ✅    | —       | List of template IDs to use for creating the draft; must contain at least one template ID                            |
| `allow_decline`           | boolean |          | —       | Allow signers to decline the signature request                                                                       |
| `custom_fields`           | array   |          | —       | Template merge fields to prefill                                                                                     |
| `field_options`           | object  |          | —       | Additional field-level options for form fields                                                                       |
| `editor_options`          | object  |          | —       | Options to configure the embedded editor UI.                                                                         |
| `force_signer_roles`      | boolean |          | —       | Force signers to use specific roles defined in template                                                              |
| `signing_redirect_url`    | string  |          | —       | URL to redirect signers after they successfully sign                                                                 |
| `force_subject_message`   | boolean |          | —       | Force use of subject and message from template                                                                       |
| `show_progress_stepper`   | boolean |          | —       | Show progress stepper; set to false to hide when only one step remains                                               |
| `is_for_embedded_signing` | boolean |          | —       | If true, the resulting signature request will be signable in embedded mode                                           |
| `requester_email_address` | string  |     ✅    | —       | Email address of the requester who will be designated as the sender of the signature request                         |
| `requesting_redirect_url` | string  |          | —       | URL to redirect users after they successfully request a signature                                                    |

***

### `Dropbox Sign Create Report`

Integration name: **DROPBOX\_SIGN\_CREATE\_REPORT**

Request creation of CSV report(s) for a specified date range. Reports are generated asynchronously and delivered via email. Available report types: user\_activity (account activity), document\_status (signature request status), sms\_activity (SMS delivery info). You can request up to 2 report types per call. Date range can be up to 12 months, with start\_date no more than 10 years in the past. Note: This feature may require a paid plan.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                               | Description                                                                                                                                  |
| ------------- | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `end_date`    | string |     ✅    | `"12/31/2023"`                        | Inclusive end date in MM/DD/YYYY format.                                                                                                     |
| `start_date`  | string |     ✅    | `"01/01/2023"`                        | Inclusive start date in MM/DD/YYYY format. Date range may be up to 12 months; start\_date must not be more than 10 years in the past.        |
| `report_type` | array  |     ✅    | `["user_activity","document_status"]` | Type(s) of report to create. Allowed values: 'user\_activity', 'document\_status', 'sms\_activity'. Up to two report types may be requested. |

***

### `Dropbox Sign Create Template`

Integration name: **DROPBOX\_SIGN\_CREATE\_TEMPLATE**

Tool to create a reusable template for document signing workflows. Use when you need to establish a template with pre-defined form fields, signer roles, and documents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example | Description                                                                                             |
| -------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------- |
| `files`                    | array   |          | —       | PDF files to upload for the template. At least one file source (files or file\_urls) required.          |
| `title`                    | string  |     ✅    | —       | The template's name                                                                                     |
| `message`                  | string  |          | —       | Email message body for signature requests                                                               |
| `subject`                  | string  |          | —       | Email subject line for signature requests                                                               |
| `cc_roles`                 | array   |          | —       | CC recipient role names                                                                                 |
| `metadata`                 | object  |          | —       | Key-value metadata attached to the template (max 10 pairs)                                              |
| `client_id`                | string  |          | —       | Client account identifier for template association                                                      |
| `file_urls`                | array   |          | —       | URLs pointing to existing PDFs. At least one file source (files or file\_urls) required.                |
| `test_mode`                | boolean |          | —       | Whether to create in test/sandbox mode                                                                  |
| `skip_me_now`              | boolean |          | —       | Skip creator from signing even if included in signer roles                                              |
| `signer_roles`             | array   |          | —       | Defines signer role names and signing order. Required if form fields reference signers.                 |
| `use_preexisting_fields`   | boolean |          | —       | Use pre-existing form fields from uploaded PDF if available                                             |
| `form_fields_per_document` | array   |     ✅    | —       | Required array of form field objects defining where and how fields appear. At least one field required. |

***

### `Dropbox Sign Create Unclaimed Draft`

Integration name: **DROPBOX\_SIGN\_CREATE\_UNCLAIMED\_DRAFT**

Tool to create an unclaimed draft that can be claimed via a unique URL. Use when you need to prepare a signature request or document send that will be finalized later by someone else through the claim URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example | Description                                                                                                                                     |
| -------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`                     | string  |     ✅    | —       | Draft type: 'send\_document' allows document sending without signatures, 'request\_signature' requires signers and enables signature collection |
| `files`                    | array   |          | —       | PDF/document files to upload; use files or file\_urls, not both.                                                                                |
| `message`                  | string  |          | —       | Custom message included in signature request email                                                                                              |
| `signers`                  | array   |          | —       | Array of signer objects with name, email\_address, and order; required when type is 'request\_signature'                                        |
| `subject`                  | string  |          | —       | Email subject line for the signature request                                                                                                    |
| `metadata`                 | object  |          | —       | Custom key-value metadata (up to 10 pairs; keys ≤40 chars, values ≤1000 chars)                                                                  |
| `client_id`                | string  |          | —       | API app client ID for applying custom branding and callback URL                                                                                 |
| `file_urls`                | array   |          | —       | URLs pointing to documents for Dropbox Sign to fetch; use file\_urls or files, not both.                                                        |
| `test_mode`                | boolean |          | —       | If true, the draft/request will be in test mode and not legally binding                                                                         |
| `allow_decline`            | boolean |          | —       | Allow signers to decline signing the request                                                                                                    |
| `use_text_tags`            | boolean |          | —       | Enable parsing of text tags in uploaded documents                                                                                               |
| `allow_reassign`           | boolean |          | —       | Allow signers to reassign the signature request to another person                                                                               |
| `hide_text_tags`           | boolean |          | —       | Remove text tags from final signed document if set to true                                                                                      |
| `form_field_rules`         | array   |          | —       | Conditional logic rules controlling field visibility based on other field values                                                                |
| `form_field_groups`        | array   |          | —       | Form field group definitions for organizing related fields together                                                                             |
| `cc_email_addresses`       | array   |          | —       | Email addresses to receive a copy of all signer emails                                                                                          |
| `signing_redirect_url`     | string  |          | —       | URL to redirect signers after completing signature                                                                                              |
| `show_progress_stepper`    | boolean |          | —       | Display progress stepper UI; set to false to hide                                                                                               |
| `use_preexisting_fields`   | boolean |          | —       | Set to true to enable auto-detection of merge fields from the document; only applicable for 'send\_document' type                               |
| `requesting_redirect_url`  | string  |          | —       | URL to redirect the requester after finalizing the draft (for embedded flows)                                                                   |
| `form_fields_per_document` | array   |          | —       | Predefined form field placements across uploaded documents; each entry defines fields for one document                                          |

***

### `Dropbox Sign Delete Api App`

Integration name: **DROPBOX\_SIGN\_DELETE\_API\_APP**

Tool to delete an API App from your Dropbox Sign account by its client\_id. Use when you need to remove an API App that is no longer needed. The API App must be owned by the requesting user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                              | Description                                                                                   |
| ----------- | ------ | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------- |
| `client_id` | string |     ✅    | `"b0431b3fa746e742b00c53087108b95a"` | The client ID of the API App to delete. This must be an API App owned by the requesting user. |

***

### `Dropbox Sign Delete Fax`

Integration name: **DROPBOX\_SIGN\_DELETE\_FAX**

Tool to delete a fax from the system by its fax\_id. Use when you need to remove a fax from Dropbox Sign. Returns success if the fax is deleted or doesn't exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                                  |
| --------- | ------ | :------: | -------------------------------------------- | -------------------------------------------- |
| `fax_id`  | string |     ✅    | `"485f28e27da54402f061b0487ccd88e19a2b909e"` | The ID of the Fax to delete from the system. |

***

### `Dropbox Sign Delete Template`

Integration name: **DROPBOX\_SIGN\_DELETE\_TEMPLATE**

Permanently deletes a template from your Dropbox Sign account by its template\_id. Once deleted, the template cannot be recovered. Use this when you need to remove outdated or unused templates. Returns success if template is deleted or doesn't exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                   |
| ------------- | ------ | :------: | -------------------------------------------- | --------------------------------------------- |
| `template_id` | string |     ✅    | `"f57db65d3f933b5316d398057a36176831451a35"` | The ID of the template to permanently delete. |

***

### `Dropbox Sign Download Signature Request Files`

Integration name: **DROPBOX\_SIGN\_DOWNLOAD\_SIGNATURE\_REQUEST\_FILES**

Download files for a signature request as PDF (merged) or ZIP (individual documents). Returns immediately if files are ready, or indicates if files are still being prepared (409 status).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                   |
| ---------------------- | ------ | :------: | -------------------------------------------- | ----------------------------------------------------------------------------- |
| `file_type`            | string |          | `"zip"`                                      | Output format: 'pdf' for merged PDF or 'zip' for individual documents.        |
| `signature_request_id` | string |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | ID of the SignatureRequest to download documents for. Example: fa5c8a0b...967 |

***

### `Dropbox Sign Edit And Resend Embedded Signature Request`

Integration name: **DROPBOX\_SIGN\_EDIT\_AND\_RESEND\_EMBEDDED\_SIGNATURE\_REQUEST**

Tool to edit and resend an embedded signature request. Use when you need to modify and restart the embedded signing flow for an existing request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                      | Description                                                                                                             |
| --------------------------- | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `files`                     | array   |          | —                                            | Files to upload; use files or file\_urls, not both.                                                                     |
| `title`                     | string  |          | —                                            | Title for the signature request                                                                                         |
| `message`                   | string  |          | —                                            | Custom message to signers                                                                                               |
| `signers`                   | array   |          | —                                            | List of signer definitions; use signers or grouped\_signers, not both.                                                  |
| `subject`                   | string  |          | —                                            | Email subject for signers                                                                                               |
| `metadata`                  | object  |          | —                                            | Up to 10 custom key/value metadata entries (keys <=40 chars, values <=1000 chars)                                       |
| `client_id`                 | string  |     ✅    | `"12345678901234567890123456789012"`         | Client ID for embedded signing (must be exactly 32 characters). Get this from your API app settings at sign.dropbox.com |
| `file_urls`                 | array   |          | —                                            | URLs for files; Dropbox Sign will fetch. Use file\_urls or files, not both.                                             |
| `test_mode`                 | boolean |          | —                                            | If true, this is a test (non-binding) request                                                                           |
| `expires_at`                | integer |          | —                                            | Unix timestamp when request expires; unsigned requests move to expired                                                  |
| `attachments`               | array   |          | —                                            | Signer attachments to collect                                                                                           |
| `allow_decline`             | boolean |          | —                                            | Allow signers to decline (default false)                                                                                |
| `custom_fields`             | array   |          | —                                            | Custom field values for merge fields or text tags                                                                       |
| `field_options`             | object  |          | —                                            | Request-level field options                                                                                             |
| `use_text_tags`             | boolean |          | —                                            | Enable text tags parsing in documents                                                                                   |
| `allow_reassign`            | boolean |          | —                                            | Allow signers to reassign (premium feature, default false)                                                              |
| `hide_text_tags`            | boolean |          | —                                            | Remove text tags in the final document                                                                                  |
| `grouped_signers`           | array   |          | —                                            | List of grouped signer definitions; use grouped\_signers or signers, not both.                                          |
| `signing_options`           | object  |          | —                                            | Allowed signature creation types                                                                                        |
| `cc_email_addresses`        | array   |          | —                                            | Email addresses to CC on the request                                                                                    |
| `signature_request_id`      | string  |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | ID of the signature request to edit and resend (must be exactly 40 characters)                                          |
| `populate_auto_fill_fields` | boolean |          | —                                            | Allow auto-fill fields to pre-populate signer info during signing                                                       |

***

### `Dropbox Sign Edit And Resend Signature Request`

Integration name: **DROPBOX\_SIGN\_EDIT\_AND\_RESEND\_SIGNATURE\_REQUEST**

Edits and resends an existing non-templated signature request with updated documents, signers, or settings. Use this tool when you need to modify an already-created signature request and resend it to signers. Note: This will reset signatures - anyone who already signed will need to sign again. Important: Edit and resend operations deduct from your signature request quota. Required: You must provide either 'files' or 'file\_urls' (not both) and either 'signers' or 'grouped\_signers' (not both).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                      | Description                                                                     |
| -------------------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------- |
| `files`                    | array   |          | —                                            | Files to upload; use files or file\_urls, not both.                             |
| `title`                    | string  |          | —                                            | Title for the signature request                                                 |
| `is_eid`                   | boolean |          | —                                            | Require eID identity verification (premium feature)                             |
| `message`                  | string  |          | —                                            | Custom email message to signers                                                 |
| `signers`                  | array   |          | —                                            | List of signer definitions; use signers or grouped\_signers, not both.          |
| `subject`                  | string  |          | —                                            | Custom email subject line                                                       |
| `metadata`                 | object  |          | —                                            | Up to 10 custom key/value metadata entries (keys ≤40 chars, values ≤1000 chars) |
| `client_id`                | string  |          | —                                            | API App client\_id for branding and callbacks                                   |
| `file_urls`                | array   |          | —                                            | URLs for files; Dropbox Sign will fetch. Use file\_urls or files, not both.     |
| `test_mode`                | boolean |          | —                                            | If true, the request is not legally binding                                     |
| `expires_at`               | integer |          | —                                            | Unix timestamp when request expires                                             |
| `attachments`              | array   |          | —                                            | Signer attachments to collect                                                   |
| `allow_decline`            | boolean |          | —                                            | Allow signers to decline the request                                            |
| `custom_fields`            | array   |          | —                                            | Custom field values for merge fields or text tags                               |
| `field_options`            | object  |          | —                                            | Request-level field options                                                     |
| `use_text_tags`            | boolean |          | —                                            | Enable text tags parsing in documents                                           |
| `allow_reassign`           | boolean |          | —                                            | Allow signers to reassign (premium feature)                                     |
| `hide_text_tags`           | boolean |          | —                                            | Remove text tags in the final document                                          |
| `grouped_signers`          | array   |          | —                                            | List of grouped signer definitions; use grouped\_signers or signers, not both.  |
| `signing_options`          | object  |          | —                                            | Allowed signature creation types                                                |
| `form_field_rules`         | array   |          | —                                            | Conditional logic rules for form fields                                         |
| `form_field_groups`        | array   |          | —                                            | Definitions for form field groups referenced by fields                          |
| `cc_email_addresses`       | array   |          | —                                            | Email addresses to CC on the request                                            |
| `signature_request_id`     | string  |     ✅    | `"5e825a6545e98a03ed9c019e78f0847cfa72064c"` | ID of the signature request to edit and resend                                  |
| `signing_redirect_url`     | string  |          | —                                            | URL to redirect signers after signing completes                                 |
| `form_fields_per_document` | array   |          | —                                            | Form fields placement per document                                              |

***

### `Dropbox Sign Edit And Resend Unclaimed Draft`

Integration name: **DROPBOX\_SIGN\_EDIT\_AND\_RESEND\_UNCLAIMED\_DRAFT**

Tool to edit and resend a previously created unclaimed draft. Use when you have an existing signature\_request\_id and want to modify the draft before reissuing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                                          |
| ------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------- |
| `client_id`               | string  |     ✅    | —       | Client ID of the app used to create the draft; applies app branding and callback URL (must be exactly 32 characters) |
| `test_mode`               | boolean |          | —       | If true, created request is not legally binding                                                                      |
| `editor_options`          | object  |          | —       | Options for the built-in document editor while preparing the draft                                                   |
| `signature_request_id`    | string  |     ✅    | —       | ID of the signature request to edit and resend (must be exactly 40 characters)                                       |
| `signing_redirect_url`    | string  |          | —       | URL to redirect signers after they successfully sign                                                                 |
| `show_progress_stepper`   | boolean |          | —       | Show progress stepper; set to false to hide when only one step remains                                               |
| `is_for_embedded_signing` | boolean |          | —       | If true, the resulting request will be signable in embedded mode                                                     |
| `requester_email_address` | string  |          | —       | Email to designate as the requester; defaults to the original requester if not set                                   |
| `requesting_redirect_url` | string  |          | —       | URL to redirect users after they successfully request a signature                                                    |

***

### `Dropbox Sign Edit Resend Embedded Signature Request Template`

Integration name: **DROPBOX\_SIGN\_EDIT\_RESEND\_EMBEDDED\_SIGNATURE\_REQUEST\_TEMPLATE**

Tool to edit and resend an embedded signature request using templates. Use when you need to update request details or recipients and resend within an embedded signing flow.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example | Description                                                                           |
| --------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------- |
| `ccs`                       | array   |          | —       | CC recipients matching any CC roles in template                                       |
| `files`                     | array   |          | —       | Binary file uploads; mutually exclusive with file\_urls                               |
| `title`                     | string  |          | —       | Title for the signature request (max 255 chars)                                       |
| `message`                   | string  |          | —       | Custom email message to signers (max 5000 chars)                                      |
| `signers`                   | array   |     ✅    | —       | Signer definitions matching template roles                                            |
| `subject`                   | string  |          | —       | Email subject to signers (max 255 chars)                                              |
| `metadata`                  | object  |          | —       | Key/value metadata (≤10 keys, values ≤1000 chars)                                     |
| `client_id`                 | string  |     ✅    | —       | Client ID of your HelloSign app for embedded requests (must be exactly 32 characters) |
| `file_urls`                 | array   |          | —       | URLs for Dropbox Sign to fetch file(s); mutually exclusive with files                 |
| `test_mode`                 | boolean |          | —       | If true, signature request is a non-legally binding test                              |
| `template_ids`              | array   |     ✅    | —       | One or more template IDs in order                                                     |
| `allow_decline`             | boolean |          | —       | Allow signers to decline                                                              |
| `custom_fields`             | array   |          | —       | Values for merge fields in template                                                   |
| `signing_options`           | object  |          | —       | Override account signing method options                                               |
| `signature_request_id`      | string  |     ✅    | —       | The ID of the signature request to edit and resend (must be exactly 40 characters)    |
| `populate_auto_fill_fields` | boolean |          | —       | If true, auto-fill fields are pre-populated during embedded signing                   |

***

### `Dropbox Sign Get Account`

Integration name: **DROPBOX\_SIGN\_GET\_ACCOUNT**

Retrieves detailed information about a Dropbox Sign account including quotas, payment status, and settings. Use this tool to: - Check account quota limits (API requests, documents, templates remaining) - Verify account payment status (paid vs free tier) - Get account settings (SMS delivery, authentication options) - Retrieve account identifiers and contact information Requires either account\_id (40-character identifier) or email\_address, but not both.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                      | Description                                                                                                        |
| --------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `account_id`    | string |          | `"a5be022c9f7f27139f1103d66a981e6e089ff22e"` | The ID of the account (must be exactly 40 characters). Provide either account\_id or email\_address, but not both. |
| `email_address` | string |          | `"user@example.com"`                         | The email address of the account. Provide either account\_id or email\_address, but not both.                      |

***

### `Dropbox Sign Get Api App`

Integration name: **DROPBOX\_SIGN\_GET\_API\_APP**

Tool to retrieve information about an API App by its client ID. Use when you need to fetch API App configuration, OAuth settings, white labeling options, or owner details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                              | Description                                                                                           |
| ----------- | ------ | :------: | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `client_id` | string |     ✅    | `"a731cc2f68ff910bdee67689884eb804"` | The client ID of the API App to retrieve. This unique identifier is assigned when the app is created. |

***

### `Dropbox Sign Get Bulk Send Job`

Integration name: **DROPBOX\_SIGN\_GET\_BULK\_SEND\_JOB**

Tool to retrieve the status of a bulk send job. Use when you need up-to-date job progress and request details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                      | Description                                                                   |
| ------------------ | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------- |
| `page`             | integer |          | `1`                                          | Page number of the Bulk Send Job signature requests to return. Defaults to 1. |
| `page_size`        | integer |          | `20`                                         | Number of signature requests per page (1-100). Defaults to 20.                |
| `bulk_send_job_id` | string  |     ✅    | `"6e683bc0369ba3d5b6f43c2c22a8031dbf6bd174"` | The ID of the Bulk Send Job to retrieve.                                      |

***

### `Dropbox Sign Get Current Team`

Integration name: **DROPBOX\_SIGN\_GET\_CURRENT\_TEAM**

Tool to get the current team membership status and details. Use when you need to check if the authenticated user is part of a team and retrieve team information. Returns is\_on\_team False if user is not part of any team (no retries needed for this case).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Sign Get Embedded Sign Url`

Integration name: **DROPBOX\_SIGN\_GET\_EMBEDDED\_SIGN\_URL**

Retrieves an embedded signing URL for a specific signer's signature. Use this after creating an embedded signature request to get a temporary URL that can be embedded in an iFrame for the signer to complete signing. The URL expires after 60 minutes or upon first access, but you can generate a new URL anytime using the same signature\_id. Note: Requires the signature\_id (per signer), not the signature\_request\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                              | Description                                                                                                                                              |
| -------------- | ------ | :------: | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `signature_id` | string |     ✅    | `"50e3542f738adfa7ddd4cbd4c00d2a8a"` | The 32-character signature ID (not signature\_request\_id) obtained from creating an embedded signature request. Each signer has a unique signature\_id. |

***

### `Dropbox Sign Get Embedded Template Edit Url`

Integration name: **DROPBOX\_SIGN\_GET\_EMBEDDED\_TEMPLATE\_EDIT\_URL**

Tool to generate an edit URL for embedded template editing. Use after selecting or uploading a template to allow users to modify it in an iframe.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                       |
| ----------------------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `cc_roles`              | array   |          | —       | List of CC role names; pass empty list to remove all CC roles.    |
| `test_mode`             | boolean |          | —       | Allow editing locked templates when in test mode.                 |
| `template_id`           | string  |     ✅    | —       | ID of the template to generate an edit URL for.                   |
| `merge_fields`          | array   |          | —       | Merge fields to prefill; pass empty list to clear all existing.   |
| `preview_only`          | boolean |          | —       | Preview-only mode with no adding fields; overrides show\_preview. |
| `show_preview`          | boolean |          | —       | Enable the editor preview experience.                             |
| `allow_edit_ccs`        | boolean |          | —       | Allow adding or changing CC roles during editing.                 |
| `editor_options`        | object  |          | —       | Options to configure the embedded template editor UI.             |
| `force_signer_roles`    | boolean |          | —       | Allow users to review or edit signer roles before sending.        |
| `force_subject_message` | boolean |          | —       | Allow users to review or edit email subject and message.          |
| `show_progress_stepper` | boolean |          | —       | Show the progress stepper unless only one step remains.           |

***

### `Dropbox Sign Get Fax Line Area Codes`

Integration name: **DROPBOX\_SIGN\_GET\_FAX\_LINE\_AREA\_CODES**

Tool to retrieve available fax line area codes for a given country, state/province, and city. Use when you need to determine which area codes are available for purchasing or provisioning a fax line in a specific location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                     |
| ---------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------- |
| `city`     | string |          | `"San Francisco"` | Filter area codes by city name. Narrows results to a specific city within the selected state or province.       |
| `state`    | string |          | `"CA"`            | US state codes.                                                                                                 |
| `country`  | string |     ✅    | `"US"`            | Filter area codes by country. Required. Must be one of CA (Canada), US (United States), or UK (United Kingdom). |
| `province` | string |          | `"ON"`            | Canadian province codes.                                                                                        |

***

### `Dropbox Sign Get Signature Request`

Integration name: **DROPBOX\_SIGN\_GET\_SIGNATURE\_REQUEST**

Retrieves the current status and complete details of a signature request by ID. Use this action to: - Check if signers have viewed, signed, or declined the request - Get signer information and signature timestamps - Access form field responses and custom field values - Retrieve URLs for document downloads and management - Monitor signature request progress and completion status Returns detailed information including signer names, emails, signing status, custom fields, response data, attachments, and signing options. Handles errors gracefully with structured error responses for invalid or non-existent signature request IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                                                                        |
| ---------------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `signature_request_id` | string |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | Unique identifier of the signature request to retrieve (40-character hex string). Obtain this ID from the response when creating a signature request or from the list signature requests endpoint. |

***

### `Dropbox Sign Get Signature Request Files As Data Uri`

Integration name: **DROPBOX\_SIGN\_GET\_SIGNATURE\_REQUEST\_FILES\_AS\_DATA\_URI**

Tool to download signature request files as a base64-encoded data URI. Use when you need the document content as a data URI string for embedding or transmission. Returns immediately if files are ready (status 200), or indicates if files are still being prepared (status 409).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                                                                  |
| ---------------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `signature_request_id` | string |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | The ID of the SignatureRequest to retrieve files for as data URI. This is a 40-character hex string obtained when creating a signature request or from the list signature requests endpoint. |

***

### `Dropbox Sign Get Signature Request Files As File Url`

Integration name: **DROPBOX\_SIGN\_GET\_SIGNATURE\_REQUEST\_FILES\_AS\_FILE\_URL**

Retrieves a copy of the current documents and returns a JSON object with a URL to the file (PDFs only). Use this action when you need a temporary download link for signature request documents instead of downloading the files directly. The returned URL will expire after a certain time period indicated by the expires\_at field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                                                                      |
| ---------------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `signature_request_id` | string |     ✅    | `"e98d857be091a7a0e71d40cdf4328601442f89b5"` | The ID of the SignatureRequest to retrieve files for (40-character hex string). Obtain this ID from the response when creating a signature request or from the list signature requests endpoint. |

***

### `Dropbox Sign Get Team Info`

Integration name: **DROPBOX\_SIGN\_GET\_TEAM\_INFO**

Retrieves information about a Dropbox Sign team, including team name, member count, and sub-team count. Use when you need to get team details. If team\_id is provided, retrieves info for that specific team; otherwise retrieves info for the authenticated user's team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                               |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id` | string |          | `"abcd1234-12ab-34cd-56ef-123456abcdef"` | The ID of the team to retrieve information for. Optional — if omitted, the API will return information for the authenticated user's team. |

***

### `Dropbox Sign Get Template`

Integration name: **DROPBOX\_SIGN\_GET\_TEMPLATE**

Tool to return the specified template. Use when you need to fetch full template details by ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                |
| ------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------ |
| `template_id` | string |     ✅    | `"5305a77b8b938843f0000001a3d50f36bb2b0320"` | The unique ID of the template to retrieve. |

***

### `Dropbox Sign Get Template Files`

Integration name: **DROPBOX\_SIGN\_GET\_TEMPLATE\_FILES**

Tool to download documents associated with a template. Use after confirming the template is created; returns a PDF or ZIP archive of the documents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                                                                               |
| ------------- | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `file_type`   | string |          | `"zip"`                                      | Format of the output: 'pdf' for merged PDF, 'zip' for individual docs in a ZIP archive.                   |
| `template_id` | string |     ✅    | `"3b2f1ac79dfc679ba07de7fa5f3c4e8a0c1b2d3e"` | ID of the HelloSign template to download documents for. Example: 3b2f1ac79dfc679ba07de7fa5f3c4e8a0c1b2d3e |

***

### `Dropbox Sign Get Template Files As Data Uri`

Integration name: **DROPBOX\_SIGN\_GET\_TEMPLATE\_FILES\_AS\_DATA\_URI**

Tool to retrieve template documents as base64-encoded data URI. Use when you need template files in data URI format instead of downloading binary files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                      | Description                                                                                |
| ------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------ |
| `template_id` | string |     ✅    | `"f57db65d3f933b5316d398057a36176831451a35"` | The id of the Template to get files for. Example: f57db65d3f933b5316d398057a36176831451a35 |

***

### `Dropbox Sign Get Template Files As File Url`

Integration name: **DROPBOX\_SIGN\_GET\_TEMPLATE\_FILES\_AS\_FILE\_URL**

Tool to retrieve a copy of template documents and return a JSON object with a URL to the file (PDFs only). Use this action when you need a temporary download link for template documents instead of downloading the files directly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                      | Description                                                                                                                                             |
| ---------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `template_id`    | string  |     ✅    | `"136896611e4aa6b92e188dddb93f3248398c5558"` | The ID of the template to retrieve files for. Obtain this ID from the response when creating a template or from the list templates endpoint.            |
| `force_download` | integer |          | `0`                                          | By default when opening the file\_url a browser will download the PDF and save it locally. When set to 0 the PDF file will be displayed in the browser. |

***

### `Dropbox Sign List Api Apps`

Integration name: **DROPBOX\_SIGN\_LIST\_API\_APPS**

Tool to list API Apps. Use when you need to retrieve a paginated list of API Apps accessible to your account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                         |
| ----------- | ------- | :------: | ------- | ------------------------------------------------------------------- |
| `page`      | integer |          | `1`     | Page number to return; minimum 1; default is 1.                     |
| `page_size` | integer |          | `20`    | Number of API Apps per page; minimum 1; maximum 100; default is 20. |

***

### `Dropbox Sign List Bulk Send Jobs`

Integration name: **DROPBOX\_SIGN\_LIST\_BULK\_SEND\_JOBS**

Tool to list bulk send jobs. Use when you need to retrieve all bulk send job summaries the authenticated user can access. Supports pagination via page and page\_size.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                      |
| ----------- | ------- | :------: | ------- | ---------------------------------------------------------------- |
| `page`      | integer |          | `1`     | Page number of the Bulk Send Job list (default 1).               |
| `page_size` | integer |          | `20`    | Number of Bulk Send Jobs to return per page (1–100, default 20). |

***

### `Dropbox Sign List Faxes`

Integration name: **DROPBOX\_SIGN\_LIST\_FAXES**

Tool to list faxes and their properties. Use when you need to retrieve paginated faxes with information about transmissions and status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                         |
| ----------- | ------- | :------: | ------- | --------------------------------------------------- |
| `page`      | integer |          | `1`     | Page number to return. Defaults to 1.               |
| `page_size` | integer |          | `20`    | Number of results per page (1–100). Defaults to 20. |

***

### `Dropbox Sign List Fax Lines`

Integration name: **DROPBOX\_SIGN\_LIST\_FAX\_LINES**

Tool to list fax lines and their properties. Use when you need to retrieve available fax lines for an account, optionally paging or including team lines.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example              | Description                                         |
| ----------------- | ------- | :------: | -------------------- | --------------------------------------------------- |
| `page`            | integer |          | `1`                  | Page number to return. Defaults to 1.               |
| `page_size`       | integer |          | `20`                 | Number of results per page (1–100). Defaults to 20. |
| `account_id`      | string  |          | `"abcd1234efgh5678"` | Filter fax lines to this account ID.                |
| `show_team_lines` | boolean |          | `true`               | Include fax lines belonging to team members.        |

***

### `Dropbox Sign List Signature Requests`

Integration name: **DROPBOX\_SIGN\_LIST\_SIGNATURE\_REQUESTS**

Tool to list signature requests. Use when you need to retrieve paginated signature requests with optional filters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                     | Description                                                                                  |
| ------------ | ------- | :------: | --------------------------- | -------------------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`                         | Page number to return.                                                                       |
| `query`      | string  |          | `"from:me title:Agreement"` | Search string with optional fielded filters (e.g., 'from:me AND complete:true').             |
| `page_size`  | integer |          | `20`                        | Number of objects per page, between 1 and 100.                                               |
| `account_id` | string  |          | `"all"`                     | Team account to list requests for; use 'all' for all team members; defaults to your account. |

***

### `Dropbox Sign List Sub Teams`

Integration name: **DROPBOX\_SIGN\_LIST\_SUB\_TEAMS**

Lists all sub-teams belonging to a parent team with pagination support. Returns team identifiers and names for each sub-team. Use this to discover the organizational structure of teams within Dropbox Sign. Requires a valid team\_id from the parent team. Returns empty list if the team has no sub-teams or if team features are not available for the account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                  | Description                                                                |
| ----------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------- |
| `page`      | integer |          | `1`                                      | Page number to return; minimum is 1; default is 1.                         |
| `team_id`   | string  |     ✅    | `"abcd1234-12ab-34cd-56ef-123456abcdef"` | The unique identifier of the parent team whose sub-teams you want to list. |
| `page_size` | integer |          | `20`                                     | Number of items per page; range is 1 to 100; default is 20.                |

***

### `Dropbox Sign List Team Members`

Integration name: **DROPBOX\_SIGN\_LIST\_TEAM\_MEMBERS**

Lists all members and their roles for a specific team. Returns a paginated list of team members with their account IDs, email addresses, and roles. Requires team\_id which can be obtained from LIST\_TEAMS or GET\_TEAM\_INFO actions. Supports pagination for teams with many members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                      | Description                                       |
| ----------- | ------- | :------: | ---------------------------- | ------------------------------------------------- |
| `page`      | integer |          | `1`                          | Page number to return (default is 1)              |
| `team_id`   | string  |     ✅    | `"0123abcd1234efgh5678ijkl"` | The ID of the team to retrieve members for        |
| `page_size` | integer |          | `20`                         | Number of results per page (1-100, default is 20) |

***

### `Dropbox Sign List Teams`

Integration name: **DROPBOX\_SIGN\_LIST\_TEAMS**

Lists all Dropbox Sign teams accessible to the authenticated user, including the current team and its sub-teams. Returns team IDs and names which can be used with other team-related actions. Returns an empty list if the account doesn't have team features enabled.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Dropbox Sign List Templates`

Integration name: **DROPBOX\_SIGN\_LIST\_TEMPLATES**

Tool to list templates. Use when you need to retrieve a paginated list of templates accessible to your account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example             | Description                                                                                       |
| ------------ | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`                 | Page number to return; minimum 1; default is 1                                                    |
| `query`      | string  |          | `"title:Agreement"` | Search string to filter templates; supports fielded queries per Search guide                      |
| `page_size`  | integer |          | `20`                | Number of templates per page; minimum 1; maximum 100; default is 20                               |
| `account_id` | string  |          | `"all"`             | Team member account to return templates for; use 'all' for all members; defaults to your account. |

***

### `Dropbox Sign O Auth Authorize`

Integration name: **DROPBOX\_SIGN\_O\_AUTH\_AUTHORIZE**

Tool to generate an OAuth authorization URL. Use before directing the user to grant access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                     | Description                                                                                                                               |
| -------------- | ------ | :------: | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`        | string |          | `"account_access signature_request_access template_access"` | Optional space-delimited list of OAuth scopes. If omitted, default scopes for the app are used.                                           |
| `state`        | string |     ✅    | `"user-login-123"`                                          | Opaque value used to maintain state between the request and callback. Must be unique per auth request.                                    |
| `client_id`    | string |          | `"abcd1234efgh5678"`                                        | Client ID of the Dropbox Sign API app. If not provided, the value from connection metadata will be used.                                  |
| `redirect_uri` | string |          | `"https://example.com/oauth/callback"`                      | Optional redirect URI to which the OAuth server will send the user after authorization. Must match a configured callback URL if provided. |

***

### `Dropbox Sign Release Signature Request Hold`

Integration name: **DROPBOX\_SIGN\_RELEASE\_SIGNATURE\_REQUEST\_HOLD**

Release a held signature request to send it to signers. Use this when a signature request was created from an unclaimed draft with hold\_request=true and has been claimed but not yet sent. After releasing, the request will be sent to all designated signers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                      |
| ---------------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------- |
| `signature_request_id` | string |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | ID of the held Signature Request to release. Must be exactly 40 characters long. |

***

### `Dropbox Sign Remove User From Template`

Integration name: **DROPBOX\_SIGN\_REMOVE\_USER\_FROM\_TEMPLATE**

Tool to remove an account's access to a template. Use when you need to revoke a user's permission on a template after confirming template ID and target account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                      | Description                                                                                            |
| --------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `account_id`    | string |          | `"abcdef1234567890abcdef1234567890abcdef12"` | ID of the account to revoke access (must be 40 characters long). Takes precedence over email\_address. |
| `template_id`   | string |     ✅    | —                                            | ID of the template from which to remove access.                                                        |
| `email_address` | string |          | `"user@example.com"`                         | Email of the account to revoke access. Ignored if account\_id is provided.                             |

***

### `Dropbox Sign Send Signature Request`

Integration name: **DROPBOX\_SIGN\_SEND\_SIGNATURE\_REQUEST**

Tool to create and send a new signature request with documents. Use when you need to send documents for electronic signature. The action sends emails to all specified signers with links to view and sign the documents. Supports multiple signers, CC recipients, custom fields, form fields, and various signing options. Documents can be uploaded directly or provided via publicly accessible URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                                        | Description                                                                                                                  |
| -------------------------- | ------- | :------: | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `files`                    | array   |          | —                                                              | Files to be signed. Either files or file\_urls is required.                                                                  |
| `title`                    | string  |          | —                                                              | Internal title for the signature request (not shown to signers)                                                              |
| `message`                  | string  |          | —                                                              | Custom message included in the signature request email to signers                                                            |
| `signers`                  | array   |     ✅    | `[{"name":"Alice Smith","email_address":"alice@example.com"}]` | Array of signer objects. Each signer will receive an email to sign the document.                                             |
| `subject`                  | string  |          | —                                                              | Subject line for the signature request email sent to signers                                                                 |
| `metadata`                 | object  |          | —                                                              | Custom metadata key/value pairs (up to 10 pairs). Keys max 40 chars, values max 1000 chars. Included in webhook callbacks.   |
| `file_urls`                | array   |          | `["https://example.com/document.pdf"]`                         | URLs to remote documents to be signed (e.g., publicly accessible PDFs). Either files or file\_urls is required.              |
| `test_mode`                | boolean |          | —                                                              | Create signature request in test mode (not legally binding, free). Use for testing integrations.                             |
| `allow_decline`            | boolean |          | —                                                              | Allow signers to decline signing the document                                                                                |
| `custom_fields`            | array   |          | —                                                              | Pre-filled merge fields for the signature request                                                                            |
| `use_text_tags`            | boolean |          | —                                                              | Enable text tag parsing in documents. Text tags are special formatted strings that define form fields.                       |
| `allow_reassign`           | boolean |          | —                                                              | Allow signers to reassign the signature request to another person                                                            |
| `hide_text_tags`           | boolean |          | —                                                              | Hide text tags from document after parsing. Only applies when use\_text\_tags is true.                                       |
| `cc_email_addresses`       | array   |          | —                                                              | CC recipients who will receive a copy when the signature request is completed                                                |
| `signing_redirect_url`     | string  |          | —                                                              | URL to redirect signers to after they complete signing                                                                       |
| `form_fields_per_document` | array   |          | —                                                              | Form field definitions for each document. Outer list corresponds to documents, inner list contains fields for that document. |

***

### `Dropbox Sign Send Signature Request Reminder`

Integration name: **DROPBOX\_SIGN\_SEND\_SIGNATURE\_REQUEST\_REMINDER**

Sends an email reminder to a signer about a pending signature request. Use this when a signer needs a reminder to complete their signature. Important constraints: - Cannot send a reminder within 1 hour of the last reminder (automatic or manual) - Cannot be used with embedded signature requests - The signature request must exist and not be completed - The email address must match a signer on the request

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                  |
| ---------------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string |          | `"Alice Smith"`                              | Name of the signer. Required only when multiple signers on the request share the same email address, to disambiguate which signer to remind. |
| `email_address`        | string |     ✅    | `"alice@example.com"`                        | Email address of the signer who should receive the reminder. Must match an existing signer on the signature request.                         |
| `signature_request_id` | string |     ✅    | `"fa5c8a0b0f492d768749333ad6fcc214c111e967"` | The unique ID of the signature request (40-character hexadecimal string). Get this from list or get signature request endpoints.             |

***

### `Dropbox Sign Update Account`

Integration name: **DROPBOX\_SIGN\_UPDATE\_ACCOUNT**

Tool to update Dropbox Sign account properties and settings. Use when you need to modify callback URLs or locale settings for an account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                      | Description                                                                     |
| -------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------- |
| `locale`       | string |          | `"en_US"`                                    | The locale used in the account (e.g., 'en\_US', 'de\_DE', 'fr\_FR').            |
| `account_id`   | string |          | `"a5be022c9f7f27139f1103d66a981e6e089ff22e"` | The ID of the account to update (must be exactly 40 characters).                |
| `callback_url` | string |          | `"https://example.com/callback"`             | The URL that Dropbox Sign should POST events to. Set to empty string to remove. |

***

### `Dropbox Sign Update Api App`

Integration name: **DROPBOX\_SIGN\_UPDATE\_API\_APP**

Tool to update an existing API App in Dropbox Sign. Use when you need to modify API App settings such as name, callback URL, domains, OAuth configuration, branding options, or custom logo.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type   | Required | Example                              | Description                                                 |
| ------------------------ | ------ | :------: | ------------------------------------ | ----------------------------------------------------------- |
| `name`                   | string |          | `"My API App"`                       | Name to assign to the API App                               |
| `oauth`                  | object |          | —                                    | OAuth configuration for API App                             |
| `domains`                | array  |          | `["example.com","app.example.com"]`  | Domain names associated with the app                        |
| `options`                | object |          | —                                    | Options configuration for API App                           |
| `client_id`              | string |     ✅    | `"fb9dacffaea5f03718e48eb22511926b"` | The client ID of the API App to update                      |
| `callback_url`           | string |          | `"https://example.com/callback"`     | URL where the API App receives event callbacks              |
| `custom_logo_file`       | object |          | —                                    | An image file to use as a custom logo in embedded contexts. |
| `white_labeling_options` | object |          | —                                    | White labeling customization options for API App            |

***

### `Dropbox Sign Update Signature Request`

Integration name: **DROPBOX\_SIGN\_UPDATE\_SIGNATURE\_REQUEST**

Updates the email address and/or name for a specific signer on a signature request. Use this when you need to correct or update signer contact information before they complete signing. Important: This endpoint only works for signature requests created with explicit form\_fields\_per\_document (no appended signature page). At least one of email\_address or name must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                      | Description                                                                                                                                |
| ---------------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                 | string |          | `"Updated Signer Name"`                      | New name for the signer. Provide this and/or email\_address to update.                                                                     |
| `signature_id`         | string |     ✅    | `"d5cf1d061f4f50604a4df2247dd66fac"`         | The signature ID for the signer whose information should be updated. Get this from the signatures list in the signature request object.    |
| `email_address`        | string |          | `"updated.signer@example.com"`               | New email address for the signer. Must be a valid email format. Provide this and/or name to update.                                        |
| `signature_request_id` | string |     ✅    | `"c51362a3e019096248fd4b6c2f8e69dbf2763706"` | The unique ID of the signature request to update (40-character hexadecimal string). Get this from list or get signature request endpoints. |

***

### `Dropbox Sign Update Template Files`

Integration name: **DROPBOX\_SIGN\_UPDATE\_TEMPLATE\_FILES**

Tool to update files for an existing template. Overlays new files with the overlay of an existing template. Use when you need to replace the documents in a template while keeping the field configuration. The update is processed asynchronously; completion is communicated via callback events (template\_created or template\_error).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                      | Description                                                                                                               |
| ------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `files`       | array   |          | —                                            | Files to upload for the template. Use either files or file\_urls, not both.                                               |
| `message`     | string  |          | —                                            | The new default template email message.                                                                                   |
| `subject`     | string  |          | —                                            | The new default template email subject.                                                                                   |
| `client_id`   | string  |          | —                                            | Client ID of the app you are using to update the template.                                                                |
| `file_urls`   | array   |          | —                                            | URLs for files to use for the template. Dropbox Sign will download these files. Use either file\_urls or files, not both. |
| `test_mode`   | boolean |          | —                                            | Whether this is a test. Signatures will not be legally binding if set to true. Defaults to false.                         |
| `template_id` | string  |     ✅    | `"0bf765f428e95d0a0107c2575c761001ea77d7d0"` | The ID of the template to update files for.                                                                               |

***

### `Dropbox Sign Verify Account`

Integration name: **DROPBOX\_SIGN\_VERIFY\_ACCOUNT**

Tool to verify whether a Dropbox Sign account exists for the given email. Use when you need to check account existence before sending signature requests.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                         |
| --------------- | ------ | :------: | -------------------- | --------------------------------------------------- |
| `email_address` | string |     ✅    | `"user@example.com"` | Email address to verify for a Dropbox Sign account. |

***


# Dub

Your Toolhouse AI Worker can connect to Dub using 17 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](https://toolhouse.app/auth-connections?authkit_slugs=dub).

## Tools (17)

### `Dub Bulk Delete Links`

Integration name: **DUB\_BULK\_DELETE\_LINKS**

Tool to delete multiple short links in bulk from Dub. Use when you need to remove multiple links at once. Maximum of 100 link IDs per request. Non-existing IDs are silently ignored.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type  | Required | Example                                                               | Description                                                                                                                                 |
| ---------- | ----- | :------: | --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `link_ids` | array |     ✅    | `["link_1KEEH8EH10TSN9YVTC88JH9H4","link_1KEEH8JDV00BS154D3F20VN0N"]` | List of link IDs to delete. Maximum of 100 IDs. Non-existing IDs will be ignored. Each ID should be in the format 'link\_XXXXX' or similar. |

***

### `Dub Bulk Update Links`

Integration name: **DUB\_BULK\_UPDATE\_LINKS**

Tool to update multiple short links in bulk. Use when you need to apply the same updates to multiple links at once by specifying link IDs or external IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                                                             |
| ------------- | ------ | :------: | ------------------------------------ | --------------------------------------------------------------------------------------- |
| `data`        | object |     ✅    | —                                    | The fields to update for all specified links.                                           |
| `linkIds`     | array  |          | `["link_1KEEH86942XZC9P7KJR91M5C2"]` | The IDs of the links to update. Takes precedence over `externalIds`. Maximum 100 items. |
| `externalIds` | array  |          | —                                    | The external IDs of the links to update as stored in your database. Maximum 100 items.  |

***

### `Dub Create Domain`

Integration name: **DUB\_CREATE\_DOMAIN**

Tool to add a domain to a Dub workspace. Use when you need to create a new domain for shortening links. The domain must be verified before it can be used for link shortening.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                     | Description                                                                                                       |
| ------------------------- | ------- | :------: | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `logo`                    | string  |          | —                                           | The logo of the domain                                                                                            |
| `slug`                    | string  |     ✅    | `"acme.com"`                                | Name of the domain (e.g., yourbrand.com)                                                                          |
| `archived`                | boolean |          | `false`                                     | Whether to archive this domain. False will unarchive a previously archived domain                                 |
| `assetLinks`              | string  |          | —                                           | assetLinks.json configuration file (for deep link support on Android)                                             |
| `expiredUrl`              | string  |          | `"https://acme.com/expired"`                | Redirect users to a specific URL when any link under this domain has expired                                      |
| `notFoundUrl`             | string  |          | `"https://acme.com/not-found"`              | Redirect users to a specific URL when a link under this domain doesn't exist                                      |
| `placeholder`             | string  |          | `"https://dub.co/help/article/what-is-dub"` | Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened |
| `appleAppSiteAssociation` | string  |          | —                                           | apple-app-site-association configuration file (for deep link support on iOS)                                      |

***

### `Dub Create Tag`

Integration name: **DUB\_CREATE\_TAG**

Tool to create a new tag in Dub. Use when you need to organize links by creating custom tags. Tags help categorize and filter links for better organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                                                                                                       |
| --------- | ------ | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"marketing"` | The name of the tag to create. Must be between 1 and 50 characters.                                                                               |
| `color`   | string |          | `"blue"`      | The color of the tag. If not provided, a random color will be assigned from the available options: red, yellow, green, blue, purple, brown, pink. |

***

### `Dub Delete Domain`

Integration name: **DUB\_DELETE\_DOMAIN**

Tool to delete a domain from your Dub workspace. Use when you need to permanently remove a domain. The domain must exist and be owned by your workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                |
| --------- | ------ | :------: | ------------ | -------------------------- |
| `slug`    | string |     ✅    | `"acme.com"` | The domain name to delete. |

***

### `Dub Delete Tag`

Integration name: **DUB\_DELETE\_TAG**

Tool to delete a tag from Dub. Use when you need to remove a tag that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                           | Description                  |
| --------- | ------ | :------: | --------------------------------- | ---------------------------- |
| `id`      | string |     ✅    | `"tag_1KEEHB566ECNBS4N9RC0MT413"` | The ID of the tag to delete. |

***

### `Dub Get Link Info`

Integration name: **DUB\_GET\_LINK\_INFO**

Tool to retrieve details of a specific short link from Dub. Use when you need to get comprehensive information about a link including its configuration, targeting settings, and performance metrics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example               | Description                                                                                                                 |
| ------------- | ------ | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `key`         | string |          | `"github"`            | The key of the link to retrieve. E.g. for `d.to/github`, the key is `github`. Must be used together with domain parameter.  |
| `domain`      | string |          | `"dub.sh"`            | The domain of the link to retrieve. E.g. for `d.to/github`, the domain is `d.to`. Must be used together with key parameter. |
| `link_id`     | string |          | `"clux0rgak00011..."` | The unique ID of the short link.                                                                                            |
| `external_id` | string |          | `"ext_123456"`        | This is the ID of the link in your database. Must be prefixed with 'ext\_' when querying.                                   |

***

### `Dub Get Links`

Integration name: **DUB\_GET\_LINKS**

Tool to retrieve a paginated list of links for the authenticated workspace. Use when you need to list links with optional filtering by domain, tags, folder, search terms, or user. Supports pagination and sorting for efficient retrieval of large link collections.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                                                                                  |
| -------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `page`         | integer |          | `1`       | The page number for pagination.                                                                                              |
| `sort`         | string  |          | —         | DEPRECATED. Use `sort_by` instead.                                                                                           |
| `tagId`        | string  |          | —         | Deprecated: Use `tag_ids` instead. The tag ID to filter the links by.                                                        |
| `domain`       | string  |          | `"ac.me"` | The domain to filter the links by. E.g. `ac.me`. If not provided, all links for the workspace will be returned.              |
| `search`       | string  |          | —         | The search term to filter the links by. The search term will be matched against the short link slug and the destination url. |
| `sortBy`       | string  |          | —         | The field to sort the links by. The default is `createdAt`.                                                                  |
| `tagIds`       | string  |          | —         | The tag IDs to filter the links by.                                                                                          |
| `userId`       | string  |          | —         | The user ID to filter the links by.                                                                                          |
| `folderId`     | string  |          | —         | The folder ID to filter the links by.                                                                                        |
| `pageSize`     | integer |          | `50`      | The number of items per page.                                                                                                |
| `tagNames`     | string  |          | —         | The unique name of the tags assigned to the short link (case insensitive).                                                   |
| `tenantId`     | string  |          | —         | The ID of the tenant that created the link inside your system. If set, will only return links for the specified tenant.      |
| `withTags`     | boolean |          | —         | DEPRECATED. Filter for links that have at least one tag assigned to them.                                                    |
| `sortOrder`    | string  |          | —         | The sort order. The default is `desc`.                                                                                       |
| `showArchived` | boolean |          | —         | Whether to include archived links in the response. Defaults to `false` if not provided.                                      |

***

### `Dub Get Links Count`

Integration name: **DUB\_GET\_LINKS\_COUNT**

Tool to retrieve the count of links in workspace with optional filters. Use when you need to get the total number of links matching specific criteria such as domain, tags, folder, or search terms.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example   | Description                                                                                                                  |
| -------------- | ------- | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `tagId`        | string  |          | —         | Deprecated: Use `tag_ids` instead. The tag ID to filter the links by.                                                        |
| `domain`       | string  |          | `"ac.me"` | The domain to filter the links by. E.g. `ac.me`. If not provided, all links for the workspace will be returned.              |
| `search`       | string  |          | —         | The search term to filter the links by. The search term will be matched against the short link slug and the destination url. |
| `tagIds`       | string  |          | —         | The tag IDs to filter the links by.                                                                                          |
| `userId`       | string  |          | —         | The user ID to filter the links by.                                                                                          |
| `groupBy`      | string  |          | —         | The field to group the links by.                                                                                             |
| `folderId`     | string  |          | —         | The folder ID to filter the links by.                                                                                        |
| `tagNames`     | string  |          | —         | The unique name of the tags assigned to the short link (case insensitive).                                                   |
| `tenantId`     | string  |          | —         | The ID of the tenant that created the link inside your system. If set, will only return links for the specified tenant.      |
| `withTags`     | boolean |          | —         | DEPRECATED. Filter for links that have at least one tag assigned to them.                                                    |
| `showArchived` | boolean |          | —         | Whether to include archived links in the response. Defaults to `false` if not provided.                                      |

***

### `Dub Get Tags`

Integration name: **DUB\_GET\_TAGS**

Tool to retrieve a list of tags from Dub. Use when you need to fetch all tags or search for specific tags by name or IDs. Supports pagination and sorting by name or creation date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                            |
| ------------ | ------- | :------: | ------- | -------------------------------------- |
| `ids`        | string  |          | —       | IDs of tags to filter by.              |
| `page`       | integer |          | `1`     | The page number for pagination.        |
| `search`     | string  |          | —       | The search term to filter the tags by. |
| `sort_by`    | string  |          | —       | The field to sort the tags by.         |
| `page_size`  | integer |          | `50`    | The number of items per page.          |
| `sort_order` | string  |          | —       | The order to sort the tags by.         |

***

### `Dub Get Workspace`

Integration name: **DUB\_GET\_WORKSPACE**

Tool to retrieve detailed information for a specific workspace. Use when you need to get workspace details including plan, usage limits, domains, users, and configuration settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                          | Description                      |
| ------------ | ------ | :------: | -------------------------------- | -------------------------------- |
| `id_or_slug` | string |     ✅    | `"ws_1K1ABQM4F0JEH7T7F4ZF7CR28"` | The ID or slug of the workspace. |

***

### `Dub List Domains`

Integration name: **DUB\_LIST\_DOMAINS**

Tool to retrieve a list of domains for the authenticated workspace. Use when you need to view all domains, search for specific domains, or filter domains by archived status. Supports pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                                                                             |
| ----------- | ------- | :------: | --------------- | --------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`             | The page number for pagination.                                                         |
| `search`    | string  |          | `"example.com"` | The search term to filter the domains by.                                               |
| `archived`  | boolean |          | `false`         | Whether to include archived domains in the response. Defaults to false if not provided. |
| `page_size` | integer |          | `50`            | The number of items per page.                                                           |

***

### `Dub Track Open`

Integration name: **DUB\_TRACK\_OPEN**

Tool to track a deep link open event in Dub. Use when you need to record when a user opens your app via a deep link. Supports both direct tracking via deepLink parameter or probabilistic tracking via dubDomain parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                        | Description                                                                                                                                                                                                                                          |
| ------------ | ------ | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `deep_link`  | string |          | `"https://acme.link/fb-promo"` | The deep link that brought the user to the app. If left blank, Dub will fallback to probabilistic tracking by using the dubDomain parameter to check if there is an associated click event for the user's IP address. Learn more: <https://d.to/ddl> |
| `dub_domain` | string |          | `"acme.link"`                  | Your deep link custom domain on Dub (e.g. 'acme.link'). This is used in probabilistic tracking to check if there is an associated click event for the user's IP address. Learn more: <https://d.to/ddl>                                              |

***

### `Dub Update Domain`

Integration name: **DUB\_UPDATE\_DOMAIN**

Tool to update a domain configuration in Dub. Use when you need to modify domain settings like redirect URLs, placeholder text, archive status, or deep linking configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                     | Description                                                                                                       |
| ---------------------------- | ------- | :------: | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `logo`                       | string  |          | —                                           | The logo of the domain (URL or data URI)                                                                          |
| `slug`                       | string  |     ✅    | `"acme.com"`                                | The domain name to update (e.g., 'acme.com'). This is the identifier of the domain you want to modify.            |
| `archived`                   | boolean |          | `false`                                     | Whether to archive this domain. Set to false to unarchive a previously archived domain                            |
| `new_slug`                   | string  |          | `"newdomain.com"`                           | New name of the domain if you want to rename it                                                                   |
| `asset_links`                | string  |          | —                                           | assetLinks.json configuration file (for deep link support on Android)                                             |
| `expired_url`                | string  |          | `"https://acme.com/expired"`                | Redirect users to a specific URL when any link under this domain has expired                                      |
| `placeholder`                | string  |          | `"https://dub.co/help/article/what-is-dub"` | Provide context to your teammates in the link creation modal by showing them an example of a link to be shortened |
| `not_found_url`              | string  |          | `"https://acme.com/not-found"`              | Redirect users to a specific URL when a link under this domain doesn't exist                                      |
| `apple_app_site_association` | string  |          | —                                           | apple-app-site-association configuration file (for deep link support on iOS)                                      |

***

### `Dub Update Tag`

Integration name: **DUB\_UPDATE\_TAG**

Tool to update an existing tag by ID. Use when you need to change the name or color of a tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                           | Description                                                                          |
| --------- | ------ | :------: | --------------------------------- | ------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"tag_1KEEHB566ECNBS4N9RC0MT413"` | The ID of the tag to update.                                                         |
| `name`    | string |          | `"updated-tag-test"`              | The name of the tag to update.                                                       |
| `color`   | string |          | `"blue"`                          | The color of the tag. Must be one of: red, yellow, green, blue, purple, brown, pink. |

***

### `Dub Update Workspace`

Integration name: **DUB\_UPDATE\_WORKSPACE**

Tool to update workspace settings in Dub. Use when you need to modify workspace name, slug, logo, or conversion tracking settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                          | Description                                                                                           |
| -------------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `logo`               | string  |          | `"https://example.com/logo.png"` | URL of the workspace logo image.                                                                      |
| `name`               | string  |          | `"My Workspace"`                 | The name of the workspace. Must be between 1 and 32 characters.                                       |
| `slug`               | string  |          | `"my-workspace"`                 | The slug of the workspace. Must be between 3 and 48 characters.                                       |
| `id_or_slug`         | string  |     ✅    | `"ws_1K1ABQM4F0JEH7T7F4ZF7CR28"` | The ID or slug of the workspace to update.                                                            |
| `conversion_enabled` | boolean |          | —                                | Whether the workspace has conversion tracking enabled automatically for new links (d.to/conversions). |

***

### `Dub Upsert Link`

Integration name: **DUB\_UPSERT\_LINK**

Tool to create or update a short link in Dub. Use when you need to create a new short link or update an existing one. If the link already exists (matching domain and key), it will be updated; otherwise, a new link will be created.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                             | Description                                                                                                                                                                                                        |
| ----------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `geo`             | object  |          | —                                                                                                                   | Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See <https://d.to/geo> for more information                                                                       |
| `ios`             | string  |          | —                                                                                                                   | The iOS destination URL for the short link for iOS device targeting                                                                                                                                                |
| `key`             | string  |          | —                                                                                                                   | The short link slug. If not provided, a random 7-character slug will be generated                                                                                                                                  |
| `ref`             | string  |          | —                                                                                                                   | The referral tag of the short link. If set, this will populate or override the `ref` query parameter in the destination URL                                                                                        |
| `url`             | string  |     ✅    | `"https://google.com"`                                                                                              | The destination URL of the short link                                                                                                                                                                              |
| `image`           | string  |          | —                                                                                                                   | The custom link preview image (og:image). Will be used for Custom Link Previews if `proxy` is true. Learn more: <https://d.to/og>                                                                                  |
| `proxy`           | boolean |          | —                                                                                                                   | Whether the short link uses Custom Link Previews feature. Defaults to `false` if not provided                                                                                                                      |
| `tagId`           | string  |          | —                                                                                                                   | Deprecated: Use `tagIds` instead. The unique ID of the tag assigned to the short link                                                                                                                              |
| `title`           | string  |          | —                                                                                                                   | The custom link preview title (og:title). Will be used for Custom Link Previews if `proxy` is true. Learn more: <https://d.to/og>                                                                                  |
| `video`           | string  |          | —                                                                                                                   | The custom link preview video (og:video). Will be used for Custom Link Previews if `proxy` is true. Learn more: <https://d.to/og>                                                                                  |
| `domain`          | string  |          | —                                                                                                                   | The domain of the short link (without protocol). If not provided, the primary domain for the workspace will be used (or `dub.sh` if the workspace has no domains)                                                  |
| `prefix`          | string  |          | —                                                                                                                   | The prefix of the short link slug for randomly-generated keys (e.g. if prefix is `/c/`, generated keys will be in the `/c/:key` format). Will be ignored if `key` is provided                                      |
| `tagIds`          | —       |          | `"clux0rgak00011..."`                                                                                               | The unique IDs of the tags assigned to the short link. Can be a single tag ID string or an array of tag IDs                                                                                                        |
| `android`         | string  |          | —                                                                                                                   | The Android destination URL for the short link for Android device targeting                                                                                                                                        |
| `doIndex`         | boolean |          | —                                                                                                                   | Allow search engines to index your short link. Defaults to `false` if not provided. Learn more: <https://d.to/noindex>                                                                                             |
| `rewrite`         | boolean |          | —                                                                                                                   | Whether the short link uses link cloaking. Defaults to `false` if not provided                                                                                                                                     |
| `archived`        | boolean |          | —                                                                                                                   | Whether the short link is archived. Defaults to `false` if not provided                                                                                                                                            |
| `comments`        | string  |          | —                                                                                                                   | The comments for the short link                                                                                                                                                                                    |
| `folderId`        | string  |          | —                                                                                                                   | The unique ID existing folder to assign the short link to                                                                                                                                                          |
| `password`        | string  |          | —                                                                                                                   | The password required to access the destination URL of the short link                                                                                                                                              |
| `tagNames`        | —       |          | —                                                                                                                   | The unique name of the tags assigned to the short link (case insensitive). Can be a single tag name string or an array of tag names                                                                                |
| `tenantId`        | string  |          | —                                                                                                                   | The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant                                                                                              |
| `utm_term`        | string  |          | —                                                                                                                   | The UTM term of the short link. If set, this will populate or override the UTM term in the destination URL                                                                                                         |
| `expiresAt`       | string  |          | —                                                                                                                   | The date and time when the short link will expire at in ISO-8601 format                                                                                                                                            |
| `keyLength`       | integer |          | —                                                                                                                   | The length of the short link slug. Defaults to 7 if not provided. When used with `prefix`, the total length of the key will be `prefix.length + keyLength`                                                         |
| `partnerId`       | string  |          | —                                                                                                                   | The ID of the partner the short link is associated with                                                                                                                                                            |
| `programId`       | string  |          | —                                                                                                                   | The ID of the program the short link is associated with                                                                                                                                                            |
| `expiredUrl`      | string  |          | —                                                                                                                   | The URL to redirect to when the short link has expired                                                                                                                                                             |
| `externalId`      | string  |          | `"123456"`                                                                                                          | The ID of the link in your database. If set, it can be used to identify the link in future API requests (must be prefixed with 'ext\_' when passed as a query parameter). This key is unique across your workspace |
| `utm_medium`      | string  |          | —                                                                                                                   | The UTM medium of the short link. If set, this will populate or override the UTM medium in the destination URL                                                                                                     |
| `utm_source`      | string  |          | —                                                                                                                   | The UTM source of the short link. If set, this will populate or override the UTM source in the destination URL                                                                                                     |
| `webhookIds`      | array   |          | —                                                                                                                   | An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data                                                                                                          |
| `description`     | string  |          | —                                                                                                                   | The custom link preview description (og:description). Will be used for Custom Link Previews if `proxy` is true. Learn more: <https://d.to/og>                                                                      |
| `publicStats`     | boolean |          | —                                                                                                                   | Deprecated: Use `dashboard` instead. Whether the short link's stats are publicly accessible. Defaults to `false` if not provided                                                                                   |
| `utm_content`     | string  |          | —                                                                                                                   | The UTM content of the short link. If set, this will populate or override the UTM content in the destination URL                                                                                                   |
| `testVariants`    | array   |          | `[{"url":"https://example.com/variant-1","percentage":50},{"url":"https://example.com/variant-2","percentage":50}]` | An array of A/B test URLs and the percentage of traffic to send to each URL. Must have 2-4 variants                                                                                                                |
| `utm_campaign`    | string  |          | —                                                                                                                   | The UTM campaign of the short link. If set, this will populate or override the UTM campaign in the destination URL                                                                                                 |
| `testStartedAt`   | string  |          | —                                                                                                                   | The date and time when the tests started in ISO-8601 format                                                                                                                                                        |
| `testCompletedAt` | string  |          | —                                                                                                                   | The date and time when the tests were or will be completed in ISO-8601 format                                                                                                                                      |
| `trackConversion` | boolean |          | —                                                                                                                   | Whether to track conversions for the short link. Defaults to `false` if not provided                                                                                                                               |

***


# Dynamics365

Your Toolhouse AI Worker can connect to Dynamics365 using 16 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](https://toolhouse.app/auth-connections?authkit_slugs=dynamics365).

## Tools (16)

### `Dynamics365 Dynamicscrm Create Account`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_ACCOUNT**

Creates a new account entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                       |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------- |
| `name`                | string  |          | —       | The name of the new account to be created.        |
| `revenue`             | number  |          | —       | The revenue associated with the account.          |
| `user_id`             | string  |          | —       | The user's ID or 'me' for the authenticated user. |
| `description`         | string  |          | —       | A description of the account.                     |
| `creditonhold`        | boolean |          | —       | Indicates whether the account is on credit hold.  |
| `accountcategorycode` | integer |          | —       | The category code of the account.                 |

***

### `Dynamics365 Dynamicscrm Create Case`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_CASE**

Creates a new case (incident) entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                 |
| ---------------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `title`          | string  |          | —       | The subject or title of the case.                                           |
| `user_id`        | string  |          | —       | The user's ID or 'me' for the authenticated user.                           |
| `account_id`     | string  |          | —       | A reference to the related account. Format: '/accounts(GUID)'               |
| `contact_id`     | string  |          | —       | A reference to the related contact. Format: '/contacts(GUID)'               |
| `description`    | string  |          | —       | A detailed description of the issue or inquiry.                             |
| `prioritycode`   | integer |          | —       | The priority level of the case (e.g., 1 for Low, 2 for Normal, 3 for High). |
| `caseorigincode` | integer |          | —       | The source of the case. Valid values: 1 (Phone), 2 (Email), 3 (Web).        |

***

### `Dynamics365 Dynamicscrm Create Contact`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_CONTACT**

Creates a new contact entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type   | Required | Example | Description                                       |
| -------------------------- | ------ | :------: | ------- | ------------------------------------------------- |
| `user_id`                  | string |          | —       | The user's ID or 'me' for the authenticated user. |
| `jobtitle`                 | string |          | —       | The job title of the contact.                     |
| `lastname`                 | string |          | —       | The last name of the contact.                     |
| `firstname`                | string |          | —       | The first name of the contact.                    |
| `telephone1`               | string |          | —       | The primary telephone number of the contact.      |
| `mobilephone`              | string |          | —       | The mobile phone number of the contact.           |
| `address1_city`            | string |          | —       | The city of the contact's address.                |
| `emailaddress1`            | string |          | —       | The primary email address of the contact.         |
| `address1_country`         | string |          | —       | The country of the contact's address.             |
| `address1_postalcode`      | string |          | —       | The postal code of the contact's address.         |
| `address1_stateorprovince` | string |          | —       | The state or province of the contact's address.   |

***

### `Dynamics365 Dynamicscrm Create Invoice`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_INVOICE**

Creates a new invoice entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                       | Description                                                                             |
| ---------------- | ------ | :------: | ----------------------------- | --------------------------------------------------------------------------------------- |
| `name`           | string |          | `"Invoice #12345"`            | The name or number of the invoice.                                                      |
| `user_id`        | string |          | —                             | The user's ID or 'me' for the authenticated user.                                       |
| `account_id`     | string |          | —                             | A reference to the related account. Format: '/accounts(GUID)'                           |
| `currency_id`    | string |          | —                             | A reference to the currency for the transaction. Format: '/transactioncurrencies(GUID)' |
| `description`    | string |          | `"This is a sample invoice."` | A description of the invoice.                                                           |
| `price_level_id` | string |          | —                             | A reference to the price list. Format: '/pricelevels(GUID)'                             |

***

### `Dynamics365 Dynamicscrm Create Lead`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_LEAD**

Creates a new lead entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                          |
| --------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `subject`       | string |          | —       | A brief description or title for the lead.                                                                                                           |
| `user_id`       | string |          | —       | The user's ID or 'me' for the authenticated user. Set explicitly when creating leads on behalf of other users in multi-user or automated workflows.  |
| `lastname`      | string |          | —       | The last name of the lead.                                                                                                                           |
| `firstname`     | string |          | —       | The first name of the lead.                                                                                                                          |
| `telephone1`    | string |          | —       | The primary telephone number of the lead.                                                                                                            |
| `companyname`   | string |          | —       | The company name associated with the lead. May be enforced as required by some CRM configurations; omitting it can cause the request to be rejected. |
| `emailaddress1` | string |          | —       | The primary email address of the lead.                                                                                                               |

***

### `Dynamics365 Dynamicscrm Create Opportunity`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_OPPORTUNITY**

Creates a new opportunity entity record in Dynamics CRM using the Web API. Some CRM configurations enforce `estimatedclosedate` and a transaction currency at the server level even though they are schema-optional; omitting them may cause the request to be rejected.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example | Description                                                        |
| --------------------- | ------ | :------: | ------- | ------------------------------------------------------------------ |
| `name`                | string |     ✅    | —       | The name or title of the opportunity. This is a required field.    |
| `description`         | string |          | —       | A brief description of the opportunity.                            |
| `estimatedvalue`      | number |          | —       | The anticipated revenue from the opportunity.                      |
| `estimatedclosedate`  | string |          | —       | The expected close date of the opportunity in 'YYYY-MM-DD' format. |
| `customer_account_id` | string |          | —       | The GUID of the related account (without curly braces). Optional.  |
| `customer_contact_id` | string |          | —       | The GUID of the related contact (without curly braces). Optional.  |

***

### `Dynamics365 Dynamicscrm Create Sales Order`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_CREATE\_SALES\_ORDER**

Creates a new sales order entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                             |
| ---------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------- |
| `name`           | string |          | —       | The name of the sales order.                                                            |
| `user_id`        | string |          | —       | The user's ID or 'me' for the authenticated user.                                       |
| `account_id`     | string |          | —       | A reference to the related account. Format: '/accounts(GUID)'                           |
| `currency_id`    | string |          | —       | A reference to the currency for the transaction. Format: '/transactioncurrencies(GUID)' |
| `description`    | string |          | —       | A description of the sales order.                                                       |
| `price_level_id` | string |          | —       | A reference to the price list. Format: '/pricelevels(GUID)'                             |

***

### `Dynamics365 Dynamicscrm Get A Invoice`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_GET\_A\_INVOICE**

Dynamicscrm get a invoice

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                       |
| ------------ | ------ | :------: | ------- | --------------------------------- |
| `invoice_id` | string |     ✅    | —       | The ID of the invoice to retrieve |

***

### `Dynamics365 Dynamicscrm Get A Lead`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_GET\_A\_LEAD**

Dynamicscrm get a lead

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                         |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `lead_id` | string |     ✅    | —       | The ID of the lead to retrieve (GUID format) Use the value exactly as returned by Dynamics CRM tools — do not reformat or truncate. |

***

### `Dynamics365 Dynamicscrm Get All Leads`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_GET\_ALL\_LEADS**

Dynamicscrm get all leads

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                       |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | —       | Maximum number of leads to return                                                                                                                 |
| `skip`    | integer |          | —       | Number of leads to skip for pagination                                                                                                            |
| `filter`  | string  |          | —       | OData filter criteria for leads (e.g., contains(fullname,'John')) Date filters require ISO 8601 format (e.g., createdon gt 2024-01-01T00:00:00Z). |
| `select`  | string  |          | —       | Comma-separated list of fields to return (e.g., fullname,emailaddress1)                                                                           |
| `orderby` | string  |          | —       | Field to order by (e.g., createdon desc)                                                                                                          |

***

### `Dynamics365 Dynamicscrm Update Case`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_UPDATE\_CASE**

Updates an existing case (incident) entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                             |
| -------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------- |
| `title`        | string  |          | —       | The subject or title of the case.                                                       |
| `case_id`      | string  |     ✅    | —       | The unique identifier (GUID) of the case to update.                                     |
| `user_id`      | string  |          | —       | The user's ID or 'me' for the authenticated user.                                       |
| `statuscode`   | integer |          | —       | The current status of the case (e.g., 1 for Active, 2 for In Progress, 3 for Resolved). |
| `description`  | string  |          | —       | A detailed description of the issue or inquiry.                                         |
| `prioritycode` | integer |          | —       | The priority level of the case (e.g., 1 for High, 2 for Normal, 3 for Low).             |

***

### `Dynamics365 Dynamicscrm Update Invoice`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_UPDATE\_INVOICE**

Updates an existing invoice entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                             | Description                                                |
| ------------- | ------ | :------: | --------------------------------------------------- | ---------------------------------------------------------- |
| `name`        | string |          | `"Invoice #12345 - Updated"`                        | The updated name or number of the invoice.                 |
| `duedate`     | string |          | `"2024-12-31"`                                      | The updated due date for the invoice in YYYY-MM-DD format. |
| `user_id`     | string |          | —                                                   | The user's ID or 'me' for the authenticated user.          |
| `invoice_id`  | string |     ✅    | `"00000000-0000-0000-0000-000000000000"`            | The unique identifier (GUID) of the invoice to update.     |
| `description` | string |          | `"This is an updated description for the invoice."` | The updated description of the invoice.                    |
| `totalamount` | number |          | `1500`                                              | The updated total amount for the invoice.                  |

***

### `Dynamics365 Dynamicscrm Update Lead`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_UPDATE\_LEAD**

Updates an existing lead entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                                        |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `lead_id`       | string |     ✅    | —       | The unique identifier (GUID) of the lead to update. Must be passed exactly as returned by Dynamics CRM lookup tools — no added braces or modified dash formatting. |
| `subject`       | string |          | —       | A brief description or title for the lead.                                                                                                                         |
| `user_id`       | string |          | —       | The user's ID or 'me' for the authenticated user.                                                                                                                  |
| `lastname`      | string |          | —       | Last name of the lead.                                                                                                                                             |
| `firstname`     | string |          | —       | First name of the lead.                                                                                                                                            |
| `telephone1`    | string |          | —       | Primary phone number of the lead.                                                                                                                                  |
| `companyname`   | string |          | —       | Name of the company associated with the lead.                                                                                                                      |
| `emailaddress1` | string |          | —       | Primary email address of the lead.                                                                                                                                 |

***

### `Dynamics365 Dynamicscrm Update Opportunity`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_UPDATE\_OPPORTUNITY**

Updates an existing opportunity entity record in Dynamics CRM using the Web API. Some updates may be rejected if required relational fields (e.g., transactioncurrency) are absent from the record, even though they are not exposed as explicit parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                                                                                     |
| ----------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                  | string  |          | —       | The name or title of the opportunity.                                                                                                                                           |
| `user_id`               | string  |          | —       | The user's ID or 'me' for the authenticated user.                                                                                                                               |
| `description`           | string  |          | —       | A brief description of the opportunity.                                                                                                                                         |
| `estimatedvalue`        | number  |          | —       | The anticipated revenue from the opportunity.                                                                                                                                   |
| `opportunity_id`        | string  |     ✅    | —       | The unique identifier (GUID) of the opportunity to update. Use the GUID exactly as returned by CRM lookup or list tools — reformatting the value will cause the update to fail. |
| `salesstagecode`        | integer |          | —       | The current sales stage (e.g., 1 for Qualify, 2 for Develop, 3 for Propose).                                                                                                    |
| `estimatedclosedate`    | string  |          | —       | The expected close date of the opportunity in 'YYYY-MM-DD' format.                                                                                                              |
| `opportunityratingcode` | integer |          | —       | The rating of the opportunity (e.g., 1 for Cold, 2 for Warm, 3 for Hot).                                                                                                        |

***

### `Dynamics365 Dynamicscrm Update Sales Order`

Integration name: **DYNAMICS365\_DYNAMICSCRM\_UPDATE\_SALES\_ORDER**

Updates an existing sales order entity record in Dynamics CRM using the Web API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                                 | Description                                                |
| ---------------- | ------ | :------: | ------------------------------------------------------- | ---------------------------------------------------------- |
| `name`           | string |          | `"Order #12345 - Updated"`                              | The updated name of the sales order.                       |
| `user_id`        | string |          | —                                                       | The user's ID or 'me' for the authenticated user.          |
| `description`    | string |          | `"This is an updated description for the sales order."` | The updated description of the sales order.                |
| `freightamount`  | number |          | `75`                                                    | The updated freight or shipping cost for the order.        |
| `salesorder_id`  | string |     ✅    | `"00000000-0000-0000-0000-000000000000"`                | The unique identifier (GUID) of the sales order to update. |
| `discountamount` | number |          | `15`                                                    | The updated discount amount for the order.                 |

***

### `Dynamics365 Get All Invoices Action`

Integration name: **DYNAMICS365\_GET\_ALL\_INVOICES\_ACTION**

Get all invoices action

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                 |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `top`     | integer |          | —       | Maximum number of invoices to return                                        |
| `skip`    | integer |          | —       | Number of invoices to skip for pagination                                   |
| `filter`  | string  |          | —       | OData filter criteria for invoices (e.g., contains(customerName,'Contoso')) |
| `select`  | string  |          | —       | Comma-separated list of fields to return (e.g., invoiceid,name,totalamount) |
| `orderby` | string  |          | —       | Field to order by (e.g., createdon desc)                                    |

***


# Eventbrite

Your Toolhouse AI Worker can connect to Eventbrite using 95 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](https://toolhouse.app/auth-connections?authkit_slugs=eventbrite).

## Tools (95)

### `Eventbrite Add Ticket To Group`

Integration name: **EVENTBRITE\_ADD\_TICKET\_TO\_GROUP**

Tool to add a ticket class to one or more explicitly specified ticket groups for an Eventbrite event. Use when you need to organize tickets by grouping them together. The caller must supply a non-empty list of ticket\_group\_ids; to discover available groups, call a list ticket groups action first.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example           | Description                                                                                                                                                                                                                             |
| ------------------ | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`         | string |     ✅    | `"1983257485527"` | The ID of the event containing the ticket class and ticket groups.                                                                                                                                                                      |
| `ticket_class_id`  | string |     ✅    | `"3420791486"`    | The ID of the ticket class to add to ticket groups.                                                                                                                                                                                     |
| `ticket_group_ids` | array  |     ✅    | `["1762587"]`     | Non-empty list of ticket group IDs to add the ticket class to. Each ID must correspond to an existing ticket group. To discover available ticket group IDs, call a list ticket groups action first and pass the desired IDs explicitly. |

***

### `Eventbrite Add Ticket To Group By Organization`

Integration name: **EVENTBRITE\_ADD\_TICKET\_TO\_GROUP\_BY\_ORGANIZATION**

Tool to add a ticket class to ticket groups using organization and event IDs. Use when managing ticket groups at the organization level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example           | Description                                                                                                                        |
| ------------------ | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`         | string |     ✅    | `"1983257485527"` | The ID of the event containing the ticket class and ticket groups.                                                                 |
| `organization_id`  | string |     ✅    | `"2054240262773"` | The ID of the organization that owns the event.                                                                                    |
| `ticket_class_id`  | string |     ✅    | `"3420791486"`    | The ID of the ticket class to add to ticket groups.                                                                                |
| `ticket_group_ids` | array  |     ✅    | `["1762587"]`     | Array of ticket group IDs to add the ticket class to. If empty array is provided, removes the ticket class from all ticket groups. |

***

### `Eventbrite Calculate Price For Item`

Integration name: **EVENTBRITE\_CALCULATE\_PRICE\_FOR\_ITEM**

Tool to calculate Eventbrite fees for a given ticket price. Use when you need to determine the exact fees, taxes, and organizer share for a specific price point before creating tickets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                                                                                            |
| ------------ | ------ | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`      | object |     ✅    | —            | Scope configuration defining the context for pricing calculation (organization or event level).                                        |
| `country`    | string |     ✅    | `"US"`       | Two-letter ISO 3166-1 alpha-2 country code for the pricing calculation.                                                                |
| `base_price` | string |     ✅    | `"USD,1000"` | Price in format 'CURRENCY,amount\_in\_cents' where amount is in minor units (e.g., cents for USD). Example: 'USD,1000' for $10.00 USD. |

***

### `Eventbrite Cancel Event`

Integration name: **EVENTBRITE\_CANCEL\_EVENT**

Tool to cancel an Eventbrite event. Use when you need to cancel an event. Note: Event must not have any pending or completed orders or the cancellation will fail.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                         |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257556740"` | The ID of the event to cancel. Event must not have any pending or completed orders. |

***

### `Eventbrite Copy Event`

Integration name: **EVENTBRITE\_COPY\_EVENT**

Tool to copy an Eventbrite event and create a duplicate with a new Event ID. Use when you need to duplicate an existing event to create a similar event with the same settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                         |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257552728"` | The ID of the event to copy. A duplicate event will be created with a new Event ID. |

***

### `Eventbrite Create Access Code`

Integration name: **EVENTBRITE\_CREATE\_ACCESS\_CODE**

Tool to create a new access code for an Eventbrite event. Use when you need to create promotional codes, early bird access, or VIP ticket codes that unlock hidden ticket classes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                                         |
| ------------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `event_id`    | string |     ✅    | `"1983257485527"` | The ID of the event to create an access code for.                                   |
| `access_code` | object |     ✅    | —                 | Access code configuration including code string, ticket IDs, and optional settings. |

***

### `Eventbrite Create Checkout Settings`

Integration name: **EVENTBRITE\_CREATE\_CHECKOUT\_SETTINGS**

Tool to create checkout settings for an Eventbrite organization. Use when you need to configure payment methods, country, and currency for an organization's checkout process.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example           | Description                                                                                 |
| ------------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------- |
| `organization_id`   | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to create checkout settings for.                  |
| `checkout_settings` | object |     ✅    | —                 | Checkout settings configuration including checkout method, country code, and currency code. |

***

### `Eventbrite Create Custom Question`

Integration name: **EVENTBRITE\_CREATE\_CUSTOM\_QUESTION**

Tool to create a custom question for an Eventbrite event. Use when you need to collect additional information from attendees during registration (e.g., dietary preferences, T-shirt sizes, special requirements).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                               |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257573791"` | The ID of the event to create the custom question for.                                    |
| `question` | object |     ✅    | —                 | Question object containing the question configuration including text, type, and settings. |

***

### `Eventbrite Create Discount`

Integration name: **EVENTBRITE\_CREATE\_DISCOUNT**

Tool to create a new discount for an Eventbrite organization. Use when you need to create promotional discounts, coupon codes, or special pricing for events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                       |
| ----------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------- |
| `discount`        | object |     ✅    | —                 | Discount configuration including type, code, discount amount, and other settings. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to create the discount for.             |

***

### `Eventbrite Create Event`

Integration name: **EVENTBRITE\_CREATE\_EVENT**

Tool to create a new Eventbrite event. Use when you need to create single events or series parent events for repeating events. By default creates a single occurrence event unless is\_series is set to true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                           |
| ----------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------------- |
| `event`           | object |     ✅    | —                 | Event data containing all required and optional fields for creating the event.                                        |
| `organization_id` | string |     ✅    | `"2054240262773"` | The organization ID under which to create the event. Use LIST\_USER\_ORGANIZATIONS to retrieve your organization IDs. |

***

### `Eventbrite Create Event Schedule`

Integration name: **EVENTBRITE\_CREATE\_EVENT\_SCHEDULE**

Tool to create an event schedule for a series parent event. Use when you need to add recurring occurrences to an event based on a recurrence pattern (daily, weekly, monthly, etc.). The schedule follows iCalendar RFC 5545 format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                                        |
| ---------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257609899"` | The ID of the series parent event to create a schedule for. This must be a series parent event that can have multiple occurrences. |
| `schedule` | object |     ✅    | —                 | Schedule configuration including occurrence duration and recurrence rule following iCalendar RFC 5545 standard.                    |

***

### `Eventbrite Create Inventory Tier`

Integration name: **EVENTBRITE\_CREATE\_INVENTORY\_TIER**

Tool to create a new inventory tier for an Eventbrite event. Use when you need to set up tiered seating, pricing levels, or capacity allocation for an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                                                                                           |
| ---------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------------- |
| `event_id`       | string |     ✅    | `"1983257453431"` | The ID of the event to create an inventory tier for.                                                                  |
| `inventory_tier` | object |     ✅    | —                 | Inventory tier configuration including name and optional settings for capacity, color, and ticket class associations. |

***

### `Eventbrite Create Organizer`

Integration name: **EVENTBRITE\_CREATE\_ORGANIZER**

Tool to create a new organizer for an Eventbrite organization. Use when you need to add an organizer profile that can be associated with events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                          |
| ----------------- | ------ | :------: | ----------------- | -------------------------------------------------------------------- |
| `organizer`       | object |     ✅    | —                 | Organizer configuration including name and optional profile details. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The ID of the organization under which to create the organizer.      |

***

### `Eventbrite Create Ticket Class`

Integration name: **EVENTBRITE\_CREATE\_TICKET\_CLASS**

Tool to create a new ticket class for an Eventbrite event. Use when you need to add ticket types such as General Admission, VIP, Early Bird, or other pricing tiers to an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                          |
| -------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------ |
| `event_id`     | string |     ✅    | `"1983257611905"` | The ID of the event to create a ticket class for.                                    |
| `ticket_class` | object |     ✅    | —                 | Ticket class configuration including name, pricing, quantity, and optional settings. |

***

### `Eventbrite Create Ticket Group`

Integration name: **EVENTBRITE\_CREATE\_TICKET\_GROUP**

Tool to create a new ticket group for an Eventbrite organization. Use when you need to organize multiple ticket classes across events. Maximum 300 live ticket groups per organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                    |
| ----------------- | ------ | :------: | ----------------- | -------------------------------------------------------------- |
| `ticket_group`    | object |     ✅    | —                 | Ticket group configuration including name and optional status. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The ID of the organization to create the ticket group for.     |

***

### `Eventbrite Create Tracking Beacon`

Integration name: **EVENTBRITE\_CREATE\_TRACKING\_BEACON**

Tool to create a tracking beacon for an Eventbrite event or user. Use when you need to add analytics pixels (Google Analytics, Facebook Pixel, etc.) to track attendee behavior on event pages or order confirmation pages. Either event\_id or user\_id must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                                                                      |
| --------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`       | string |          | `"123456789"`        | The user identifier to assign the beacon to all events by that user. Either event\_id or user\_id must be provided. If user\_id is specified, the beacon will fire for all events owned by that user.            |
| `event_id`      | string |          | `"1983257594854"`    | The event identifier where the tracking beacon will execute. Either event\_id or user\_id must be provided. If event\_id is specified, the beacon will only fire for that specific event.                        |
| `pixel_id`      | string |          | `"UA-12345678-1"`    | The Pixel ID given by the third party that will fire when an attendee lands on the page you are tracking. Required for most tracking types (e.g., UA-12345678-1 for Google Analytics, or pixel ID for Facebook). |
| `triggers`      | object |          | —                    | Additional pixel configuration data determining which page fires the tracking pixel. This is an optional object containing trigger settings like page types (order confirmation, event page, etc.).              |
| `tracking_type` | string |     ✅    | `"Google Analytics"` | The tracking pixel third party type. Must be one of: Facebook Pixel, Twitter Ads, AdWords, Google Analytics, Simple Image Pixel, or Adroll iPixel.                                                               |

***

### `Eventbrite Create Venue`

Integration name: **EVENTBRITE\_CREATE\_VENUE**

Tool to create a new venue under an organization in Eventbrite. Use when you need to add a physical location that can be reused across multiple events within the same organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                    |
| ----------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `venue`           | object |     ✅    | —                 | Venue configuration including name and complete address details.                                                               |
| `organization_id` | string |     ✅    | `"2054240262773"` | The ID of the organization to create the venue under. Venues are organization-scoped and can be reused across multiple events. |

***

### `Eventbrite Create Webhook`

Integration name: **EVENTBRITE\_CREATE\_WEBHOOK**

Tool to create a new webhook for an Eventbrite organization. Use when you need to set up webhook notifications for events like order placement, event creation, or attendee check-ins.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                               | Description                                                                                                                                                                          |
| ----------------- | ------ | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `actions`         | string |     ✅    | `"order.placed"`                      | Comma-separated list of webhook action types to subscribe to (e.g., 'order.placed', 'event.created', 'attendee.checked\_in'). Multiple actions can be specified separated by commas. |
| `event_id`        | string |          | `"1983257485527"`                     | Optional event ID to subscribe to webhooks for a specific event. If not provided, webhook will apply to all events in the organization.                                              |
| `endpoint_url`    | string |     ✅    | `"https://webhook.site/test-webhook"` | The URL where webhook notifications will be sent. Must be a valid HTTPS endpoint that can receive POST requests.                                                                     |
| `organization_id` | string |     ✅    | `"2054240262773"`                     | The organization ID to create the webhook for.                                                                                                                                       |

***

### `Eventbrite Delete Default Question`

Integration name: **EVENTBRITE\_DELETE\_DEFAULT\_QUESTION**

Tool to deactivate a canned question for an event. Use when you need to remove default questions like cell\_phone, job\_title, company, or work\_phone from event registration forms.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                                                                               |
| ------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `event_id`    | string |     ✅    | `"1983257485527"` | The ID of the event to delete the canned question from.                                                                   |
| `question_id` | string |     ✅    | `"cell_phone"`    | The ID of the canned question to deactivate. Common values include 'cell\_phone', 'job\_title', 'company', 'work\_phone'. |

***

### `Eventbrite Delete Discount`

Integration name: **EVENTBRITE\_DELETE\_DISCOUNT**

Tool to delete a discount from Eventbrite. Only unused discounts can be deleted. Use when you need to remove a discount that has not been applied to any orders.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example        | Description                                                             |
| ------------- | ------ | :------: | -------------- | ----------------------------------------------------------------------- |
| `discount_id` | string |     ✅    | `"1275929337"` | The ID of the discount to delete. Only unused discounts can be deleted. |

***

### `Eventbrite Delete Event`

Integration name: **EVENTBRITE\_DELETE\_EVENT**

Tool to delete an Eventbrite event. Use when you need to remove an event from the system. Note: Event must not have any pending or completed orders or the deletion will fail.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                         |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257409299"` | The ID of the event to delete. Event must not have any pending or completed orders. |

***

### `Eventbrite Delete Inventory Tier`

Integration name: **EVENTBRITE\_DELETE\_INVENTORY\_TIER**

Tool to mark an existing inventory tier as deleted for an Eventbrite event. Use when you need to remove an inventory tier that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example           | Description                                                                 |
| ------------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------- |
| `event_id`          | string |     ✅    | `"1983257401275"` | The unique identifier of the event containing the inventory tier to delete. |
| `inventory_tier_id` | string |     ✅    | `"140520029"`     | The unique identifier of the inventory tier to delete.                      |

***

### `Eventbrite Delete Ticket Class`

Integration name: **EVENTBRITE\_DELETE\_TICKET\_CLASS**

Tool to delete a ticket class from an Eventbrite event by its ID. Use when you need to remove a ticket type/class that is no longer needed or was created in error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                               |
| ----------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------- |
| `event_id`        | string |     ✅    | `"1983257401275"` | The unique identifier of the event containing the ticket class to delete. |
| `ticket_class_id` | string |     ✅    | `"3420791311"`    | The unique identifier of the ticket class to delete.                      |

***

### `Eventbrite Delete Ticket Group`

Integration name: **EVENTBRITE\_DELETE\_TICKET\_GROUP**

Tool to delete a ticket group by changing its status to deleted. Use when you need to remove a ticket group from an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example     | Description                           |
| ----------------- | ------ | :------: | ----------- | ------------------------------------- |
| `ticket_group_id` | string |     ✅    | `"1762586"` | The ID of the ticket group to delete. |

***

### `Eventbrite Get Access Code`

Integration name: **EVENTBRITE\_GET\_ACCESS\_CODE**

Tool to retrieve a specific access code by ID for an Eventbrite event. Use when you need to check access code details, availability, or redemption status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                          |
| ---------------- | ------ | :------: | ----------------- | ---------------------------------------------------- |
| `event_id`       | string |     ✅    | `"1983257401275"` | The ID of the event that the access code belongs to. |
| `access_code_id` | string |     ✅    | `"1275929349"`    | The ID of the access code to retrieve.               |

***

### `Eventbrite Get Assortment`

Integration name: **EVENTBRITE\_GET\_ASSORTMENT**

Tool to retrieve assortment information for a specific organization. Use when you need to check the plan type or version details associated with an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                           |
| ----------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------- |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to retrieve assortment for. |

***

### `Eventbrite Get Attendee Report`

Integration name: **EVENTBRITE\_GET\_ATTENDEE\_REPORT**

Tool to retrieve an attendee report for events in an Eventbrite organization. Use when you need aggregated attendee data, sales statistics, or demographic information across events. Supports filtering by event status, date ranges, and grouping by various dimensions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example              | Description                                                                                                                                                 |
| ----------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `period`          | integer |          | `1`                  | Time period in selected units for grouping data. Used in conjunction with date\_facet to define reporting intervals.                                        |
| `end_date`        | string  |          | `"2024-12-31"`       | Filter events by end date in ISO 8601 format (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ).                                                                          |
| `group_by`        | string  |          | `"payment_method"`   | Group report data by specific field: payment\_method, ticket, currency, event\_currency, country, city, state, source, zone, location, or delivery\_method. |
| `timezone`        | string  |          | `"America/New_York"` | Timezone for date calculations (e.g., 'America/New\_York', 'UTC'). Defaults to the first event's timezone if not specified.                                 |
| `event_ids`       | string  |     ✅    | `"123456789"`        | Comma-separated list of event IDs to generate the attendee reports for. Required parameter to specify which events to include in the report.                |
| `filter_by`       | string  |          | —                    | Filter specification for report data. Allows custom filtering criteria based on attendee or event attributes.                                               |
| `date_facet`      | string  |          | —                    | Date period options for grouping report data.                                                                                                               |
| `start_date`      | string  |          | `"2024-01-01"`       | Filter events by start date in ISO 8601 format (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ).                                                                        |
| `event_status`    | string  |          | —                    | Event status filter options for attendee reports.                                                                                                           |
| `organization_id` | string  |     ✅    | `"2054240262773"`    | The organization ID to retrieve the attendee report for.                                                                                                    |

***

### `Eventbrite Get Capacity Tier`

Integration name: **EVENTBRITE\_GET\_CAPACITY\_TIER**

Tool to retrieve the capacity tier for an Eventbrite event. Use when you need to check ticket availability, sales status, or capacity information for an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                    |
| ---------- | ------ | :------: | ----------------- | -------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257401275"` | The ID of the event to retrieve capacity tier information for. |

***

### `Eventbrite Get Category`

Integration name: **EVENTBRITE\_GET\_CATEGORY**

Tool to retrieve a specific category by ID. Use when fetching details about a particular event category. Returns category information including name, localized names, and subcategories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                           |
| ------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------- |
| `category_id` | string |     ✅    | `"103"` | The ID of the category to retrieve. Common IDs include 103 (Music), 101 (Business), 104 (Networking). |

***

### `Eventbrite Get Checkout Settings`

Integration name: **EVENTBRITE\_GET\_CHECKOUT\_SETTINGS**

Tool to retrieve checkout settings for a specific Eventbrite organization. Use when you need to view or verify payment configuration and checkout methods for an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                  |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------- |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to retrieve checkout settings for. |

***

### `Eventbrite Get Default Question`

Integration name: **EVENTBRITE\_GET\_DEFAULT\_QUESTION**

Tool to retrieve a specific default (canned) question for an Eventbrite event by Event ID and Question ID. Use when you need to get details about a specific attendee information field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                                                                                                                                                                                                                        |
| ------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `event_id`    | string |     ✅    | `"1983257401275"` | The Event ID to retrieve the default question for.                                                                                                                                                                                                                 |
| `question_id` | string |     ✅    | `"first_name"`    | The ID of the canned question to retrieve (e.g., first\_name, last\_name, email, company, prefix, suffix, age, job\_title, website, blog, gender, birth\_date, cell\_phone, home\_phone, work\_phone, ship\_address, bill\_address, home\_address, work\_address). |

***

### `Eventbrite Get Discount`

Integration name: **EVENTBRITE\_GET\_DISCOUNT**

Tool to retrieve a discount by its ID from Eventbrite. Use when you need to check discount details, verify discount codes, or inspect discount configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example        | Description                         |
| ------------- | ------ | :------: | -------------- | ----------------------------------- |
| `discount_id` | string |     ✅    | `"1275929350"` | The ID of the discount to retrieve. |

***

### `Eventbrite Get Display Settings`

Integration name: **EVENTBRITE\_GET\_DISPLAY\_SETTINGS**

Tool to retrieve display settings for a specific Eventbrite event. Use when you need to view what information is shown on an event page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                           |
| ---------- | ------ | :------: | ----------------- | --------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257403281"` | The unique identifier for the event to retrieve display settings for. |

***

### `Eventbrite Get Event`

Integration name: **EVENTBRITE\_GET\_EVENT**

Tool to retrieve detailed information for a specific Eventbrite event by ID. Use when you need event details like name, description, dates, venue, organizer, or ticket information. Supports expanding related objects via the expand parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example             | Description                                                                                                                               |
| ---------- | ------ | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`   | string |          | `"organizer,venue"` | Comma-separated list of fields to expand in the response. Common values: 'organizer', 'venue', 'ticket\_classes', 'ticket\_availability'. |
| `event_id` | string |     ✅    | `"1983257401275"`   | The unique identifier of the event to retrieve.                                                                                           |

***

### `Eventbrite Get Event Categories`

Integration name: **EVENTBRITE\_GET\_EVENT\_CATEGORIES**

Tool to retrieve event categories. Use when selecting a category for an event. Localizes results via optional locale parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                                       |
| --------- | ------ | :------: | --------- | ----------------------------------------------------------------- |
| `locale`  | string |          | `"en_US"` | Return categories in this locale (BCP-47 format), e.g., 'en\_US'. |

***

### `Eventbrite Get Event Description`

Integration name: **EVENTBRITE\_GET\_EVENT\_DESCRIPTION**

Tool to retrieve the full HTML description for an Eventbrite event. Use when you need the complete event description content (formatted as HTML).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                 |
| ---------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257401275"` | The unique identifier for the event whose description you want to retrieve. |

***

### `Eventbrite Get Event Formats`

Integration name: **EVENTBRITE\_GET\_EVENT\_FORMATS**

Tool to list event formats. Use when you need the available formats before creating or updating an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Eventbrite Get Event Subcategories`

Integration name: **EVENTBRITE\_GET\_EVENT\_SUBCATEGORIES**

Tool to list all event subcategories. Use when fetching available subcategory options, optionally filtered by locale after selecting a category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                                          |
| --------- | ------ | :------: | --------- | -------------------------------------------------------------------- |
| `locale`  | string |          | `"en_US"` | Return subcategories in this locale (BCP-47 format), e.g., 'en\_US'. |

***

### `Eventbrite Get Format`

Integration name: **EVENTBRITE\_GET\_FORMAT**

Tool to retrieve a format by format ID. Use when you need detailed information about a specific event format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                  |
| ----------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `format_id` | string |     ✅    | `"1"`   | The unique identifier for the format to retrieve. Example values: 1 (Conference), 2, 3, etc. |

***

### `Eventbrite Get Inventory Tier`

Integration name: **EVENTBRITE\_GET\_INVENTORY\_TIER**

Tool to retrieve an Inventory Tier by ID for an Event. Use when you need to check inventory tier details, capacity, or ticket class associations for a specific event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example           | Description                               |
| ------------------- | ------ | :------: | ----------------- | ----------------------------------------- |
| `event_id`          | string |     ✅    | `"1983257453431"` | The ID of the event.                      |
| `inventory_tier_id` | string |     ✅    | `"140520031"`     | The ID of the inventory tier to retrieve. |

***

### `Eventbrite Get Me`

Integration name: **EVENTBRITE\_GET\_ME**

Tool to retrieve the authenticated user's account information. Use when you need to get details about the current user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Eventbrite Get Media Upload`

Integration name: **EVENTBRITE\_GET\_MEDIA\_UPLOAD**

Tool to retrieve information on a Media image upload. Use when you need to check the status or details of an uploaded media image for events, organizers, or user profiles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                       |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------- |
| `type`    | string |     ✅    | `"image-event-logo"` | Type of image upload to retrieve information for. Specifies the category of media being uploaded. |

***

### `Eventbrite Get Organizer`

Integration name: **EVENTBRITE\_GET\_ORGANIZER**

Tool to retrieve an organizer by organizer ID from Eventbrite. Use when you need detailed information about a specific event organizer.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example         | Description                                         |
| -------------- | ------ | :------: | --------------- | --------------------------------------------------- |
| `organizer_id` | string |     ✅    | `"80676629733"` | The unique identifier of the organizer to retrieve. |

***

### `Eventbrite Get Sales Report`

Integration name: **EVENTBRITE\_GET\_SALES\_REPORT**

Tool to retrieve a sales report by Event ID or Event status for an organization. Use when you need detailed sales data including gross revenue, net revenue, quantity sold, fees, and royalties. Supports filtering by event status and grouping by various dimensions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                 | Description                                                             |
| ----------------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------- |
| `group_by`        | string |          | `"payment_method"`      | Data grouping options. Comma-separated list of grouping criteria.       |
| `timezone`        | string |          | `"America/New_York"`    | Event timezone; defaults to first event's timezone if unspecified.      |
| `event_ids`       | string |     ✅    | `"1983257485527"`       | Comma-separated list of event IDs to generate sales reports for.        |
| `filter_by`       | string |          | `"payment_method:cash"` | Filter specification; multiple filters supported.                       |
| `date_facet`      | string |          | —                       | Date period type for grouping sales data.                               |
| `event_status`    | string |          | —                       | Valid event status values for filtering.                                |
| `organization_id` | string |     ✅    | `"2054240262773"`       | The unique identifier of the organization to retrieve sales report for. |

***

### `Eventbrite Get Series`

Integration name: **EVENTBRITE\_GET\_SERIES**

Tool to retrieve a parent Event Series by Event Series ID. Use when fetching details about a specific event series, including series-specific fields like is\_series and is\_series\_parent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example           | Description                                                                                        |
| ----------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------------- |
| `series_id` | string |     ✅    | `"1983257526650"` | The ID of the event series to retrieve. This is the same as the event ID for series parent events. |

***

### `Eventbrite Get Structured Content`

Integration name: **EVENTBRITE\_GET\_STRUCTURED\_CONTENT**

Tool to retrieve structured content for an Eventbrite event. Returns the latest published version of the event's structured content including modules, widgets, and page metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                             |
| ---------- | ------ | :------: | ----------------- | ------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257401275"` | The ID of the event to retrieve structured content for. |

***

### `Eventbrite Get Structured Content Edit`

Integration name: **EVENTBRITE\_GET\_STRUCTURED\_CONTENT\_EDIT**

Tool to retrieve the latest working version of structured content for an event. Use when accessing the editable version of an event's structured content layout.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                             |
| ---------- | ------ | :------: | ----------------- | ------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257401275"` | The ID of the event to retrieve structured content for. |

***

### `Eventbrite Get Subcategory`

Integration name: **EVENTBRITE\_GET\_SUBCATEGORY**

Tool to retrieve a specific subcategory by ID. Use when fetching details about a particular event subcategory. Returns subcategory information including name, localized names, and parent category details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example  | Description                                                                   |
| ---------------- | ------ | :------: | -------- | ----------------------------------------------------------------------------- |
| `subcategory_id` | string |     ✅    | `"1001"` | The ID of the subcategory to retrieve. Example values: 1001, 1002, 2001, etc. |

***

### `Eventbrite Get Ticket Class`

Integration name: **EVENTBRITE\_GET\_TICKET\_CLASS**

Tool to retrieve a specific ticket class by ID for an Eventbrite event. Use when you need to check ticket pricing, availability, sales status, or configuration details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                               |
| ----------------- | ------ | :------: | ----------------- | ----------------------------------------- |
| `event_id`        | string |     ✅    | `"1983257405287"` | The Event ID containing the ticket class. |
| `ticket_class_id` | string |     ✅    | `"3420791372"`    | The Ticket Class ID to retrieve.          |

***

### `Eventbrite Get Ticket Group`

Integration name: **EVENTBRITE\_GET\_TICKET\_GROUP**

Tool to retrieve a ticket group by its ID from Eventbrite. Use when you need to check ticket group details, configuration, or associated event ticket mappings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example     | Description                             |
| ----------------- | ------ | :------: | ----------- | --------------------------------------- |
| `ticket_group_id` | string |     ✅    | `"1762587"` | The ID of the ticket group to retrieve. |

***

### `Eventbrite Get Tracking Beacon`

Integration name: **EVENTBRITE\_GET\_TRACKING\_BEACON**

Tool to retrieve a tracking beacon by ID from Eventbrite. Use when you need to inspect tracking pixel configuration, verify beacon setup, or check which events or organizations are associated with a tracking beacon.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example     | Description                                |
| -------------------- | ------ | :------: | ----------- | ------------------------------------------ |
| `tracking_beacon_id` | string |     ✅    | `"7157622"` | The ID of the tracking beacon to retrieve. |

***

### `Eventbrite Get User`

Integration name: **EVENTBRITE\_GET\_USER**

Tool to retrieve information about a user by user ID. Use 'me' as the user\_id to get the currently authenticated user's details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                           |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------- |
| `user_id` | string |     ✅    | `"me"`  | The unique identifier of the user to retrieve. Use 'me' to retrieve the currently authenticated user. |

***

### `Eventbrite Get Venue`

Integration name: **EVENTBRITE\_GET\_VENUE**

Tool to retrieve detailed information for a specific venue by venue ID. Use when you need venue details like name, location coordinates, capacity, address, or age restrictions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example       | Description                                     |
| ---------- | ------ | :------: | ------------- | ----------------------------------------------- |
| `venue_id` | string |     ✅    | `"296454503"` | The unique identifier of the venue to retrieve. |

***

### `Eventbrite List Access Codes`

Integration name: **EVENTBRITE\_LIST\_ACCESS\_CODES**

Tool to retrieve all access codes for an Eventbrite event. Use when you need to view all available access codes, check their availability, or manage event access restrictions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                        |
| -------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"1983257401275"` | The ID of the event to retrieve access codes for.                                                                                  |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Custom Questions`

Integration name: **EVENTBRITE\_LIST\_CUSTOM\_QUESTIONS**

Tool to retrieve custom questions configured for an Eventbrite event. Use when you need to see what additional information is collected from attendees during registration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example       | Description                                                                                                                        |
| -------------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"123456789"` | The ID of the event to list custom questions for.                                                                                  |
| `continuation` | string |          | —             | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Default Questions`

Integration name: **EVENTBRITE\_LIST\_DEFAULT\_QUESTIONS**

Tool to retrieve default (canned) questions for an Eventbrite event by Event ID. Use when you need to understand what attendee information is collected, customize registration forms, or sync form data with external systems.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                 | Description                                                                                                                                       |
| -------------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"1983257401275"`       | The Event ID to retrieve default questions for.                                                                                                   |
| `continuation` | string |          | `"dXNlcjpVMEc5V0ZYTlo"` | Continuation token for pagination. Pass the value from the previous response's pagination.continuation field to fetch the next page of questions. |

***

### `Eventbrite List Event Attendees`

Integration name: **EVENTBRITE\_LIST\_EVENT\_ATTENDEES**

Tool to retrieve the list of attendees for an Eventbrite event. Use when you need to check attendee details, perform check-in operations, sync with CRM, or generate reports. Returns paginated results; use the continuation token for subsequent pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                  | Description                                                                                                                                       |
| --------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status`        | string |          | `"attending"`            | Filter attendees by status. Common values include 'attending', 'not\_attending', or 'cancelled'.                                                  |
| `event_id`      | string |     ✅    | `"123456789"`            | The event ID to retrieve attendees for.                                                                                                           |
| `continuation`  | string |          | `"dXNlcjpVMEc5V0ZYTlo"`  | Continuation token for pagination. Pass the value from the previous response's pagination.continuation field to fetch the next page of attendees. |
| `changed_since` | string |          | `"2024-01-01T00:00:00Z"` | Filter attendees to only those changed since the specified ISO 8601 timestamp.                                                                    |

***

### `Eventbrite List Event Orders`

Integration name: **EVENTBRITE\_LIST\_EVENT\_ORDERS**

Tool to list orders for a specific Eventbrite event. Use when you need to retrieve order information, check order status, or access buyer details. Returns paginated results; use the continuation token for subsequent pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                  | Description                                                                                                                                    |
| ------------------------- | ------ | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`                  | string |          | `"attendees"`            | Comma-separated list of fields to expand in the response. Examples: 'attendees', 'event'.                                                      |
| `status`                  | string |          | `"active"`               | Filter orders by status. Common values: 'active', 'inactive', 'all', 'all\_not\_deleted'.                                                      |
| `event_id`                | string |     ✅    | `"1983257452428"`        | The ID of the event to retrieve orders for.                                                                                                    |
| `only_emails`             | string |          | `"user@example.com"`     | Filter orders by specific email addresses (comma-separated).                                                                                   |
| `continuation`            | string |          | `"dXNlcjpVMEc5V0ZYTlo"`  | Continuation token for pagination. Pass the value from the previous response's pagination.continuation field to fetch the next page of orders. |
| `changed_since`           | string |          | `"2024-01-01T00:00:00Z"` | Filter orders to only those changed since the specified ISO 8601 timestamp.                                                                    |
| `exclude_emails`          | string |          | `"spam@example.com"`     | Exclude orders by specific email addresses (comma-separated).                                                                                  |
| `refund_request_statuses` | string |          | `"completed"`            | Filter by refund request status. Values: 'completed', 'pending', 'outside\_policy', 'disputed', 'denied'.                                      |

***

### `Eventbrite List Inventory Tiers`

Integration name: **EVENTBRITE\_LIST\_INVENTORY\_TIERS**

Tool to retrieve inventory tiers for an Eventbrite event. Use when you need to understand tiered seating, pricing levels, or capacity allocation for an event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                        |
| -------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"1983257401275"` | The ID of the event to list inventory tiers for.                                                                                   |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Organization Events`

Integration name: **EVENTBRITE\_LIST\_ORGANIZATION\_EVENTS**

Tool to list events owned by a specific Eventbrite organization. Use for event discovery (finding target events by name/title/date) prior to attendee/order retrieval. Supports filtering by status, time period, pagination, and field expansion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                 | Description                                                                                                                        |
| ----------------- | ------- | :------: | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `expand`          | string  |          | `"organizer,venue"`     | Comma-separated list of fields to expand in the response. Examples: 'organizer', 'venue', 'ticket\_classes'.                       |
| `status`          | string  |          | `"live"`                | Filter events by status. Common values: 'live', 'draft', 'canceled', 'started', 'ended', 'completed', 'all'.                       |
| `order_by`        | string  |          | `"start_asc"`           | Order results by field. Common values: 'start\_asc', 'start\_desc', 'created\_asc', 'created\_desc', 'name\_asc', 'name\_desc'.    |
| `page_size`       | integer |          | `50`                    | Number of events to return per page. Maximum varies by API limits.                                                                 |
| `time_filter`     | string  |          | `"current_future"`      | Filter events by time period. Examples: 'current\_future', 'past'.                                                                 |
| `continuation`    | string  |          | `"dXNlcjoxMjM0NTY3ODk"` | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string  |     ✅    | `"123456789"`           | The unique identifier of the organization whose events to list.                                                                    |

***

### `Eventbrite List Organization Members`

Integration name: **EVENTBRITE\_LIST\_ORGANIZATION\_MEMBERS**

Tool to list members of an Eventbrite organization by organization ID. Returns a paginated response with member information including user IDs and role summaries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The ID of the organization to list members for.                                                                                    |

***

### `Eventbrite List Organization Orders`

Integration name: **EVENTBRITE\_LIST\_ORGANIZATION\_ORDERS**

Tool to list orders placed for events owned by a specific Eventbrite organization. Use when you need to retrieve order information, track sales, or analyze attendee data across all organization events. Supports filtering by email, status, and change date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                  | Description                                                                                                                        |
| ----------------- | ------ | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- |
| `status`          | string |          | `"active"`               | Filter orders by status. Common values include 'active', 'cancelled', 'refunded'.                                                  |
| `only_emails`     | string |          | `"user@example.com"`     | Filter orders by specific email address. Only orders from this email will be returned.                                             |
| `continuation`    | string |          | —                        | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `changed_since`   | string |          | `"2024-01-01T00:00:00Z"` | Filter orders to only those changed since the specified ISO 8601 timestamp.                                                        |
| `organization_id` | string |     ✅    | `"2054240262773"`        | The unique identifier of the organization to list orders for.                                                                      |

***

### `Eventbrite List Organization Roles`

Integration name: **EVENTBRITE\_LIST\_ORGANIZATION\_ROLES**

Tool to list roles within a specific Eventbrite organization by organization ID. Use when you need to discover available roles, permissions, or role management capabilities for an organization. Returns a paginated list of roles with their permissions and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                    |
| ----------------- | ------ | :------: | ----------------- | -------------------------------------------------------------- |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization whose roles to list. |

***

### `Eventbrite List Organization Webhooks`

Integration name: **EVENTBRITE\_LIST\_ORGANIZATION\_WEBHOOKS**

Tool to list all webhooks configured for a specific Eventbrite organization. Use when you need to view existing webhook configurations or verify webhook endpoints.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization whose webhooks to list.                                                                  |

***

### `Eventbrite List Org Attendees`

Integration name: **EVENTBRITE\_LIST\_ORG\_ATTENDEES**

Tool to list attendees across all events owned by an Eventbrite organization. Use when you need to retrieve attendees for an entire organization rather than a specific event. Returns paginated results; use the continuation token for subsequent pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                  | Description                                                                                                                                       |
| ----------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status`          | string |          | `"attending"`            | Filter attendees by status. Common values include 'attending', 'not\_attending', or 'cancelled'.                                                  |
| `continuation`    | string |          | `"dXNlcjpVMEc5V0ZYTlo"`  | Continuation token for pagination. Pass the value from the previous response's pagination.continuation field to fetch the next page of attendees. |
| `changed_since`   | string |          | `"2024-01-01T00:00:00Z"` | Filter attendees to only those changed since the specified ISO 8601 timestamp.                                                                    |
| `organization_id` | string |     ✅    | `"2054240262773"`        | The organization ID to list attendees for. Retrieves attendees across all events owned by this organization.                                      |

***

### `Eventbrite List Org Organizers`

Integration name: **EVENTBRITE\_LIST\_ORG\_ORGANIZERS**

Tool to list organizers belonging to a specific Eventbrite organization. Use when you need to discover organizers for an organization before creating or managing events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example       | Description                                                                                                                        |
| ----------------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | —             | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"123456789"` | The unique identifier of the organization whose organizers to list.                                                                |

***

### `Eventbrite List Org Venues`

Integration name: **EVENTBRITE\_LIST\_ORG\_VENUES**

Tool to list venues owned by a specific Eventbrite organization. Use when you need to discover available venues for event planning or venue management within an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization whose venues to list.                                                                    |

***

### `Eventbrite List Pricing`

Integration name: **EVENTBRITE\_LIST\_PRICING**

Tool to list available pricing fee rates for a specific currency and country. Use when you need to retrieve Eventbrite's pricing structure and fee information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                        |
| ---------- | ------ | :------: | ------- | -------------------------------------------------- |
| `country`  | string |     ✅    | `"US"`  | ISO 3166-1 alpha-2 country code (e.g., US, GB, DE) |
| `currency` | string |     ✅    | `"USD"` | ISO 4217 currency code (e.g., USD, EUR, GBP)       |

***

### `Eventbrite List Series Events`

Integration name: **EVENTBRITE\_LIST\_SERIES\_EVENTS**

Tool to list all events in an Eventbrite event series by series ID. Use when you need to retrieve all occurrences of a recurring event. Returns paginated results with event details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                                                     |
| -------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `series_id`    | string |     ✅    | `"1983257526650"` | The ID of the event series. Series IDs can be obtained from events with is\_series\_parent=true or by querying organization events with series\_filter=parents. |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response.                              |

***

### `Eventbrite List Ticket Classes`

Integration name: **EVENTBRITE\_LIST\_TICKET\_CLASSES**

Tool to list ticket classes for a specific Eventbrite event by event ID. Use when you need to retrieve available ticket types, pricing information, and sales status for an event. Returns a paginated response with all ticket classes associated with the event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                        |
| -------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"1983257401275"` | The ID of the event to list ticket classes for.                                                                                    |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Ticket Classes For Sale`

Integration name: **EVENTBRITE\_LIST\_TICKET\_CLASSES\_FOR\_SALE**

Tool to list ticket classes available for sale for a specific Eventbrite event. Use this in the purchase flow to display available ticket options to users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                        |
| -------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"1983257401275"` | The ID of the event to retrieve ticket classes for.                                                                                |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Ticket Groups`

Integration name: **EVENTBRITE\_LIST\_TICKET\_GROUPS**

Tool to list ticket groups for a specific Eventbrite organization. Use when you need to retrieve groupings of ticket types for an organization. Returns a paginated response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                 | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | `"dXNlcjoxMjM0NTY3ODk"` | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"123456789"`           | The unique identifier of the organization whose ticket groups to list.                                                             |

***

### `Eventbrite List Tracking Beacons`

Integration name: **EVENTBRITE\_LIST\_TRACKING\_BEACONS**

Tool to list tracking beacons for an Eventbrite organization by organization ID. Use when you need to view tracking pixels and analytics beacons configured for the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation`    | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The ID of the organization to list tracking beacons for.                                                                           |

***

### `Eventbrite List User Orders`

Integration name: **EVENTBRITE\_LIST\_USER\_ORDERS**

Tool to list orders for a specific Eventbrite user. Use when you need to retrieve user order information or check order history. Returns all orders for the user with pagination metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                        |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`      | string |     ✅    | `"me"`  | The user ID. Can use 'me' to refer to the authenticated user.                                                                      |
| `continuation` | string |          | —       | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List User Organizations`

Integration name: **EVENTBRITE\_LIST\_USER\_ORGANIZATIONS**

Tool to list organizations the authenticated user belongs to. Use this early in workflows that need organization-scoped endpoints (e.g., list events by organization, list venues, orders, or attendees by organization).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                        |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `continuation` | string |          | —       | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List User Orgs`

Integration name: **EVENTBRITE\_LIST\_USER\_ORGS**

Tool to list organizations by user ID. Use when you need to fetch organizations for a specific user. Returns a paginated response with organization details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                                        |
| -------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`      | string |     ✅    | `"2054240111723"` | The ID of the user whose organizations to list. Can be obtained from /v3/users/me endpoint.                                        |
| `continuation` | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite List Venue Events`

Integration name: **EVENTBRITE\_LIST\_VENUE\_EVENTS**

Tool to list all events at a specific Eventbrite venue by venue ID. Use when you need to discover events at a particular location or venue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example       | Description                                                                                                                        |
| -------------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `venue_id`     | string |     ✅    | `"296454496"` | The unique identifier of the venue to list events for.                                                                             |
| `continuation` | string |          | —             | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |

***

### `Eventbrite Publish Event`

Integration name: **EVENTBRITE\_PUBLISH\_EVENT**

Tool to publish an Eventbrite event. Use when you need to make an event live and publicly accessible. Event must have all required information including name, description, organizer, and at least one ticket before publishing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                                                              |
| ---------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257572788"` | The unique identifier of the event to publish. Event must have all required information including name, description, organizer, and at least one ticket. |

***

### `Eventbrite Retrieve Media`

Integration name: **EVENTBRITE\_RETRIEVE\_MEDIA**

Tool to retrieve media information by ID. Use when you need to fetch details about a specific media asset including URLs, dimensions, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example       | Description                                                                                |
| ---------- | ------- | :------: | ------------- | ------------------------------------------------------------------------------------------ |
| `width`    | integer |          | `300`         | Thumbnail width in pixels. Optional parameter to retrieve a resized version of the media.  |
| `height`   | integer |          | `200`         | Thumbnail height in pixels. Optional parameter to retrieve a resized version of the media. |
| `media_id` | string  |     ✅    | `"123456789"` | The unique identifier of the media to retrieve.                                            |

***

### `Eventbrite Search Discounts By Organization`

Integration name: **EVENTBRITE\_SEARCH\_DISCOUNTS\_BY\_ORGANIZATION**

Tool to search and list discounts by organization ID. Use when you need to retrieve discount codes for a specific event within an organization. Returns paginated results with discount details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                                                                                        |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `scope`           | string |     ✅    | `"event"`         | The scope of the discount search. Use 'event' to search discounts for a specific event.                                            |
| `event_id`        | string |     ✅    | `"1983257408296"` | The ID of the event to search discounts for. Required when scope is 'event'.                                                       |
| `continuation`    | string |          | —                 | Pagination token to retrieve the next page of results. Obtained from the 'pagination.continuation' field of the previous response. |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to search discounts for.                                                                 |

***

### `Eventbrite Set Structured Content`

Integration name: **EVENTBRITE\_SET\_STRUCTURED\_CONTENT**

Tool to set structured content for an Eventbrite event by version. Encapsulates both create and update operations. Use when you need to define the content layout for an event listing page with modules and widgets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                                                                                                        |
| ---------------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `modules`        | array  |          | —                 | Array of structured content modules. Each module has a specific structure depending on its type (e.g., text module, image module). |
| `purpose`        | string |          | `"listing"`       | Purpose of the structured content, typically 'listing' for event listing pages.                                                    |
| `widgets`        | array  |          | —                 | Array of widgets for the structured content. Each widget has a specific structure depending on its type.                           |
| `event_id`       | string |     ✅    | `"1983257485527"` | The ID of the event to set structured content for.                                                                                 |
| `version_number` | string |     ✅    | `"1"`             | The version number for the structured content. Typically '1' for the first version.                                                |

***

### `Eventbrite Unpublish Event`

Integration name: **EVENTBRITE\_UNPUBLISH\_EVENT**

Tool to unpublish an Eventbrite event. Use when you need to remove an event from public view while keeping it in the system. The event can be republished later if needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                                      |
| ---------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `event_id` | string |     ✅    | `"1983257572788"` | The unique identifier of the event to unpublish. Unpublishing removes the event from public view while keeping it in the system. |

***

### `Eventbrite Update Access Code`

Integration name: **EVENTBRITE\_UPDATE\_ACCESS\_CODE**

Tool to update an existing access code for an Eventbrite event. Use when you need to modify access code details like the code string, ticket IDs, quantity, or validity dates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                  | Description                                                                    |
| -------------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------ |
| `code`               | string  |     ✅    | `"UPDATEDCODE456"`       | The access code string to update.                                              |
| `end_date`           | string  |          | `"2026-02-28T23:59:59Z"` | ISO 8601 datetime when access code expires (e.g., 2026-02-28T23:59:59Z).       |
| `event_id`           | string  |     ✅    | `"1983257485527"`        | The ID of the event that the access code belongs to.                           |
| `start_date`         | string  |          | `"2026-02-20T00:00:00Z"` | ISO 8601 datetime when access code becomes valid (e.g., 2026-02-20T00:00:00Z). |
| `ticket_ids`         | array   |     ✅    | `["3420791486"]`         | Array of ticket class IDs this access code applies to. Tickets must be hidden. |
| `access_code_id`     | string  |     ✅    | `"1275929375"`           | The ID of the access code to update.                                           |
| `quantity_available` | integer |          | `75`                     | Number of times this access code can be used.                                  |

***

### `Eventbrite Update Assortment`

Integration name: **EVENTBRITE\_UPDATE\_ASSORTMENT**

Tool to update the assortment plan for a specific organization. Use when you need to change the plan type associated with an organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                                             |
| ----------------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------- |
| `plan`            | string |     ✅    | `"package2"`      | The assortment plan type to set (e.g., 'package2', 'basic', 'premium'). |
| `organization_id` | string |     ✅    | `"2054240262773"` | The unique identifier of the organization to update assortment for.     |

***

### `Eventbrite Update Capacity Tier`

Integration name: **EVENTBRITE\_UPDATE\_CAPACITY\_TIER**

Tool to update the capacity tier for an Eventbrite event. Use when you need to modify the total capacity or other capacity tier settings for an event. Supports partial updates and GA capacity hold inventory tiers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example           | Description                                                                                                          |
| --------------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------- |
| `event_id`      | string |     ✅    | `"1983257485527"` | The ID of the event to update capacity tier for.                                                                     |
| `capacity_tier` | object |     ✅    | —                 | The capacity tier object containing fields to update. Supports partial updates and GA capacity hold inventory tiers. |

***

### `Eventbrite Update Default Question`

Integration name: **EVENTBRITE\_UPDATE\_DEFAULT\_QUESTION**

Tool to update a default (canned) question for an Eventbrite event. Use when you need to modify properties of default attendee information fields like making them required or optional.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example           | Description                                                                                                                                                                                                                  |
| ------------------- | ------- | :------: | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`          | string  |     ✅    | `"1983257485527"` | The ID of the event to update the canned question for.                                                                                                                                                                       |
| `question_id`       | string  |     ✅    | `"prefix"`        | The ID of the canned question to update (e.g., prefix, suffix, company, job\_title, cell\_phone, work\_phone, etc.). Note: Default questions like first\_name, last\_name, email have editable:false and cannot be modified. |
| `question_required` | boolean |          | —                 | Whether the question should be required for attendees to answer.                                                                                                                                                             |

***

### `Eventbrite Update Discount`

Integration name: **EVENTBRITE\_UPDATE\_DISCOUNT**

Tool to update a discount by its ID in Eventbrite. Use when you need to modify discount details such as code, amount, percentage, validity period, or ticket class associations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
| `code`                | string  |          | `"SAVE15"`               | Code that will be used by the customer to get the discount. Required for 'coded' discount type.                                        |
| `type`                | string  |          | —                        | Type of discount code                                                                                                                  |
| `end_date`            | string  |          | `"2024-12-31T23:59:59Z"` | ISO 8601 timestamp when the discount expires. Specify either this or end\_date\_relative, not both.                                    |
| `event_id`            | string  |          | `"1983257556740"`        | Event identifier to which this discount applies.                                                                                       |
| `hold_ids`            | array   |          | `["987654","123456"]`    | List of hold identifiers that this discount unlocks or is associated with.                                                             |
| `amount_off`          | string  |          | `"10.00"`                | Fixed monetary reduction amount. Must be between 0.01 and 99999.99. Specify either this or percent\_off, not both.                     |
| `start_date`          | string  |          | `"2024-01-01T00:00:00Z"` | ISO 8601 timestamp when the discount becomes active. Specify either this or start\_date\_relative, not both.                           |
| `discount_id`         | string  |     ✅    | `"1275929376"`           | The ID of the discount to update.                                                                                                      |
| `percent_off`         | string  |          | `"15"`                   | Percentage reduction value. Must be between 1.00 and 100.00. Specify either this or amount\_off, not both.                             |
| `ticket_group_id`     | string  |          | `"12345678"`             | Ticket group ID for discount association and application logic.                                                                        |
| `ticket_class_ids`    | array   |          | `["1234567","8901234"]`  | List of specific ticket class IDs to which this discount applies. If not specified, applies to all tickets.                            |
| `end_date_relative`   | integer |          | `3600`                   | Number of seconds before event conclusion when the discount ends (relative timing). Specify either this or end\_date, not both.        |
| `quantity_available`  | integer |          | `100`                    | Maximum number of times this discount can be used. Leave empty for unlimited usage.                                                    |
| `start_date_relative` | integer |          | `86400`                  | Number of seconds before event start when the discount becomes active (relative timing). Specify either this or start\_date, not both. |

***

### `Eventbrite Update Display Settings`

Integration name: **EVENTBRITE\_UPDATE\_DISPLAY\_SETTINGS**

Tool to update display settings for a specific Eventbrite event. Use when you need to configure what information is visible on an event page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example           | Description                                                         |
| ------------------ | ------ | :------: | ----------------- | ------------------------------------------------------------------- |
| `event_id`         | string |     ✅    | `"1983257568776"` | The unique identifier for the event to update display settings for. |
| `display_settings` | object |     ✅    | —                 | Display settings configuration to update for the event.             |

***

### `Eventbrite Update Event`

Integration name: **EVENTBRITE\_UPDATE\_EVENT**

Tool to update an Eventbrite event by ID. Use when you need to modify event details like name, description, dates, capacity, or other settings. For series parent events, updates to certain fields will propagate to all occurrences in the series.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                     |
| ---------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------------------------------------------- |
| `event`    | object |     ✅    | —                 | Event object containing the fields to update.                                                                   |
| `event_id` | string |     ✅    | `"1983257552728"` | The ID of the event to update. For series parents, updates to certain fields will propagate to all occurrences. |

***

### `Eventbrite Update Inventory Tier`

Integration name: **EVENTBRITE\_UPDATE\_INVENTORY\_TIER**

Tool to update an existing Inventory Tier by ID for an Event. Use when you need to modify inventory tier settings such as name, quantity, tier level, color, or capacity settings. Supports partial updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example           | Description                                                                      |
| ------------------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------- |
| `event_id`          | string |     ✅    | `"1983257578806"` | The ID of the event.                                                             |
| `inventory_tier`    | object |     ✅    | —                 | The inventory tier object containing fields to update. Supports partial updates. |
| `inventory_tier_id` | string |     ✅    | `"140520046"`     | The ID of the inventory tier to update.                                          |

***

### `Eventbrite Update Organizer`

Integration name: **EVENTBRITE\_UPDATE\_ORGANIZER**

Tool to update an Eventbrite organizer by ID. Use when you need to modify organizer details like name, description, logo, or marketing preferences.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                       |
| -------------- | ------ | :------: | ---------------- | ------------------------------------------------- |
| `organizer`    | object |     ✅    | —                | Organizer object containing the fields to update. |
| `organizer_id` | string |     ✅    | `"121019642758"` | The ID of the organizer to update.                |

***

### `Eventbrite Update Ticket Buyer Settings`

Integration name: **EVENTBRITE\_UPDATE\_TICKET\_BUYER\_SETTINGS**

Tool to update ticket buyer settings for an Eventbrite event. Use when you need to configure post-purchase redirect URL, survey/registration form name, survey time limit, or specify who should fill out the survey (each attendee or just the ticket buyer).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example           | Description                                                  |
| ----------------------- | ------ | :------: | ----------------- | ------------------------------------------------------------ |
| `event_id`              | string |     ✅    | `"1983257485527"` | The ID of the event to update ticket buyer settings for.     |
| `ticket_buyer_settings` | object |     ✅    | —                 | Ticket buyer settings configuration to update for the event. |

***

### `Eventbrite Update Ticket Class`

Integration name: **EVENTBRITE\_UPDATE\_TICKET\_CLASS**

Tool to update a ticket class for an Eventbrite event. Use when you need to modify ticket class details like name, description, cost, quantity, or free status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example           | Description                                          |
| ----------------- | ------ | :------: | ----------------- | ---------------------------------------------------- |
| `event_id`        | string |     ✅    | `"1983257485527"` | The Event ID containing the ticket class.            |
| `ticket_class`    | object |     ✅    | —                 | Ticket class object containing the fields to update. |
| `ticket_class_id` | string |     ✅    | `"3420791486"`    | The Ticket Class ID to update.                       |

***

### `Eventbrite Update Ticket Group`

Integration name: **EVENTBRITE\_UPDATE\_TICKET\_GROUP**

Tool to update a ticket group by its ID in Eventbrite. Use when you need to modify ticket group details like name, status, or event ticket mappings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example     | Description                                          |
| ----------------- | ------ | :------: | ----------- | ---------------------------------------------------- |
| `ticket_group`    | object |     ✅    | —           | Ticket group object containing the fields to update. |
| `ticket_group_id` | string |     ✅    | `"1762587"` | The ID of the ticket group to update.                |

***

### `Eventbrite Update Venue`

Integration name: **EVENTBRITE\_UPDATE\_VENUE**

Tool to update a venue's details by venue ID. Use when you need to modify venue information such as name, capacity, address, age restrictions, or location coordinates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example       | Description                                                                        |
| ---------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------- |
| `venue`    | object |     ✅    | —             | Venue object containing the fields to update. At least one field must be provided. |
| `venue_id` | string |     ✅    | `"296454496"` | The unique identifier of the venue to update.                                      |

***


# Excel 365

Your Toolhouse AI Worker can connect to Excel 365 using 54 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](https://toolhouse.app/auth-connections?authkit_slugs=excel).

## Tools (54)

### `Excel Add Chart`

Integration name: **EXCEL\_ADD\_CHART**

Add a chart to a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                             |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `type`       | string |     ✅    | —       | The type of chart to add (e.g., 'ColumnClustered').                                                                                     |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                         |
| `drive_id`   | string |          | —       | Optional drive ID. If not provided, uses 'me/drive' (requires delegated auth). For application auth (s2s\_oauth), provide the drive ID. |
| `seriesby`   | string |     ✅    | —       | How the series are by (e.g., 'Auto').                                                                                                   |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                      |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                         |
| `sourcedata` | string |     ✅    | —       | The range of source data for the chart (e.g., 'A1:C4').                                                                                 |

***

### `Excel Add Sharepoint Worksheet`

Integration name: **EXCEL\_ADD\_SHAREPOINT\_WORKSHEET**

Add a new worksheet to a SharePoint Excel workbook using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                                              | Description                                                                     |
| ------------ | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | —                                                                                                    | The name of the new worksheet to add.                                           |
| `item_id`    | string |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) to add a worksheet to.                    |
| `site_id`    | string |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                        |
| `session_id` | string |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers. |

***

### `Excel Add Table`

Integration name: **EXCEL\_ADD\_TABLE**

Create a new table in a worksheet using the Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                                     |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `address`    | string  |     ✅    | —       | The range address for the table. If worksheet is specified, use a range like 'A1:D4'. If worksheet is omitted, include the sheet name (e.g., 'Sheet1!A1:D4').                                                                                                   |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel workbook (drive item) where the table will be created.                                                                                                                                                                                      |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID.                                            |
| `worksheet`  | string  |          | —       | Worksheet name or ID. When provided, the table is created on this worksheet and the address should be a range like 'A1:D4'. When omitted, the table is created at the workbook level and the address must include the sheet name prefix (e.g., 'Sheet1!A1:D4'). |
| `hasHeaders` | boolean |     ✅    | —       | Whether the first row of the range contains column headers (True) or not (False).                                                                                                                                                                               |
| `session_id` | string  |          | —       | Workbook session ID controlling persistence.                                                                                                                                                                                                                    |

***

### `Excel Add Table Column`

Integration name: **EXCEL\_ADD\_TABLE\_COLUMN**

Add a column to a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                        |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `index`      | integer |     ✅    | —       | The index at which to insert the column.                                                                                                                                           |
| `values`     | array   |     ✅    | —       | The values for the new column. MUST include exactly one value for each row in the table, including the header row. Use list table rows to get the correct number of values needed. |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                                                        |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. If not provided, defaults to 'me' for delegated auth or must be provided for application-only auth.                                 |
| `table_id`   | string  |     ✅    | —       | The ID of the table to add a column to.                                                                                                                                            |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                    |

***

### `Excel Add Table Row`

Integration name: **EXCEL\_ADD\_TABLE\_ROW**

Add a row to a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                         |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `index`      | integer |          | —       | The 0-based index at which to insert the row. Use null or omit to append to the end (recommended).                                                                                                                  |
| `values`     | array   |     ✅    | —       | A 2D array of values for the new row(s). Each inner array represents one row and MUST have the same number of elements as the table has columns. Use List Table Columns action to verify the table structure first. |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                                                                                         |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. Use 'me' for the user's default OneDrive (delegated auth), or provide a specific drive ID for SharePoint sites or when using application permissions.                |
| `table_id`   | string  |     ✅    | —       | The ID of the table to add a row to.                                                                                                                                                                                |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                     |

***

### `Excel Add Workbook Permission`

Integration name: **EXCEL\_ADD\_WORKBOOK\_PERMISSION**

Tool to grant access to a workbook via invite. Use when you need to share a specific workbook file with designated recipients and roles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                                                                              | Description                                                                                                                         |
| ---------------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `roles`                      | array   |     ✅    | —                                                                                                    | Roles to grant: read or write.                                                                                                      |
| `item_id`                    | string  |     ✅    | —                                                                                                    | The ID of the drive item (Excel file) to share.                                                                                     |
| `message`                    | string  |          | —                                                                                                    | Plain-text message included in the invitation (max 2000 characters).                                                                |
| `site_id`                    | string  |          | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file. Required for application-level auth when the file is not in the root site. |
| `drive_id`                   | string  |          | —                                                                                                    | The ID of the document library (drive) containing the Excel file. If not provided, the site's default drive is used.                |
| `password`                   | string  |          | —                                                                                                    | Password for the invite (OneDrive Personal only).                                                                                   |
| `recipients`                 | array   |     ✅    | —                                                                                                    | Collection of recipients to grant access and send the invitation.                                                                   |
| `requireSignIn`              | boolean |          | —                                                                                                    | If true, recipients must sign in to view the shared item.                                                                           |
| `sendInvitation`             | boolean |          | —                                                                                                    | If true, sends an email invitation; otherwise grants permission silently.                                                           |
| `expirationDateTime`         | string  |          | —                                                                                                    | DateTime when the granted permission will expire (ISO 8601).                                                                        |
| `retainInheritedPermissions` | boolean |          | —                                                                                                    | If true, existing inherited permissions remain; if false, existing permissions are removed on first share.                          |

***

### `Excel Add Worksheet`

Integration name: **EXCEL\_ADD\_WORKSHEET**

Add a new worksheet to an Excel workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                         |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | —       | The name of the new worksheet to add.                                                                               |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) to add a worksheet to.                                                        |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. If not provided, will attempt to use 'me' for delegated permissions. |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                     |

***

### `Excel Apply Table Filter`

Integration name: **EXCEL\_APPLY\_TABLE\_FILTER**

Apply a filter to a table column using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                    |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                |
| `criteria`   | object |     ✅    | —       | The filter criteria as a dictionary.                                                                                                                           |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. Use 'me' for the user's default OneDrive, or provide a specific drive ID for SharePoint sites or app-only auth. |
| `table_id`   | string |     ✅    | —       | The ID of the table.                                                                                                                                           |
| `column_id`  | string |     ✅    | —       | The ID of the column to filter.                                                                                                                                |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                                             |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                |

***

### `Excel Apply Table Sort`

Integration name: **EXCEL\_APPLY\_TABLE\_SORT**

Apply a sort to a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                 |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| `fields`     | array  |     ✅    | —       | List of sort fields (e.g., \[{ 'key': 0, 'ascending': true }]).                                                             |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                             |
| `drive_id`   | string |          | —       | Optional drive ID. Required when using application permissions (not /me). Use the drive ID where the Excel file is located. |
| `table_id`   | string |     ✅    | —       | The ID of the table to sort.                                                                                                |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                          |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                             |

***

### `Excel Clear Range`

Integration name: **EXCEL\_CLEAR\_RANGE**

Tool to clear values, formats, or contents in a specified worksheet range. Use when you need to reset cells before adding new data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                                                                     |
| -------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `address`      | string |     ✅    | —       | The A1-style address of the range to clear (e.g., 'A1:B2').                                                                                                                                                                                                     |
| `applyTo`      | string |          | `"All"` | Optional. The type of clear action. Possible values: All, Formats, Contents.                                                                                                                                                                                    |
| `item_id`      | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                                                                 |
| `site_id`      | string |          | —       | Optional. The SharePoint site ID (format: hostname,site-collection-id,site-id). Required when using application permissions (s2s\_oauth) with SharePoint files. Not needed for OneDrive files with delegated permissions.                                       |
| `drive_id`     | string |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth) with OneDrive files. If not provided, falls back to site\_id or /me/drive endpoint. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID.                      |
| `session_id`   | string |          | —       | Optional. The workbook session ID for persistent changes. Must be obtained from EXCEL\_GET\_SESSION (createSession API) - do not construct manually. Format starts with 'cluster=' followed by session data. Invalid or expired sessions will cause API errors. |
| `worksheet_id` | string |     ✅    | —       | The name or ID of the worksheet (URL-encoded if necessary).                                                                                                                                                                                                     |

***

### `Excel Clear Table Filter`

Integration name: **EXCEL\_CLEAR\_TABLE\_FILTER**

Clear a filter from a table column using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                    |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. Use ‘me’ for the user’s default OneDrive, or provide a specific drive ID for SharePoint sites or app-only auth. |
| `table_id`   | string |     ✅    | —       | The ID of the table.                                                                                                                                           |
| `column_id`  | string |     ✅    | —       | The ID of the column to clear filter from.                                                                                                                     |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                                             |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                |

***

### `Excel Close Session`

Integration name: **EXCEL\_CLOSE\_SESSION**

Tool to close an existing Excel workbook session. Use when you need to explicitly end a persistent session to release workbook locks. Note: The Microsoft Graph closeSession API is idempotent - it returns 204 for both active and already-closed sessions. This action validates the session first and returns an error for invalid or already-closed sessions to provide clearer user feedback. The validation uses refreshSession which is the only API endpoint that can detect closed sessions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                              |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) to close the session for.                                                                          |
| `drive_id`   | string |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. |
| `session_id` | string |     ✅    | —       | The workbook session ID to close. Must be a valid session ID format obtained from EXCEL\_GET\_SESSION.                                   |

***

### `Excel Convert Table To Range`

Integration name: **EXCEL\_CONVERT\_TABLE\_TO\_RANGE**

Convert a table to a range using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                          |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                                                                                          |
| `drive_id`   | string |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `table_id`   | string |     ✅    | —       | The ID of the table to convert to a range.                                                                                                                                                                           |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                      |

***

### `Excel Create Workbook`

Integration name: **EXCEL\_CREATE\_WORKBOOK**

Tool to create a new Excel workbook file at a specified drive path. Generates a new .xlsx file with specified worksheets and data, then uploads it to OneDrive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                                                         |
| ----------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `path`            | string |     ✅    | —       | Path including folder structure and file name, ending with .xlsx, e.g., 'Documents/newWorkbook.xlsx'                                                                                                |
| `drive_id`        | string |          | —       | ID of the drive (use 'me' for the user's default drive)                                                                                                                                             |
| `worksheet_data`  | object |          | —       | Data to populate worksheets. Dict mapping worksheet names to lists of rows (each row is a list of cell values). Example: {'Sheet1': \[\['Name', 'Points'], \['LeBron', 40000], \['Jordan', 32292]]} |
| `worksheet_names` | array  |          | —       | List of worksheet names to create in the workbook. If not provided, a single worksheet named 'Sheet1' will be created.                                                                              |

***

### `Excel Delete Table Column`

Integration name: **EXCEL\_DELETE\_TABLE\_COLUMN**

Delete a column from a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                        |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                        |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. If not provided, defaults to 'me' for delegated auth or must be provided for application-only auth. |
| `table_id`   | string |     ✅    | —       | The ID of the table to delete a column from.                                                                                                       |
| `column_id`  | string |     ✅    | —       | The ID of the column to delete.                                                                                                                    |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                    |

***

### `Excel Delete Table Row`

Integration name: **EXCEL\_DELETE\_TABLE\_ROW**

Delete a row from a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                   |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                   |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. Use 'me' for the user's default OneDrive, or provide a specific drive ID for SharePoint sites. |
| `table_id`   | string  |     ✅    | —       | The ID of the table to delete a row from.                                                                                                     |
| `row_index`  | integer |     ✅    | —       | The index of the row to delete.                                                                                                               |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                               |

***

### `Excel Delete Worksheet`

Integration name: **EXCEL\_DELETE\_WORKSHEET**

Tool to delete a worksheet from the workbook. Use when cleaning up unused or temporary sheets after verifying no dependencies exist. Example: "Delete 'Sheet2' after review."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example    | Description                                                                                                                                        |
| ------------ | ------ | :------: | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —          | The ID of the Excel file (drive item) containing the worksheet.                                                                                    |
| `drive_id`   | string |          | —          | The ID of the drive containing the Excel file. If not provided, defaults to 'me' for delegated auth or must be provided for application-only auth. |
| `worksheet`  | string |     ✅    | `"Sheet1"` | The name or ID of the worksheet to delete. If using ID, it must be URL-encoded.                                                                    |
| `session_id` | string |          | —          | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                    |

***

### `Excel Export Workbook To Pdf`

Integration name: **EXCEL\_EXPORT\_WORKBOOK\_TO\_PDF**

Tool to export an Excel workbook to PDF via Microsoft Graph's format conversion. Use when you need a PDF version of an Excel file for sending, storing, or attaching.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                                                | Description                                                                                                                                                                      |
| -------------------------- | ------- | :------: | ---------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`                  | string  |     ✅    | `"01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K"`                                 | ID of the Excel file (DriveItem) to convert to PDF.                                                                                                                              |
| `drive_id`                 | string  |          | `"b!-RIj2DuyvEyV1T4NlOaMHk8XkS_I8MdFlUCq1BlcjgmhRfAj3-Z8RY2VpuvV_tpd"` | Required when drive\_scope is 'drives' or 'sites'. The drive ID or site ID.                                                                                                      |
| `drive_scope`              | string  |          | `"me"`                                                                 | The drive scope type: 'me' for user's OneDrive, 'drives' for specific drive ID, 'sites' for SharePoint site.                                                                     |
| `save_pdf_to_path`         | string  |          | —                                                                      | Optional path where the converted PDF should be uploaded back to Drive (e.g., 'Documents/invoice.pdf'). If provided, the tool downloads the PDF and uploads it to this location. |
| `return_download_url_only` | boolean |          | —                                                                      | If true, only return the preauthenticated download URL. If false, fetch additional metadata about the source item.                                                               |

***

### `Excel Get Chart Axis`

Integration name: **EXCEL\_GET\_CHART\_AXIS**

Tool to retrieve a specific axis from a chart. Use when you need properties like min, max, interval, and formatting of the chart axis.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                                                                                                                                                       |
| ------------ | ------ | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | string |          | `"format"`           | OData $expand query option to expand related entities (format).                                                                                                                                                   |
| `select`     | string |          | `"minimum,maximum"`  | OData $select query option to specify which properties to return.                                                                                                                                                 |
| `item_id`    | string |     ✅    | `"0123456789abcdef"` | The ID of the Excel file (drive item) containing the workbook.                                                                                                                                                    |
| `drive_id`   | string |          | —                    | Optional drive ID. If provided, uses /drives/{drive\_id}/items/{item\_id} endpoint (required for application permissions). If not provided, uses /me/drive/items/{item\_id} endpoint (for delegated permissions). |
| `axis_type`  | string |     ✅    | `"valueAxis"`        | The type of axis to retrieve. Allowed values: 'valueAxis', 'seriesAxis', 'categoryAxis'.                                                                                                                          |
| `worksheet`  | string |     ✅    | `"Sheet1"`           | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                                                                                                |
| `chart_name` | string |     ✅    | `"Chart1"`           | The name or ID of the chart (must be URL-encoded).                                                                                                                                                                |
| `session_id` | string |          | —                    | Optional workbook session ID. If provided, will be sent in the headers.                                                                                                                                           |

***

### `Excel Get Chart Data Labels`

Integration name: **EXCEL\_GET\_CHART\_DATA\_LABELS**

Tool to retrieve the data labels object of a chart. Use when you need to inspect label settings like position, separator, and visibility flags after creating or updating a chart.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example              | Description                                                                                       |
| -------------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------- |
| `item_id`      | string |     ✅    | `"0123456789abcdef"` | The ID of the Excel file (drive item) containing the workbook.                                    |
| `chart_id`     | string |     ✅    | `"chart1"`           | The ID or name of the chart (must be URL-encoded if using special characters).                    |
| `drive_id`     | string |          | —                    | Optional drive ID. If not provided, defaults to 'me' (user's default drive).                      |
| `session_id`   | string |          | —                    | Optional workbook session ID. If provided, will be sent in the headers to maintain session state. |
| `worksheet_id` | string |     ✅    | `"Sheet1"`           | The ID or name of the worksheet (must be URL-encoded if using special characters).                |

***

### `Excel Get Chart Legend`

Integration name: **EXCEL\_GET\_CHART\_LEGEND**

Tool to retrieve the legend object of a chart. Use after creating or updating a chart when you need to inspect legend visibility and formatting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example              | Description                                                                                                                                                                                                          |
| -------------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`       | string |          | `"format"`           | OData $expand query option to expand related entities, such as format.                                                                                                                                               |
| `select`       | string |          | `"visible,position"` | OData $select query option to specify which properties to return (comma-separated).                                                                                                                                  |
| `item_id`      | string |     ✅    | `"0123456789abcdef"` | The ID of the Excel file (drive item) containing the workbook.                                                                                                                                                       |
| `drive_id`     | string |          | —                    | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `chart_name`   | string |     ✅    | `"Chart1"`           | The name or ID of the chart (URL-encoded if necessary).                                                                                                                                                              |
| `session_id`   | string |          | —                    | Optional workbook session ID. If provided, will be sent in the headers to maintain session state.                                                                                                                    |
| `worksheet_id` | string |     ✅    | `"Sheet1"`           | The ID or name of the worksheet (URL-encoded if necessary).                                                                                                                                                          |

***

### `Excel Get Range`

Integration name: **EXCEL\_GET\_RANGE**

Get a range from a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                       |
| -------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `address`      | string |     ✅    | —       | Valid Excel range address or named range. Cell ranges: A1, A1:B2, A:A, Sheet1!A1:B2. Named ranges: must start with letter/underscore, no spaces (use underscores: Sales\_Tax not Sales Tax).                      |
| `item_id`      | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                   |
| `drive_id`     | string |          | —       | Optional drive ID. If provided, uses /drives/{drive\_id}/items/{item\_id} endpoint (required for application permissions). If not provided, uses /me/drive/items/{item\_id} endpoint (for delegated permissions). |
| `session_id`   | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                   |
| `worksheet_id` | string |     ✅    | —       | The ID or name of the worksheet (required, cannot be empty). Provide the sheet name (e.g., 'Sheet1') or its unique ID. Use the list worksheets action if you need to find available worksheet names or IDs.       |

***

### `Excel Get Session`

Integration name: **EXCEL\_GET\_SESSION**

Create a session for an Excel workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                             |
| ----------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`         | string  |     ✅    | —       | The OneDrive drive item ID of the Excel file (.xlsx). Valid OneDrive item IDs are alphanumeric strings at least 10 characters long (e.g., '01LLJYZ3EAWWGPCTABGZALJJUKANV2PRLI'). Get valid item IDs from the EXCEL\_LIST\_FILES action. |
| `drive_id`        | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth.                                                                                                |
| `persist_changes` | boolean |          | —       | Whether changes should be persisted after the session. If false, a nonpersistent session is created.                                                                                                                                    |

***

### `Excel Get Sharepoint Range`

Integration name: **EXCEL\_GET\_SHAREPOINT\_RANGE**

Get a range from a worksheet in SharePoint using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                              | Description                                                                     |
| -------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `address`      | string |     ✅    | —                                                                                                    | The address of the range (e.g., 'A1:B2').                                       |
| `item_id`      | string |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) containing the worksheet.                 |
| `site_id`      | string |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                        |
| `session_id`   | string |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers. |
| `worksheet_id` | string |     ✅    | —                                                                                                    | The ID of the worksheet.                                                        |

***

### `Excel Get Sharepoint Worksheet`

Integration name: **EXCEL\_GET\_SHAREPOINT\_WORKSHEET**

Get a worksheet by name or ID from a SharePoint Excel workbook using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                                              | Description                                                                       |
| ------------ | ------ | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) to get the worksheet from.                  |
| `site_id`    | string |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                          |
| `worksheet`  | string |     ✅    | —                                                                                                    | The name or ID of the worksheet to retrieve. If using ID, it must be URL-encoded. |
| `session_id` | string |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers.   |

***

### `Excel Get Table Column`

Integration name: **EXCEL\_GET\_TABLE\_COLUMN**

Tool to retrieve a specific column from a workbook table. Use when you need to fetch column properties and data by its ID or name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                                                                                                                |
| `site_id`    | string |          | —       | Optional SharePoint site ID. Required when using application permissions (s2s\_oauth). Format: 'hostname,spSiteId,spWebId'                                                                                                                 |
| `drive_id`   | string |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth) with OneDrive files. If not provided, falls back to site\_id or /me/drive endpoint. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `table_id`   | string |     ✅    | —       | The ID or name of the table containing the column.                                                                                                                                                                                         |
| `column_id`  | string |     ✅    | —       | The ID or name of the column to retrieve.                                                                                                                                                                                                  |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                                            |

***

### `Excel Get Workbook`

Integration name: **EXCEL\_GET\_WORKBOOK**

Tool to retrieve the properties and relationships of a workbook. Use when you need to inspect comments, names, tables, or worksheets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                | Description                                                                                                                                                                                                                                                                                     |
| ------------ | ------ | :------: | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | array  |          | `["comments","worksheets"]`            | OData relationships to expand in the response.                                                                                                                                                                                                                                                  |
| `item_id`    | string |     ✅    | `"01RWIO2VKO5Q4ECCKUL5BYFHITS5UOQPBH"` | Graph API item ID (e.g., '01RWIO2VKO5Q4ECCKUL5BYFHITS5UOQPBH') or file path (e.g., 'Budget.xlsx' or 'Documents/Budget.xlsx'). Item IDs are opaque alphanumeric strings obtained from list/search operations. If a path is provided (containing .xlsx or /), path-based addressing will be used. |
| `drive_id`   | string |     ✅    | `"me"`                                 | ID of the drive (use 'me' for the user's default drive).                                                                                                                                                                                                                                        |
| `session_id` | string |          | —                                      | Optional workbook session ID. If provided, will be sent in headers.                                                                                                                                                                                                                             |

***

### `Excel Get Worksheet`

Integration name: **EXCEL\_GET\_WORKSHEET**

Get a worksheet by name or ID from an Excel workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                                    |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) to get the worksheet from.                                                                                                                                                                                               |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. Required for SharePoint files or when using app-only authentication. Use 'me' for delegated auth with user's OneDrive, or provide the specific drive ID for SharePoint sites.                                   |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet to retrieve. If using ID, it must be URL-encoded.                                                                                                                                                                              |
| `session_id` | string |          | —       | Optional workbook session ID. Must be a valid session ID obtained from the EXCEL\_GET\_SESSION (createSession) action. Do NOT pass arbitrary strings - only use session IDs returned by createSession. If you don't have a valid session ID, leave this empty. |

***

### `Excel Get Worksheet Used Range`

Integration name: **EXCEL\_GET\_WORKSHEET\_USED\_RANGE**

Tool to retrieve a worksheet's used range (active data region) without specifying a fixed range address. Use when you need to read all data from a sheet but don't know the exact range. The valuesOnly option helps filter out formatting-only cells.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                | Description                                                                                                                                                   |
| -------------- | ------- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`      | string  |     ✅    | `"01RWIO2VKO5Q4ECCKUL5BYFHITS5UOQPBH"` | The ID of the Excel file (drive item) containing the worksheet.                                                                                               |
| `drive_id`     | string  |     ✅    | `"me"`                                 | The ID of the drive (e.g., 'me' for the user's default OneDrive, or a specific drive ID for SharePoint).                                                      |
| `session_id`   | string  |          | —                                      | Optional workbook session ID. If provided, will be sent in the workbook-session-id header. Must be a valid session ID obtained from the createSession action. |
| `values_only`  | boolean |          | `false`                                | If true, only returns cells with values (ignores formatting-only cells). Maps to valuesOnly parameter in the API.                                             |
| `worksheet_id` | string  |     ✅    | `"Sheet1"`                             | The ID or name of the worksheet. Can be the worksheet name (e.g., 'Sheet1') or its unique ID.                                                                 |

***

### `Excel Insert Range`

Integration name: **EXCEL\_INSERT\_RANGE**

Tool to insert a new cell range into a worksheet, shifting existing cells down or right. Use when you need to create space for new content without overwriting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example  | Description                                                                                                                                        |
| -------------- | ------ | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `shift`        | string |     ✅    | `"Down"` | Direction to shift cells to make space: 'Down' or 'Right'.                                                                                         |
| `address`      | string |     ✅    | —        | The address of the range (e.g., 'A1:B2').                                                                                                          |
| `item_id`      | string |     ✅    | —        | The ID of the Excel file (drive item) containing the worksheet.                                                                                    |
| `drive_id`     | string |          | —        | The ID of the drive containing the Excel file. If not provided, defaults to 'me' for delegated auth or must be provided for application-only auth. |
| `session_id`   | string |          | —        | Optional workbook session ID. If provided, changes persist in that session.                                                                        |
| `worksheet_id` | string |     ✅    | —        | The ID or name of the worksheet.                                                                                                                   |

***

### `Excel List Charts`

Integration name: **EXCEL\_LIST\_CHARTS**

List charts in a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                                                                                                                             |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                                                                                                                                |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                      |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `worksheet`  | string  |     ✅    | —       | The name or ID of the worksheet. Do not include surrounding quotes - provide the plain worksheet name (e.g., 'Sheet1' not "'Sheet1'").                                                                               |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                      |

***

### `Excel List Chart Series`

Integration name: **EXCEL\_LIST\_CHART\_SERIES**

Tool to list all data series in a chart. Use when you need to enumerate chart series for further analysis.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                                                                                                                             |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                                                                                                                                |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                      |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `worksheet`  | string  |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                                                                                                   |
| `chart_name` | string  |     ✅    | —       | The name or ID of the chart (must be URL-encoded).                                                                                                                                                                   |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                      |

***

### `Excel List Comments`

Integration name: **EXCEL\_LIST\_COMMENTS**

Tool to list comments in an Excel workbook. Use when you need to retrieve all workbook comments via Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                         |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                            |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                               |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) to list comments for.                                                         |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. If not provided, will attempt to use 'me' for delegated permissions. |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                     |

***

### `Excel List Drive Item Children`

Integration name: **EXCEL\_LIST\_DRIVE\_ITEM\_CHILDREN**

Tool to list immediate children (files/folders) of a folder DriveItem using driveId and itemId. Returns an array of child DriveItems with stable identifiers and pagination support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                | Description                                                                                                                                                                 |
| ------------ | ------- | :------: | -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —                                      | Maximum number of children to return per page (maps to $top OData query parameter).                                                                                         |
| `item_id`    | string  |     ✅    | `"01RWIO2VKO5Q4ECCKUL5BYFHITS5UOQPBH"` | Graph API item ID of the folder DriveItem whose children to enumerate. Must be an opaque alphanumeric identifier obtained from list/search operations or shares resolution. |
| `drive_id`   | string  |     ✅    | `"me"`                                 | ID of the drive containing the folder (use 'me' for the user's default drive).                                                                                              |
| `skip_token` | string  |          | —                                      | Opaque pagination token from a previous response's odata\_next\_link URL ($skiptoken value). Pass this to fetch the next page of results.                                   |

***

### `Excel List Files`

Integration name: **EXCEL\_LIST\_FILES**

List files and folders in a drive root or specified path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                    |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `top`        | integer |          | —       | Maximum number of items to return per page (maps to $top OData query parameter).                                               |
| `path`       | string  |          | —       | Optional folder path under root to list. E.g., 'Documents'. Must be a folder path, not a file path.                            |
| `drive_id`   | string  |          | —       | ID of the drive (use 'me' for the user's default drive)                                                                        |
| `skip_token` | string  |          | —       | Opaque pagination token from a previous response's next\_link ($skiptoken value). Pass this to fetch the next page of results. |

***

### `Excel List Named Items`

Integration name: **EXCEL\_LIST\_NAMED\_ITEMS**

List named items in a workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                          |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                                                                                                                             |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                                                                                                                                |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the workbook.                                                                                                                                                       |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If not provided, a new session will be created automatically.                                                                                                                  |

***

### `Excel List Sharepoint Tables`

Integration name: **EXCEL\_LIST\_SHAREPOINT\_TABLES**

List tables in a SharePoint worksheet using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                              | Description                                                                     |
| ------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `top`        | integer |          | —                                                                                                    | Maximum number of items to return per page (OData $top).                        |
| `skip`       | integer |          | —                                                                                                    | Number of items to skip for pagination (OData $skip).                           |
| `item_id`    | string  |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) containing the worksheet.                 |
| `site_id`    | string  |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                        |
| `worksheet`  | string  |     ✅    | —                                                                                                    | The name or ID of the worksheet (must be URL-encoded if using ID).              |
| `session_id` | string  |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers. |

***

### `Excel List Sharepoint Worksheets`

Integration name: **EXCEL\_LIST\_SHAREPOINT\_WORKSHEETS**

List worksheets in an Excel workbook stored in SharePoint using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                              | Description                                                                                                                                                                              |
| ------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —                                                                                                    | Maximum number of items to return per page (OData $top).                                                                                                                                 |
| `skip`       | integer |          | —                                                                                                    | Number of items to skip for pagination (OData $skip).                                                                                                                                    |
| `item_id`    | string  |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) to list worksheets for.                                                                                                                            |
| `site_id`    | string  |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                                                                                                                                 |
| `drive_id`   | string  |          | —                                                                                                    | The ID of the document library (drive) containing the Excel file. Required if the file is not in the site's default document library. If not provided, the site's default drive is used. |
| `session_id` | string  |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                          |

***

### `Excel List Table Columns`

Integration name: **EXCEL\_LIST\_TABLE\_COLUMNS**

List columns in a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                            |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------ |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                               |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                  |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                            |
| `drive_id`   | string  |          | —       | The ID of the drive containing the item. If not provided, will attempt to use 'me' for delegated auth. |
| `table_id`   | string  |     ✅    | —       | The ID of the table to list columns from.                                                              |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                        |

***

### `Excel List Table Rows`

Integration name: **EXCEL\_LIST\_TABLE\_ROWS**

List rows in a table using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                 |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of rows to return per page (maps to $top OData query parameter). Microsoft recommends using $top and $skip for large tables. |
| `skip`       | integer |          | —       | Number of rows to skip before returning results (maps to $skip OData query parameter). Use with 'top' for offset-based pagination.          |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                                 |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. If not provided, will attempt to use 'me' for delegated permissions.                         |
| `table_id`   | string  |     ✅    | —       | The name or ID of the table (e.g., 'Table1', 'MyTable'). Note: this must be a valid Excel table name/ID, not a worksheet name.              |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                             |

***

### `Excel List Tables`

Integration name: **EXCEL\_LIST\_TABLES**

List tables in a worksheet using Microsoft Graph API. This action retrieves information about all tables present in a specified worksheet of an Excel file. It requires the file ID and worksheet name or ID, and can optionally use a session ID for workbook operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                  |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                                                     |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                                                        |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                              |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth.     |
| `worksheet`  | string  |     ✅    | —       | The name or ID of the worksheet (e.g., 'Sheet1', '工作表', or '{00000000-0001-0000-0000-000000000000}'). URL encoding is handled automatically. |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                              |

***

### `Excel List Workbook Permissions`

Integration name: **EXCEL\_LIST\_WORKBOOK\_PERMISSIONS**

Tool to list permissions set on the workbook file. Use when you need to see which users or links have access to a specific Excel file by supplying its drive and item IDs. Example: "List permissions for workbook with drive\_id 'b!abc123' and item\_id '0123456789abcdef'."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                            |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of permission objects to return.                                                                                        |
| `skip`       | integer |          | —       | Number of permission objects to skip.                                                                                                  |
| `expand`     | string  |          | —       | Comma-separated list of related entities to expand.                                                                                    |
| `select`     | string  |          | —       | Comma-separated list of permission properties to include in the response.                                                              |
| `item_id`    | string  |     ✅    | —       | The ID of the DriveItem representing the workbook.                                                                                     |
| `drive_id`   | string  |     ✅    | —       | The ID of the drive containing the workbook file. Use 'me' for the current user's default OneDrive.                                    |
| `skip_token` | string  |          | —       | Opaque pagination token from a previous response's next\_link URL ($skiptoken value). Pass this to fetch the next page of permissions. |

***

### `Excel List Worksheets`

Integration name: **EXCEL\_LIST\_WORKSHEETS**

List worksheets in an Excel workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                         |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | —       | Maximum number of items to return per page (OData $top).                                                            |
| `skip`       | integer |          | —       | Number of items to skip for pagination (OData $skip).                                                               |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) to list worksheets for.                                                       |
| `drive_id`   | string  |          | —       | The ID of the drive containing the Excel file. If not provided, will attempt to use 'me' for delegated permissions. |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                     |

***

### `Excel Merge Cells`

Integration name: **EXCEL\_MERGE\_CELLS**

Merge cells in a worksheet range using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                                                                                |
| ------------ | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------------------- |
| `range`      | string  |     ✅    | `"A1:B2"`  | The A1-style address of the range to merge (e.g., 'A1:B2').                                                                |
| `across`     | boolean |          | —          | Optional. Set true to merge cells in each row of the specified range as separate merged cells. The default value is false. |
| `item_id`    | string  |     ✅    | —          | The ID of the Excel file (drive item) containing the worksheet.                                                            |
| `drive_id`   | string  |          | —          | Optional drive ID. If not provided, will use 'me' for delegated permissions. Required for application permissions.         |
| `worksheet`  | string  |     ✅    | `"Sheet1"` | The name or ID of the worksheet containing the range to merge.                                                             |
| `session_id` | string  |          | —          | Optional session ID for the workbook. If provided, will be sent in the headers.                                            |

***

### `Excel Protect Worksheet`

Integration name: **EXCEL\_PROTECT\_WORKSHEET**

Tool to protect a worksheet using optional protection options. Use when you need to prevent editing certain parts of a sheet before sharing. Example: "Protect 'Sheet1' to lock formatting and sorting."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example    | Description                                                                                                         |
| ------------ | ------ | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | —          | The ID of the Excel file (drive item) containing the worksheet.                                                     |
| `options`    | object |          | —          | Sheet protection options. If omitted, default protection is applied.                                                |
| `drive_id`   | string |          | —          | The ID of the drive containing the Excel file. If not provided, will attempt to use 'me' for delegated permissions. |
| `worksheet`  | string |     ✅    | `"Sheet1"` | The name or ID of the worksheet to protect. If using ID, it must be URL-encoded.                                    |
| `session_id` | string |          | —          | Optional session ID for the workbook. If provided, will be sent in the headers.                                     |

***

### `Excel Search Files`

Integration name: **EXCEL\_SEARCH\_FILES**

Tool to search OneDrive drive items by query to discover Excel workbook IDs. Use when you need to find Excel files by name before performing workbook operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example             | Description                                                                                                                               |
| ----------------- | ------- | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `top`             | integer |          | `10`                | Maximum number of items to return. Uses $top query parameter if supported.                                                                |
| `query`           | string  |     ✅    | `"budget.xlsx"`     | Search query text to find items (e.g., filename like 'roster.xlsx' or partial name). Matches across filename, metadata, and file content. |
| `scope`           | string  |          | `"drive"`           | Search scope: 'drive' searches entire drive including items shared with current user; 'root' searches within user's drive hierarchy only. |
| `drive_id`        | string  |          | `"me"`              | ID of the drive to search (use 'me' for the user's default drive in delegated auth, or a specific drive ID).                              |
| `skip_token`      | string  |          | —                   | Opaque pagination token from a previous response's next\_link URL ($skiptoken value). Pass this to fetch the next page of search results. |
| `file_extensions` | array   |          | `[".xlsx",".xlsm"]` | Optional list of file extensions to filter results (e.g., \['.xlsx', '.xlsm']). Applied as client-side filter to results.                 |

***

### `Excel Sort Range`

Integration name: **EXCEL\_SORT\_RANGE**

Sort a range in a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                                                |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`     | array  |     ✅    | —       | List of sort fields (e.g., \[{ 'key': 0, 'ascending': true }]).                                                                                                                                                                            |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                                            |
| `site_id`    | string |          | —       | Optional SharePoint site ID. Required for application-level authentication (s2s\_oauth). Format: 'hostname,spSiteId,spWebId'.                                                                                                              |
| `drive_id`   | string |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth) with OneDrive files. If not provided, falls back to site\_id or /me/drive endpoint. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                                                                                                                                         |
| `range_type` | string |     ✅    | —       | The type of range to sort (e.g., 'usedRange').                                                                                                                                                                                             |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                                            |

***

### `Excel Update Chart`

Integration name: **EXCEL\_UPDATE\_CHART**

Update a chart in a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                             |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `top`        | number |          | —       | The new top position for the chart.                                                                                     |
| `left`       | number |          | —       | The new left position for the chart.                                                                                    |
| `name`       | string |          | —       | The new name for the chart.                                                                                             |
| `width`      | number |          | —       | The new width for the chart.                                                                                            |
| `height`     | number |          | —       | The new height for the chart.                                                                                           |
| `item_id`    | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                         |
| `chart_id`   | string |     ✅    | —       | The ID of the chart (must be URL-encoded).                                                                              |
| `drive_id`   | string |          | —       | The ID of the drive containing the Excel file. Optional for delegated auth, required for application auth (s2s\_oauth). |
| `worksheet`  | string |     ✅    | —       | The name or ID of the worksheet (must be URL-encoded if using ID).                                                      |
| `session_id` | string |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                         |

***

### `Excel Update Chart Legend`

Integration name: **EXCEL\_UPDATE\_CHART\_LEGEND**

Tool to update formatting or position of a chart legend. Use when adjusting legend settings after confirming chart and worksheet exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example              | Description                                                                                                           |
| ------------ | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string  |     ✅    | `"0123456789abcdef"` | The ID of the Excel file (drive item) containing the workbook.                                                        |
| `overlay`    | boolean |          | `false`              | Set to true to make the legend overlap the chart body, or false otherwise.                                            |
| `visible`    | boolean |          | `true`               | Set to true to show the chart legend, or false to hide it.                                                            |
| `chart_id`   | string  |     ✅    | `"chartName"`        | The name or ID of the chart (must be URL-encoded).                                                                    |
| `drive_id`   | string  |          | —                    | Optional drive ID. If not provided, will attempt to use /me/drive (requires delegated auth) or auto-detect from item. |
| `position`   | string  |          | `"Top"`              | The position of the legend on the chart. Possible values: Top, Bottom, Left, Right, Corner, Custom.                   |
| `worksheet`  | string  |     ✅    | `"Sheet1"`           | The name or ID of the worksheet (must be URL-encoded if using ID).                                                    |
| `session_id` | string  |          | —                    | Optional workbook session ID. If provided, will be sent in the 'workbook-session-id' header.                          |

***

### `Excel Update Range`

Integration name: **EXCEL\_UPDATE\_RANGE**

Update a range in a worksheet using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                                                                                       |
| -------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `values`       | array  |     ✅    | —       | The values to update in the range.                                                                                                                                                                                |
| `address`      | string |     ✅    | —       | The address of the range (e.g., 'A1:B2').                                                                                                                                                                         |
| `item_id`      | string |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                   |
| `drive_id`     | string |          | —       | Optional drive ID. If provided, uses /drives/{drive\_id}/items/{item\_id} endpoint (required for application permissions). If not provided, uses /me/drive/items/{item\_id} endpoint (for delegated permissions). |
| `session_id`   | string |          | —       | Optional session ID for the workbook, obtained from the createSession API (GET\_SESSION action). Must be a valid, active session ID. Leave blank if not using sessions.                                           |
| `worksheet_id` | string |     ✅    | —       | The ID of the worksheet.                                                                                                                                                                                          |

***

### `Excel Update Sharepoint Range`

Integration name: **EXCEL\_UPDATE\_SHAREPOINT\_RANGE**

Update a range in a SharePoint worksheet using Microsoft Graph Sites API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                              | Description                                                                     |
| -------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `values`       | array  |     ✅    | —                                                                                                    | The values to update in the range.                                              |
| `address`      | string |     ✅    | —                                                                                                    | The address of the range (e.g., 'A1:B2').                                       |
| `item_id`      | string |     ✅    | —                                                                                                    | The ID of the Excel file (drive item) containing the worksheet.                 |
| `site_id`      | string |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The ID of the SharePoint site containing the Excel file.                        |
| `session_id`   | string |          | —                                                                                                    | Optional session ID for the workbook. If provided, will be sent in the headers. |
| `worksheet_id` | string |     ✅    | —                                                                                                    | The ID of the worksheet.                                                        |

***

### `Excel Update Table`

Integration name: **EXCEL\_UPDATE\_TABLE**

Update a table in a workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                              |
| ------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string  |          | —       | The new name for the table.                                                                                                              |
| `style`       | string  |          | —       | The style of the table.                                                                                                                  |
| `item_id`     | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the table.                                                                              |
| `drive_id`    | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth). If not provided, uses /me/drive endpoint for delegated auth. |
| `table_id`    | string  |     ✅    | —       | The ID of the table to update.                                                                                                           |
| `session_id`  | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                          |
| `showTotals`  | boolean |          | —       | Whether the table shows totals.                                                                                                          |
| `showHeaders` | boolean |          | —       | Whether the table shows headers.                                                                                                         |

***

### `Excel Update Worksheet`

Integration name: **EXCEL\_UPDATE\_WORKSHEET**

Update worksheet properties (name, position) in an Excel workbook using Microsoft Graph API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`       | string  |          | —       | The new name for the worksheet.                                                                                                                                                                                                            |
| `item_id`    | string  |     ✅    | —       | The ID of the Excel file (drive item) containing the worksheet.                                                                                                                                                                            |
| `site_id`    | string  |          | —       | The ID of the SharePoint site containing the Excel file. Required when using application permissions (s2s\_oauth). Not needed for delegated authentication.                                                                                |
| `drive_id`   | string  |          | —       | Optional drive ID. Required for application-level permissions (s2s\_oauth) with OneDrive files. If not provided, falls back to site\_id or /me/drive endpoint. Use EXCEL\_LIST\_FILES or ONE\_DRIVE\_GET\_DRIVE\_ROOT to get the drive ID. |
| `position`   | integer |          | —       | The new position for the worksheet.                                                                                                                                                                                                        |
| `worksheet`  | string  |     ✅    | —       | The name or ID of the worksheet to update. If using ID, it must be URL-encoded.                                                                                                                                                            |
| `session_id` | string  |          | —       | Optional session ID for the workbook. If provided, will be sent in the headers.                                                                                                                                                            |

***

### `Excel Upload Workbook`

Integration name: **EXCEL\_UPLOAD\_WORKBOOK**

Tool to upload an external Excel file from a URL into OneDrive/SharePoint. Downloads the file server-side and uploads it to the specified drive location, returning the driveItem metadata for subsequent Excel operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                           | Description                                                                                                                                                                                                 |
| ------------------- | ------ | :------: | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `drive_id`          | string |          | `"me"`                            | ID of the target drive. Use 'me' for the user's default OneDrive.                                                                                                                                           |
| `source_url`        | string |     ✅    | `"https://example.com/file.xlsx"` | URL of the Excel file to download and upload. Must be a publicly accessible URL or authenticated URL.                                                                                                       |
| `destination_path`  | string |          | `"Documents/report.xlsx"`         | Full path including folder and filename where the file should be uploaded in OneDrive/SharePoint, e.g., 'Documents/report.xlsx'. If not provided, file will be uploaded to /Uploads/{timestamp}-{filename}. |
| `conflict_behavior` | string |          | —                                 | What to do if a file already exists at the destination path. 'rename' creates a new file with a number suffix, 'replace' overwrites the existing file, 'fail' returns an error.                             |

***


# Exist

Your Toolhouse AI Worker can connect to Exist using 12 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](https://toolhouse.app/auth-connections?authkit_slugs=exist).

## Tools (12)

### `Exist Acquire Attribute Ownership`

Integration name: **EXIST\_ACQUIRE\_ATTRIBUTE\_OWNERSHIP**

Tool to acquire ownership of attributes for the authenticated user. Allows your service to write data to these attributes. Use when you need to create or take ownership of attributes before writing data. Acquiring a templated attribute the user doesn't have yet will create this attribute and give you ownership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type  | Required | Example                                          | Description                                             |
| ------------ | ----- | :------: | ------------------------------------------------ | ------------------------------------------------------- |
| `attributes` | array |     ✅    | `[{"template":"mood"},{"template":"mood_note"}]` | List of attributes to acquire ownership of (maximum 35) |

***

### `Exist Get Attributes With Values`

Integration name: **EXIST\_GET\_ATTRIBUTES\_WITH\_VALUES**

Tool to retrieve attributes with their current values for the authenticated user. Use when you need both attribute metadata and their historical values. Results are limited to your read scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example               | Description                                                                                                   |
| ------------ | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`                   | Page number for pagination (1-based indexing)                                                                 |
| `limit`      | integer |          | `20`                  | Page size for pagination (number of attributes per page)                                                      |
| `groups`     | string  |          | `"activity,workouts"` | Filter to only attributes in these groups, as comma-separated list of group names (e.g., 'activity,workouts') |
| `date_max`   | string  |          | `"2024-12-31"`        | Maximum date for values in ISO format YYYY-MM-DD (e.g., '2024-12-31')                                         |
| `date_min`   | string  |          | `"2024-01-01"`        | Minimum date for values in ISO format YYYY-MM-DD (e.g., '2024-01-01')                                         |
| `attributes` | string  |          | `"steps,sleep"`       | Filter to only these attributes, as comma-separated list of attribute names (e.g., 'steps,sleep')             |

***

### `Exist Get Attribute Templates`

Integration name: **EXIST\_GET\_ATTRIBUTE\_TEMPLATES**

Tool to retrieve a paged list of supported attribute templates. Use when you need to browse available templates before creating or updating data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                      |
| ---------------------- | ------- | :------: | ------- | ------------------------------------------------ |
| `page`                 | integer |          | —       | Page index, starting at 1                        |
| `limit`                | integer |          | —       | Number of results per page                       |
| `groups`               | array   |          | —       | Filter by groups, e.g., \['activity','workouts'] |
| `include_low_priority` | boolean |          | —       | Include templates with priority >= 10            |

***

### `Exist Get Averages`

Integration name: **EXIST\_GET\_AVERAGES**

Tool to retrieve the most recent average values for each tracked attribute, with one set per week. Returns overall weekly averages plus daily breakdowns (Monday-Sunday). Use include\_historical flag to retrieve historical average records.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                   | Description                                                                |
| -------------------- | ------- | :------: | ------------------------- | -------------------------------------------------------------------------- |
| `page`               | integer |          | `1`                       | Page index, 1-based. Defaults to 1.                                        |
| `limit`              | integer |          | `20`                      | Number of results per page.                                                |
| `groups`             | array   |          | `["activity","workouts"]` | Filter by attribute groups. Provide a list, e.g. \['activity','workouts']. |
| `date_max`           | string  |          | `"2024-12-31"`            | Maximum (most recent) date inclusive, in yyyy-mm-dd format.                |
| `date_min`           | string  |          | `"2024-01-01"`            | Minimum (oldest) date inclusive, in yyyy-mm-dd format.                     |
| `attributes`         | array   |          | `["steps","floors"]`      | Filter by specific attributes. Provide a list, e.g. \['steps','floors'].   |
| `include_historical` | boolean |          | `true`                    | Set true to retrieve historical average records.                           |

***

### `Exist Get Correlations`

Integration name: **EXIST\_GET\_CORRELATIONS**

Retrieve a paginated list of correlations discovered between tracked attributes in the last week. Correlations reveal statistical relationships between different metrics (e.g., sleep duration vs mood). Filter by relationship strength, confidence level (statistical significance), or specific attributes. Returns correlation coefficients, p-values, and human-readable descriptions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example   | Description                                                                                                                                                 |
| ----------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`      | integer |          | `1`       | Page index (default 1)                                                                                                                                      |
| `limit`     | integer |          | `20`      | Number of items per page (max 100)                                                                                                                          |
| `strong`    | boolean |          | `true`    | Filter to return only correlations above a certain relationship strength threshold (stronger correlations indicate closer relationships between attributes) |
| `attribute` | string  |          | `"steps"` | Filter correlations to this attribute name                                                                                                                  |
| `confident` | boolean |          | `true`    | Filter to return only correlations with five-star confidence (highest statistical significance, certain to be related)                                      |

***

### `Exist Get Insights`

Integration name: **EXIST\_GET\_INSIGHTS**

Tool to retrieve automatically-generated insights about patterns in tracked data for the authenticated user. Insights are observations about correlations, trends, and anomalies (e.g., "You walked more on days you slept well"). Use when analyzing user behavior patterns or displaying personalized feedback.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example        | Description                                                                  |
| ---------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------- |
| `page`     | integer |          | `1`            | Page index, 1-based. Defaults to 1.                                          |
| `limit`    | integer |          | `20`           | Number of insights to return per page (max 100)                              |
| `date_max` | string  |          | `"2024-12-31"` | Most recent date (inclusive) of results to be returned, in format YYYY-MM-DD |
| `date_min` | string  |          | `"2024-01-01"` | Oldest date (inclusive) of results to be returned, in format YYYY-MM-DD      |
| `priority` | integer |          | `1`            | Filter by insight priority, where 1 = today and 4 = last month               |

***

### `Exist Get Owned Attributes`

Integration name: **EXIST\_GET\_OWNED\_ATTRIBUTES**

Tool to retrieve attributes owned by your service for the authenticated user. Use when you need to limit data updates to only the attributes your service controls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                        | Description                                                                     |
| ---------------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------- |
| `page`                 | integer |          | `1`                            | Page index, 1-based. Defaults to 1.                                             |
| `limit`                | integer |          | `20`                           | Number of results per page.                                                     |
| `groups`               | array   |          | `["activity","workouts"]`      | Filter by attribute groups. Provide a list, e.g. \['activity','workouts'].      |
| `manual`               | boolean |          | `true`                         | If true, only manual attributes; if false, excludes them.                       |
| `attributes`           | array   |          | `["sleep_efficiency","steps"]` | Filter by attribute names. Provide a list, e.g. \['sleep\_efficiency','steps']. |
| `exclude_custom`       | boolean |          | `true`                         | If true, only templated attributes are returned.                                |
| `include_inactive`     | boolean |          | `true`                         | If true, includes inactive attributes (active=false).                           |
| `include_low_priority` | boolean |          | `true`                         | If true, includes attributes with priority >= 10.                               |

***

### `Exist Get User Attributes`

Integration name: **EXIST\_GET\_USER\_ATTRIBUTES**

Tool to retrieve a paged list of the user's attributes without values. Use when you need metadata on available attributes for filtering or selection. Omitting `groups` and `attributes` filters returns the full attribute catalog; use those filters to narrow results and avoid oversized responses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                        | Description                                                                     |
| ---------------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------- |
| `page`                 | integer |          | `1`                            | Page index, 1-based. Defaults to 1.                                             |
| `limit`                | integer |          | `20`                           | Number of results per page.                                                     |
| `owned`                | boolean |          | `true`                         | If true, only attributes owned by this client are returned.                     |
| `groups`               | array   |          | `["activity","workouts"]`      | Filter by attribute groups. Provide a list, e.g. \['activity','workouts'].      |
| `manual`               | boolean |          | `true`                         | If true, only manual attributes; if false, excludes them.                       |
| `attributes`           | array   |          | `["sleep_efficiency","steps"]` | Filter by attribute names. Provide a list, e.g. \['sleep\_efficiency','steps']. |
| `exclude_custom`       | boolean |          | `true`                         | If true, only templated attributes are returned.                                |
| `include_inactive`     | boolean |          | `true`                         | If true, includes inactive attributes (active=false).                           |
| `include_low_priority` | boolean |          | `true`                         | If true, includes attributes with priority >= 10.                               |

***

### `Exist Get User Profile`

Integration name: **EXIST\_GET\_USER\_PROFILE**

Tool to retrieve the authenticated user's profile details and preferences. Use after authentication to inspect account settings and status. OAuth scopes granted during authentication determine which fields are returned; missing fields indicate insufficient scopes. Response includes a timezone field; use it when interpreting any date-based attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Exist Increment Attribute Values`

Integration name: **EXIST\_INCREMENT\_ATTRIBUTE\_VALUES**

Tool to increment attribute values by a delta amount rather than setting totals. Use for counters and cumulative data. Does not work with string, scale, or time of day attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type  | Required | Example                                                                                                 | Description                                                                                                                    |
| ------------ | ----- | :------: | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `attributes` | array |     ✅    | `[{"date":"2026-02-14","name":"steps","value":100},{"date":"2026-02-14","name":"push_ups","value":10}]` | List of attributes to increment with name, date, and delta value. Does not work with string, scale, or time of day attributes. |

***

### `Exist Oauth2 Authorize`

Integration name: **EXIST\_OAUTH2\_AUTHORIZE**

Constructs an OAuth2 authorization URL for Exist.io. This tool generates the URL that users must visit in their browser to grant permissions to your application. After user consent, Exist redirects back to your redirect\_uri with an authorization code that can be exchanged for an access token. This action does not make an API call - it only builds the authorization URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                          | Description                                                                                                                                                                                                                                                                                                                                   |
| --------------- | ------ | :------: | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`         | string |     ✅    | `"manual_read manual_write"`     | Space-separated list of permission scopes to request. Available scopes follow the pattern \[category]\_read or \[category]\_write. Categories include: activity, productivity, mood, sleep, workouts, events, finance, food, health, location, media, social, weather, custom, and manual. Example: 'activity\_read mood\_write custom\_read' |
| `state`         | string |          | `"random_csrf_token"`            | Optional opaque value used to maintain state between the authorization request and callback. Recommended for CSRF protection - generate a random token, store it in your session, and verify it matches when the user returns to your redirect\_uri                                                                                           |
| `client_id`     | string |     ✅    | `"your_client_id_here"`          | The client application's ID, as assigned by Exist                                                                                                                                                                                                                                                                                             |
| `redirect_uri`  | string |     ✅    | `"https://yourapp.com/callback"` | HTTPS URI where the user will be redirected after authorization. Must match the redirect URI registered with your Exist OAuth2 client application. The authorization code will be appended as a query parameter to this URI                                                                                                                   |
| `response_type` | string |          | `"code"`                         | OAuth2 response type. Must be 'code' for authorization code flow. This parameter defaults to 'code' and typically does not need to be changed                                                                                                                                                                                                 |

***

### `Exist Release Attribute Ownership`

Integration name: **EXIST\_RELEASE\_ATTRIBUTE\_OWNERSHIP**

Tool to release ownership of attributes for the authenticated user. Use when your service will stop providing data for an attribute or becomes inactive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type  | Required | Example                                  | Description                                                                    |
| ------------ | ----- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------ |
| `attributes` | array |     ✅    | `[{"name":"mood"},{"name":"mood_note"}]` | List of attributes to release ownership of. Maximum 35 attributes per request. |

***


# Facebook

Your Toolhouse AI Worker can connect to Facebook using 43 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](https://toolhouse.app/auth-connections?authkit_slugs=facebook).

## Tools (43)

### `Facebook Assign Page Task`

Integration name: **FACEBOOK\_ASSIGN\_PAGE\_TASK**

Assigns tasks/roles to a business-scoped user or system user for a specific Facebook Page. Important: This action requires a business-scoped user ID or system user ID from Facebook Business Manager. Regular Facebook user IDs cannot be used. The page must also be managed through Facebook Business Manager for this action to work. Required permissions: business\_management, pages\_manage\_metadata

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user`    | string |     ✅    | —       | The business-scoped user ID or system user ID to assign tasks to. Note: Regular Facebook user IDs are not accepted - only business-scoped IDs (from Business Manager) or system user IDs can be used with this endpoint. |
| `tasks`   | array  |     ✅    | —       | List of tasks to assign. Valid values include: 'MANAGE', 'CREATE\_CONTENT', 'MODERATE', 'ADVERTISE', 'ANALYZE', 'MESSAGING'. Example: \['MANAGE', 'CREATE\_CONTENT']                                                     |
| `page_id` | string |     ✅    | —       | The ID of the Facebook Page                                                                                                                                                                                              |

***

### `Facebook Create Comment`

Integration name: **FACEBOOK\_CREATE\_COMMENT**

Creates a comment on a Facebook post or replies to an existing comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example | Description                                                                                                                                                                                                                          |
| ---------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `message`              | string |     ✅    | —       | The text content of the comment                                                                                                                                                                                                      |
| `object_id`            | string |     ✅    | —       | The ID of the post or comment to comment on. Must be a numeric ID (e.g., '3071372469667482') or compound format 'pageId\_postId' (e.g., '678465505624869\_3071372469667482'). Do not include prefixes like 'post\_', 'id\_', or 'p'. |
| `attachment_id`        | string |          | —       | ID of an unpublished photo to attach to the comment                                                                                                                                                                                  |
| `attachment_url`       | string |          | —       | URL of a photo to attach to the comment                                                                                                                                                                                              |
| `attachment_share_url` | string |          | —       | URL of a GIF to attach to the comment                                                                                                                                                                                                |

***

### `Facebook Create Photo Album`

Integration name: **FACEBOOK\_CREATE\_PHOTO\_ALBUM**

Creates a new photo album on a Facebook Page. Note: This endpoint requires the 'pages\_manage\_posts' permission or equivalent permissions to be granted to your Facebook application. This action is publicly visible on the Page; confirm with the user before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                 |
| ---------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `name`     | string |     ✅    | —       | Name of the photo album                                                                                     |
| `message`  | string |          | —       | Description of the album                                                                                    |
| `page_id`  | string |     ✅    | —       | The ID of the Facebook Page Must be a Facebook Page ID — personal profile or user timeline IDs are invalid. |
| `privacy`  | object |          | —       | Privacy settings for the album (e.g., {'value': 'EVERYONE'})                                                |
| `location` | string |          | —       | Location associated with the album                                                                          |

***

### `Facebook Create Photo Post`

Integration name: **FACEBOOK\_CREATE\_PHOTO\_POST**

Creates a photo post on a Facebook Page. Requires an image to be provided via either 'url' (publicly accessible image URL) or 'photo' (local image file upload). This action is specifically for posting images with optional captions, not text-only posts. Returns a composite post\_id (PageID\_PostID); use this for follow-up operations, not the photo/media id alone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ---------------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                        | string  |          | —       | URL of a publicly accessible image to upload. Supports direct image links with or without file extensions (e.g., <https://example.com/image.jpg> or hash-based URLs from services like Imgur, Gyazo, Postimages). The image host must not block requests from Facebook. Cannot be a Facebook URL. At least one of 'url', 'photo', or 'media' is required. The URL must return an image MIME type directly — redirects or HTML pages cause upload failures. |
| `media`                      | object  |          | —       | Alias for 'photo'. for uploading a local image file (e.g..jpg.png.gif). At least one of 'media', 'photo', or 'url' is required.                                                                                                                                                                                                                                                                                                                            |
| `photo`                      | object  |          | —       | for uploading a local image file (e.g..jpg.png.gif). At least one of 'photo', 'url', or 'media' is required.                                                                                                                                                                                                                                                                                                                                               |
| `message`                    | string  |          | —       | Caption text for the photo. Can also be provided as 'caption'.                                                                                                                                                                                                                                                                                                                                                                                             |
| `page_id`                    | string  |     ✅    | —       | The numeric ID of the Facebook Page to post to. Can be provided as a string or number.                                                                                                                                                                                                                                                                                                                                                                     |
| `published`                  | boolean |          | —       | Set to true to publish immediately, false to save as unpublished                                                                                                                                                                                                                                                                                                                                                                                           |
| `backdated_time`             | integer |          | —       | Unix timestamp to backdate the post                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `scheduled_publish_time`     | integer |          | —       | Unix timestamp for scheduled posts (required if published=false) Must be a future UTC epoch timestamp. Providing this with published=true triggers a 400 validation error.                                                                                                                                                                                                                                                                                 |
| `backdated_time_granularity` | string  |          | —       | Granularity of backdated time: year, month, day, hour, or min                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Facebook Create Post`

Integration name: **FACEBOOK\_CREATE\_POST**

Creates a new text or link post on a Facebook Page. Requires `pages_manage_posts` permission and manage-level Page role on the target Page. For image posts use FACEBOOK\_CREATE\_PHOTO\_POST; for video posts use FACEBOOK\_CREATE\_VIDEO\_POST — media fields are not supported here. Returns a composite post ID in `PageID_PostID` format, required for FACEBOOK\_GET\_POST retrieval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                                                                                                                                                          |
| ------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `link`                   | string  |          | —       | URL to include in the post                                                                                                                                                                                                                                           |
| `message`                | string  |     ✅    | —       | The text content of the post At least one of `message` or `link` must be non-empty; omitting both causes a validation error.                                                                                                                                         |
| `page_id`                | string  |     ✅    | —       | The numeric ID of the Facebook Page to post to. This is a numeric string (e.g., '123456789012345'). To obtain a valid page\_id, use the 'Get User Pages' or 'List Managed Pages' action which returns page IDs for pages you have access to manage.                  |
| `published`              | boolean |          | —       | Set to true to publish immediately, false to save as draft or schedule                                                                                                                                                                                               |
| `targeting`              | object  |          | —       | Audience targeting specifications                                                                                                                                                                                                                                    |
| `scheduled_publish_time` | integer |          | —       | Unix timestamp for when the post should be published. Must be at least 10 minutes in the future. When provided, published must be false (will be auto-set to false if true). Must be Unix UTC epoch (not local time); timezone mismatches cause validation failures. |

***

### `Facebook Create Video Post`

Integration name: **FACEBOOK\_CREATE\_VIDEO\_POST**

Creates a video post on a Facebook Page. Requires a Page access token with `pages_manage_posts` scope and manage-level permissions on the target page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                                                                                                                                                |
| ------------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`                  | string  |          | —       | Title of the video                                                                                                                                                                                                                                         |
| `video`                  | object  |          | —       | Local video file to upload. At least one of 'video' or 'file\_url' must be provided.                                                                                                                                                                       |
| `page_id`                | string  |     ✅    | —       | The ID of the Facebook Page Must be a Facebook Page ID (not a personal profile ID); the authenticated token must have manage-level access.                                                                                                                 |
| `file_url`               | string  |          | —       | URL of the video file to upload. At least one of 'file\_url' or 'video' must be provided. Must be a direct download URL (e.g., direct MP4 link), not a watch/share URL. Use MP4 with H.264/AAC encoding; unsupported formats or very large files may fail. |
| `published`              | boolean |          | —       | Whether to publish immediately                                                                                                                                                                                                                             |
| `targeting`              | object  |          | —       | Audience targeting specifications                                                                                                                                                                                                                          |
| `description`            | string  |          | —       | Description of the video                                                                                                                                                                                                                                   |
| `scheduled_publish_time` | integer |          | —       | Unix timestamp to schedule the video post Requires `published=false`; must be a UTC Unix epoch at least \~10 minutes in the future. Combining with `published=true` or omitting when `published=false` causes 400 errors.                                  |

***

### `Facebook Delete Comment`

Integration name: **FACEBOOK\_DELETE\_COMMENT**

Deletes a Facebook comment. Requires a Page Access Token with appropriate permissions for comments on Page-owned content. The page\_id parameter helps ensure the correct page token is used for authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                                                                            |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id`    | string |          | —       | Optional: The ID of the Facebook Page that owns the post containing this comment. If not provided, the action will use the first available managed page. Providing the correct page\_id ensures proper authentication. |
| `comment_id` | string |     ✅    | —       | The ID of the comment to delete. Can be in format 'parentId\_commentId' (e.g., '122157027176937815\_1371138271476143') or just the comment ID.                                                                         |

***

### `Facebook Delete Post`

Integration name: **FACEBOOK\_DELETE\_POST**

Permanently deletes a Facebook Page post. Deletion is irreversible — deleted posts cannot be recovered. For bulk deletions, keep throughput to \~1 delete/second to avoid Graph API rate limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                       |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `post_id` | string |     ✅    | —       | The ID of the post to delete The token must have Page-level delete permissions for this post. Posts created by other users or requiring elevated Page roles may not be deletable. |

***

### `Facebook Get Comment`

Integration name: **FACEBOOK\_GET\_COMMENT**

Retrieves details of a specific Facebook comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                              |
| ------------ | ------ | :------: | ------- | ---------------------------------------- |
| `fields`     | string |          | —       | Comma-separated list of fields to return |
| `comment_id` | string |     ✅    | —       | The ID of the comment to retrieve        |

***

### `Facebook Get Comments`

Integration name: **FACEBOOK\_GET\_COMMENTS**

Retrieves comments from a Facebook post or comment (for replies). This endpoint requires appropriate permissions: - For page-owned posts: A Page Access Token with 'pages\_read\_engagement' permission - The API automatically swaps user tokens for page tokens when available API Version: Uses v23.0 which was released May 2025.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                |
| ----------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`     | integer |          | —       | Number of comments to return (max 100)                                                                                                                                                                                                                                                                                                                                     |
| `order`     | string  |          | —       | Order of comments: 'chronological' (oldest first) or 'reverse\_chronological' (newest first, default).                                                                                                                                                                                                                                                                     |
| `fields`    | string  |          | —       | Comma-separated list of fields to return for each comment. Available fields: id, message, created\_time, from, attachment, comment\_count, like\_count, is\_hidden, user\_likes, can\_comment, can\_remove, can\_hide, permalink\_url, parent, comments (for nested replies). Note: 'from' field requires a Page Token to access user information (since Graph API v2.11). |
| `filter`    | string  |          | —       | Filter comments by type: 'stream' returns all comments including replies in flat list (default), 'toplevel' returns only top-level comments without replies.                                                                                                                                                                                                               |
| `object_id` | string  |     ✅    | —       | The ID of the post or comment to get comments from. Must be in full format 'pageId\_postId' for posts (e.g., '123456789\_987654321'). For comments, use the comment ID directly.                                                                                                                                                                                           |

***

### `Facebook Get Conversation Messages`

Integration name: **FACEBOOK\_GET\_CONVERSATION\_MESSAGES**

Retrieves messages from a specific conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                                                  |
| ----------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`           | integer |          | —       | Number of messages to return (max 25) To retrieve full histories, paginate using `paging.cursors.after` or the `next` URL from the response.                                                                                                                 |
| `fields`          | string  |          | —       | Comma-separated list of fields to return for each message. Available fields include: id, created\_time, from, to, message, attachments, sticker, shares, tags.                                                                                               |
| `page_id`         | string  |     ✅    | —       | The ID of the Facebook Page that owns the conversation. Required to obtain the correct page access token. Get this from the List Managed Pages action.                                                                                                       |
| `conversation_id` | string  |     ✅    | —       | The ID of the conversation in the format 't\_' followed by a numeric ID (e.g., 't\_3638640842939952'). Obtain valid conversation IDs from the Get Page Conversations action. If a numeric-only ID is provided, the 't\_' prefix will be added automatically. |

***

### `Facebook Get Current User`

Integration name: **FACEBOOK\_GET\_CURRENT\_USER**

Validates the access token and retrieves the authenticated user's own profile via /me. Cannot fetch arbitrary users by name or ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`  | string |          | —       | Comma-separated list of fields to return for the current user Fields are silently omitted or return null if the access token lacks the required Facebook permissions — including defaults like `email`. Handle missing fields defensively. |

***

### `Facebook Get Message Details`

Integration name: **FACEBOOK\_GET\_MESSAGE\_DETAILS**

Retrieves details of a specific message sent or received by the Page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                   |
| ------------ | ------ | :------: | ------- | --------------------------------------------- |
| `fields`     | string |          | —       | Comma-separated list of fields to return      |
| `message_id` | string |     ✅    | —       | The ID of the message to retrieve details for |

***

### `Facebook Get Page Conversations`

Integration name: **FACEBOOK\_GET\_PAGE\_CONVERSATIONS**

Retrieves a list of conversations between users and the Page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                              |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Number of conversations to return (max 25) Use `paging.cursors.after` or `paging.next` from the response to paginate beyond the first page.              |
| `fields`  | string  |          | —       | Comma-separated list of fields to return for each conversation Avoid requesting heavy nested fields (e.g., embedded messages) to prevent large payloads. |
| `page_id` | string  |     ✅    | —       | The ID of the Facebook Page. Numeric IDs are accepted and will be converted to strings.                                                                  |

***

### `Facebook Get Page Details`

Integration name: **FACEBOOK\_GET\_PAGE\_DETAILS**

Fetches details about a specific Facebook Page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`  | string |          | —       | Comma-separated list of fields to return for the Page. Common valid fields include: id, name, about, category, description, fan\_count, followers\_count, website, link, username, is\_published, access\_token, emails, phone, location, hours, cover, picture, engagement, verification\_status, and many more. IMPORTANT: The following fields are NOT valid for direct Page queries and will be automatically filtered out: 'tasks' (only available via /me/accounts endpoint - use FACEBOOK\_LIST\_MANAGED\_PAGES to get page tasks), 'created\_time' (not supported on all page node types such as ProfileDelegatePage). For a complete list of valid Page fields, refer to the Facebook Graph API Page reference. |
| `page_id` | string |     ✅    | —       | The unique numeric ID of the Facebook Page to get details for. This must be a valid Facebook Page ID that the authenticated user has access to view. Facebook Page IDs are numeric strings typically 15-16 digits long (e.g., '678594635343968'). To find valid page IDs you have access to, first use the FACEBOOK\_LIST\_MANAGED\_PAGES or FACEBOOK\_GET\_USER\_PAGES actions to retrieve a list of pages you manage, which will include their IDs. You can also find a page's ID in its Facebook URL (e.g., <https://www.facebook.com/123456789012345>) or in the Page's 'About' section. Do not use arbitrary numbers, timestamps, bank account numbers, or other non-Facebook identifiers.                          |

***

### `Facebook Get Page Insights`

Integration name: **FACEBOOK\_GET\_PAGE\_INSIGHTS**

Retrieves analytics and insights for a Facebook Page. Returns metrics like impressions, page views, fan counts, and engagement data. Empty objects (`{}`) in results indicate missing data, not zero values. High-volume calls risk Graph API rate limits (error codes 4/613).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `since`   | string |          | —       | Start of date range as Unix timestamp (e.g., '1704067200'), ISO 8601 datetime (e.g., '2024-10-01T00:00:00+0000', '2024-10-01'), or strtotime-compatible string (e.g., 'yesterday', '-7 days'). Maximum range is 90 days when combined with 'until'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `until`   | string |          | —       | End of date range as Unix timestamp (e.g., '1704672000'), ISO 8601 datetime (e.g., '2025-01-29T05:12:31+0000', '2025-01-29'), or strtotime-compatible string (e.g., 'now', '-1 day'). Maximum range is 90 days when combined with 'since'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `period`  | string |          | —       | Period for the metrics: day, week, days\_28, month, lifetime Using `lifetime` with bounded `since`/`until` ranges produces misleading or empty results. Standardize all date inputs to UTC.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `metrics` | string |          | —       | Comma-separated list of metrics to retrieve. VALID METRICS: page\_follows (total followers), page\_daily\_follows\_unique (new follows), page\_daily\_unfollows\_unique (unfollows), page\_media\_view (content views), page\_post\_engagements (engagement count), page\_video\_views (video views), page\_total\_actions (CTA clicks), page\_actions\_post\_reactions\_total (reactions breakdown). DEPRECATED (will be auto-replaced): page\_impressions -> page\_media\_view, page\_fans -> page\_follows, page\_engaged\_users -> page\_post\_engagements, page\_fan\_adds -> page\_daily\_follows\_unique. Individual reaction metrics (page\_actions\_post\_reactions\_like\_total, etc.) are deprecated; use page\_actions\_post\_reactions\_total instead. Not all metric/period combinations are valid; incompatible combinations return empty data — reduce metrics list or adjust period if this occurs. |
| `page_id` | string |     ✅    | —       | The ID of the Facebook Page Must be a numeric Page ID; page names, URLs, and personal profile IDs are invalid.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Facebook Get Page Photos`

Integration name: **FACEBOOK\_GET\_PAGE\_PHOTOS**

Retrieves photos from a Facebook Page. CDN-based URLs (including `source`) are time-limited and expire; download and persist images promptly if long-term access is needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`    | string  |          | —       | Filter by photo type: uploaded, tagged                                                                                                                                                                                                                                                                                                                                                                                                             |
| `limit`   | integer |          | —       | Number of photos to return (max 100) Use paging cursors from the response to iterate through all available photos in large libraries; limit=100 does not guarantee all photos are returned in one call.                                                                                                                                                                                                                                            |
| `fields`  | string  |          | —       | Comma-separated list of valid Photo fields to return. Valid fields include: id, created\_time, updated\_time, name, images, height, width, picture, link, icon, from, album, backdated\_time, place, page\_story\_id, target, event, can\_delete, can\_tag, webp\_images. NOTE: 'reactions' and 'comments' are NOT valid fields - they are edges that must be accessed via separate API calls (e.g., /{photo-id}/reactions, /{photo-id}/comments). |
| `page_id` | string  |     ✅    | —       | The numeric ID of the Facebook Page (e.g., '678594635343968'). You can obtain page IDs using the FACEBOOK\_LIST\_MANAGED\_PAGES action. Do NOT pass datetime strings, timestamps, or date values - only valid Facebook page IDs.                                                                                                                                                                                                                   |

***

### `Facebook Get Page Posts`

Integration name: **FACEBOOK\_GET\_PAGE\_POSTS**

Retrieves posts from a Facebook Page. Endpoint choice: Uses /{page\_id}/feed instead of /posts or /published\_posts because: - /feed returns all content on page timeline (page's posts + visitor posts + tagged posts) - /posts returns only posts created by the page itself - /published\_posts returns only published posts by the page (excludes scheduled/unpublished) The /feed endpoint provides the most comprehensive view of page activity. Pagination: follow paging.cursors.after or paging.next across multiple calls until no next cursor exists. Throttling: high-volume pagination can trigger Graph API errors 4 and 613; use backoff between requests. API Version: Uses v23.0 (released May 2025). v20.0 and earlier will be deprecated by Meta. See: <https://developers.facebook.com/docs/graph-api/changelog>

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| --------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`                     | integer |          | —       | Number of posts to return (max 100)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `since`                     | string  |          | —       | Filter posts updated after this time. Accepts: Unix timestamp (e.g., '1705320000'), strtotime values (e.g., 'yesterday', '7 days ago', 'last week'), or datetime strings (e.g., '2024-01-15', '2024-01-15T12:00:00'). Datetime strings are automatically converted to Unix timestamps.                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `until`                     | string  |          | —       | Filter posts updated before this time. Accepts: Unix timestamp (e.g., '1705320000'), strtotime values (e.g., 'yesterday', '7 days ago', 'last week'), or datetime strings (e.g., '2024-01-15', '2024-01-15T12:00:00'). Datetime strings are automatically converted to Unix timestamps.                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `fields`                    | string  |          | —       | Comma-separated list of fields to return for each post. Supported fields include: id, message, created\_time, updated\_time, permalink\_url, attachments, story, from, status\_type, full\_picture, shares, reactions, comments, is\_hidden, is\_published. For summary counts, use '.summary(true)' syntax (e.g., 'reactions.summary(true)', 'comments.summary(true)', 'likes.summary(true)'). Note: 'type', 'link', 'source', 'picture', 'name', 'caption', 'description', and 'icon' are deprecated since Graph API v3.3 and will be automatically removed if requested. Response nests engagement data: extract reactions.summary.total\_count, comments.summary.total\_count, and shares.count; treat missing keys as zero. |
| `page_id`                   | string  |     ✅    | —       | The ID of the Facebook Page. Can be provided as a string or number. Must be a Facebook Page ID, not a personal profile or user ID — use FACEBOOK\_GET\_USER\_PAGES to obtain a valid Page ID.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `removed_deprecated_fields` | array   |          | —       | Internal field to track deprecated fields that were automatically removed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Facebook Get Page Roles`

Integration name: **FACEBOOK\_GET\_PAGE\_ROLES**

Retrieves a list of people and their tasks/roles on a Facebook Page. The connected account must have management access to the target Page; otherwise the response may be empty or incomplete. Returned role types include MANAGE and CREATE\_CONTENT — verify these before calling tools like FACEBOOK\_UPDATE\_PAGE\_SETTINGS. Recently changed roles may take time to propagate; retry if role data appears stale after an update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                     |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor string for forward pagination. Use the 'after' cursor from a previous response's paging.cursors.after field to retrieve the next page of results.        |
| `limit`   | integer |          | —       | Maximum number of roles to return per request.                                                                                                                  |
| `before`  | string  |          | —       | Cursor string for backward pagination. Use the 'before' cursor from a previous response's paging.cursors.before field to retrieve the previous page of results. |
| `page_id` | string  |     ✅    | —       | The ID of the Facebook Page                                                                                                                                     |

***

### `Facebook Get Page Tagged Posts`

Integration name: **FACEBOOK\_GET\_PAGE\_TAGGED\_POSTS**

Retrieves posts where a Facebook Page is tagged or mentioned. Use when monitoring brand mentions or tracking posts that tag your Page but don't appear on your Page's own feed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                                                                             |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Number of posts to return (max 100)                                                                                                                                                                                                                                                     |
| `since`   | string  |          | —       | Filter posts updated after this time. Accepts: Unix timestamp (e.g., '1705320000'), strtotime values (e.g., 'yesterday', '7 days ago', 'last week'), or datetime strings (e.g., '2024-01-15', '2024-01-15T12:00:00'). Datetime strings are automatically converted to Unix timestamps.  |
| `until`   | string  |          | —       | Filter posts updated before this time. Accepts: Unix timestamp (e.g., '1705320000'), strtotime values (e.g., 'yesterday', '7 days ago', 'last week'), or datetime strings (e.g., '2024-01-15', '2024-01-15T12:00:00'). Datetime strings are automatically converted to Unix timestamps. |
| `fields`  | string  |          | —       | Comma-separated list of fields to return for each post                                                                                                                                                                                                                                  |
| `page_id` | string  |     ✅    | —       | The ID of the Facebook Page. Can be provided as a string or number.                                                                                                                                                                                                                     |

***

### `Facebook Get Page Videos`

Integration name: **FACEBOOK\_GET\_PAGE\_VIDEOS**

Retrieves videos from a Facebook Page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                              |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`    | string  |          | —       | Filter by video type: uploaded, tagged                                                                                                                                                                                                   |
| `limit`   | integer |          | —       | Number of videos to return (max 100) Controls only the first batch; iterate through paging cursors (`paging.cursors.after`) until no `next` page is returned to retrieve all videos.                                                     |
| `fields`  | string  |          | —       | Comma-separated list of fields to return for each video The `source` field returns time-limited URLs; download or process promptly rather than storing for later use.                                                                    |
| `page_id` | string  |     ✅    | —       | The numeric ID of the Facebook Page. This is a numeric string (e.g., '123456789012345'). To obtain a valid page\_id, use the 'Get User Pages' or 'List Managed Pages' action which returns page IDs for pages you have access to manage. |

***

### `Facebook Get Post`

Integration name: **FACEBOOK\_GET\_POST**

Retrieves details of a specific Facebook post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`  | string |          | —       | Comma-separated list of fields to return. Common fields: id, message, created\_time, updated\_time, permalink\_url, from, attachments, shares, story, picture, full\_picture, place, privacy, status\_type. For engagement metrics with counts, use edge.summary(true) syntax. CORRECT: likes.summary(true), comments.summary(true), reactions.summary(true). WRONG: likes.summary(total\_count) - using 'total\_count' as parameter causes API syntax errors. The 'true' parameter enables the summary, and total\_count is returned in the response automatically. Note: Legacy post fields (name, link, description, type) are deprecated; use 'attachments' edge instead. |
| `post_id` | string |     ✅    | —       | The ID of the post to retrieve. Must be in full format: 'pageId\_postId' where both pageId and postId are numeric (e.g., '123456789\_987654321'). Page-scoped IDs (alphanumeric strings like '1ANtnBaCHX' or '17GandZR1N') are not supported. Use FACEBOOK\_GET\_PAGE\_POSTS to obtain valid full-format post IDs.                                                                                                                                                                                                                                                                                                                                                            |

***

### `Facebook Get Post Insights`

Integration name: **FACEBOOK\_GET\_POST\_INSIGHTS**

Retrieves analytics and insights for a specific Facebook post. Returns metrics like impressions, clicks, and engagement data. Very new posts may return empty metric values; allow a short delay before querying and treat absent fields as partial data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `period`  | string |          | —       | Period for the metrics (only applicable for some metrics): lifetime Supports since/until parameters in UTC; convert from user timezone to avoid misleading aggregates when comparing posts across time windows.                                                                                                                                                                                                                                                                                                           |
| `metrics` | string |          | —       | Comma-separated list of metrics to retrieve. Valid metric: post\_media\_view (the number of times the post entered a person's screen). Note: Older metrics like post\_impressions, post\_impressions\_unique, post\_clicks, post\_engagements, post\_engaged\_users, post\_reactions\_by\_type\_total were deprecated by Facebook as of November 15, 2025 and are no longer supported. Request only needed metrics to reduce payload size and avoid rate limit errors (error codes 4/613) when iterating over many posts. |
| `post_id` | string |     ✅    | —       | The ID of the post to get insights for                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Facebook Get Post Reactions`

Integration name: **FACEBOOK\_GET\_POST\_REACTIONS**

Retrieves reactions (like, love, wow, etc.) for a Facebook post. Very recent posts may return empty or partial reactions data; treat missing fields as incomplete coverage, not an error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `type`    | string  |          | —       | Filter by reaction type: LIKE, LOVE, WOW, HAHA, SAD, ANGRY, THANKFUL |
| `limit`   | integer |          | —       | Number of reactions to return (max 100)                              |
| `post_id` | string  |     ✅    | —       | The ID of the post to get reactions for                              |
| `summary` | boolean |          | —       | Include summary with total count per reaction type                   |

***

### `Facebook Get Scheduled Posts`

Integration name: **FACEBOOK\_GET\_SCHEDULED\_POSTS**

Retrieves scheduled and unpublished posts for a Facebook Page. Results are cursor-paginated; follow pagination cursors to retrieve all results beyond the limit. When searching for posts near a specific time, filter to a narrow (\~±5 minutes) window. Use this tool to check for existing entries before scheduling new posts to avoid duplicates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                            |
| --------- | ------- | :------: | ------- | ------------------------------------------------------ |
| `limit`   | integer |          | —       | Number of posts to return (max 100)                    |
| `fields`  | string  |          | —       | Comma-separated list of fields to return for each post |
| `page_id` | string  |     ✅    | —       | The ID of the Facebook Page                            |

***

### `Facebook Get User Pages`

Integration name: **FACEBOOK\_GET\_USER\_PAGES**

DEPRECATED: Use FACEBOOK\_LIST\_MANAGED\_PAGES instead. Retrieves Facebook Pages the user manages (excludes personal profiles, groups, and non-Page entities); an empty `data` array means no manageable Pages exist. Requires `pages_show_list` scope; missing scopes yield empty `data` or OAuthException code 200. Results paginate \~100 items per page — follow `paging.cursors.after` or `next` until exhausted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`                      | string  |          | —       | Cursor string for pagination. Use the 'after' cursor from a previous response's paging.cursors.after field to retrieve the next page of results.                                                                                                                                                                                                                                                                                                                                                    |
| `limit`                      | integer |          | —       | Maximum number of pages to return per request.                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `fields`                     | string  |          | —       | Comma-separated list of fields to return for each page. Supported fields include: id, name, access\_token, tasks, category, category\_list, picture, link, fan\_count, followers\_count, is\_published, global\_brand\_page\_name, instagram\_business\_account, verification\_status, is\_webhooks\_subscribed. Always include `id` and `name` to avoid extra identity-resolution calls. Check `tasks` values before write actions — Page inclusion does not guarantee publish/manage permissions. |
| `user_id`                    | string  |          | —       | The ID of the user whose pages to retrieve. Defaults to 'me' for current user.                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `composio_execution_message` | string  |          | —       | Execution message from preprocessing.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Facebook Like Post Or Comment`

Integration name: **FACEBOOK\_LIKE\_POST\_OR\_COMMENT**

Adds a LIKE reaction to a Facebook post or comment. Note: Due to API limitations, only LIKE reactions can be added programmatically. This action is user-visible and irreversible — confirm with the user before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                    |
| ----------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`      | string |          | —       | Reaction type: Currently only LIKE is supported via API. Other reactions (LOVE, WOW, HAHA, SAD, ANGRY, THANKFUL) cannot be added programmatically                                                                                                                                                                                                                                              |
| `object_id` | string |     ✅    | —       | The ID of the post or comment to react to. Facebook IDs are numeric strings (typically 15-20 digits). Must belong to a Page post or comment, not a personal profile timeline.IMPORTANT: Always pass IDs as strings to preserve precision. Integer values will be converted to strings, but float values (including scientific notation like 5.3e+32) are rejected because they lose precision. |

***

### `Facebook List Managed Pages`

Integration name: **FACEBOOK\_LIST\_MANAGED\_PAGES**

Retrieves a list of Facebook Pages that the user manages (not personal profiles), including page details, access tokens, and tasks. Requires `pages_show_list` or `pages_read_engagement` OAuth scopes; missing scopes silently return empty results rather than an error. An empty `data` array means the user manages no Pages. Results are paginated via `paging.cursors`; follow `paging.next` until absent to retrieve all Pages when count exceeds `limit`. Graph API throttling (error codes 4, 17, 613) can occur during pagination — use exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                     |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor string for forward pagination. Use the 'after' cursor from a previous response's paging.cursors.after field to retrieve the next page of results.        |
| `limit`   | integer |          | —       | Maximum number of pages to retrieve per request.                                                                                                                |
| `before`  | string  |          | —       | Cursor string for backward pagination. Use the 'before' cursor from a previous response's paging.cursors.before field to retrieve the previous page of results. |
| `fields`  | string  |          | —       | Comma-separated list of fields to return for each managed page.                                                                                                 |
| `user_id` | string  |          | —       | The ID of the user whose managed pages to retrieve. Defaults to 'me' for current user.                                                                          |

***

### `Facebook Mark Message Seen`

Integration name: **FACEBOOK\_MARK\_MESSAGE\_SEEN**

Marks a user's message as seen by the Page, visibly updating the read status in the user's conversation. Note: This action requires an active messaging session with the user. Facebook's messaging policy requires that users have messaged the Page within the last 24 hours for sender actions to work.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                      |
| -------------- | ------ | :------: | ------- | ------------------------------------------------ |
| `page_id`      | string |     ✅    | —       | The ID of the Facebook Page                      |
| `recipient_id` | string |     ✅    | —       | The ID of the user whose message to mark as seen |

***

### `Facebook Publish Scheduled Post`

Integration name: **FACEBOOK\_PUBLISH\_SCHEDULED\_POST**

Publishes a previously scheduled or unpublished Facebook post immediately. This action takes a scheduled or unpublished post and publishes it immediately by setting is\_published to true. The post must have been previously created with published=false or with a scheduled\_publish\_time. Requirements: - The post must exist and be in an unpublished/scheduled state - The user must have admin access to the page that owns the post - The app must have pages\_manage\_posts permission

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                            |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id` | string |          | —       | Optional: The ID of the Facebook Page that owns the post. If not provided, it will be extracted from the post\_id (the part before the underscore).                                    |
| `post_id` | string |     ✅    | —       | The ID of the scheduled/unpublished post to publish. Format is typically 'pageId\_postId' (e.g., '123456789\_987654321'). Use 'Get Scheduled Posts' action to find scheduled post IDs. |

***

### `Facebook Remove Page Task`

Integration name: **FACEBOOK\_REMOVE\_PAGE\_TASK**

Removes a user's tasks/access from a specific Facebook Page. Caller must have admin-level rights on the Page. Operates on one page\_id at a time; repeat for each page if removing from multiple pages. Partial access may remain if only some tasks are revoked.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                             |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`    | string |     ✅    | —       | The ID or username of the user to remove Verify this matches the intended collaborator before calling; a mismatch revokes access for the wrong account. |
| `page_id` | string |     ✅    | —       | The ID of the Facebook Page                                                                                                                             |

***

### `Facebook Reschedule Post`

Integration name: **FACEBOOK\_RESCHEDULE\_POST**

Changes the scheduled publish time of an unpublished Facebook post. This action updates the scheduled\_publish\_time of a previously scheduled post. The post must have been created with published=false and a scheduled\_publish\_time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                 |
| ------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| `post_id`                | string  |     ✅    | —       | The ID of the scheduled post to reschedule. Format is typically 'pageId\_postId' (e.g., '123456789\_987654321').            |
| `scheduled_publish_time` | integer |     ✅    | —       | New Unix timestamp for when to publish the post. Must be at least 10 minutes in the future and no more than 6 months ahead. |

***

### `Facebook Search Pages`

Integration name: **FACEBOOK\_SEARCH\_PAGES**

Searches for Facebook Pages based on a query string. Returns pages matching the search criteria with requested fields. DEPRECATION WARNING: The /pages/search endpoint was deprecated by Facebook in 2019 and is now ONLY available to Workplace by Meta apps. Standard Facebook apps will receive Error #10 (permission error) regardless of which permissions or features have been granted. For Workplace apps only - requires one of: - 'pages\_read\_engagement' permission - 'Page Public Content Access' feature - 'Page Public Metadata Access' feature Standard Facebook apps should use alternative methods to discover pages, such as: - Direct page ID lookup via /{page-id} endpoint - User's managed pages via /me/accounts endpoint Reference: <https://developers.facebook.com/docs/apps/review/feature#reference-PAGES\\_ACCESS>. Results include only Facebook Pages; personal profiles, groups, and other entity types are excluded.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                               |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`   | integer |          | —       | Maximum number of results to return (max 100) A specific target page may not appear in a single response; refine the query string if the desired page is missing.                         |
| `query`   | string  |     ✅    | —       | Search query for finding pages (e.g., business name, topic, etc.)                                                                                                                         |
| `fields`  | string  |          | —       | Comma-separated list of fields to retrieve for each page Returned field data (e.g., fan\_count, location) can be sparse or outdated; avoid relying on a single field for selection logic. |

***

### `Facebook Send Media Message`

Integration name: **FACEBOOK\_SEND\_MEDIA\_MESSAGE**

Sends a media message (image, video, audio, or file) from the Page to a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                    |
| ---------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`            | string  |          | —       | Message tag required when messaging\_type is MESSAGE\_TAG. Valid tags include: CONFIRMED\_EVENT\_UPDATE, POST\_PURCHASE\_UPDATE, ACCOUNT\_UPDATE, HUMAN\_AGENT |
| `page_id`        | string  |     ✅    | —       | The ID of the Facebook Page sending the message                                                                                                                |
| `media_url`      | string  |     ✅    | —       | URL of the media to send                                                                                                                                       |
| `media_type`     | string  |     ✅    | —       | Type of media: image, video, audio, or file                                                                                                                    |
| `is_reusable`    | boolean |          | —       | Whether the attachment is reusable                                                                                                                             |
| `recipient_id`   | string  |     ✅    | —       | The ID of the message recipient (user ID or PSID)                                                                                                              |
| `messaging_type` | string  |          | —       | The messaging type - RESPONSE, UPDATE, or MESSAGE\_TAG                                                                                                         |

***

### `Facebook Send Message`

Integration name: **FACEBOOK\_SEND\_MESSAGE**

Sends a text message from a Facebook Page (not personal profiles) to a user via Messenger. Requires explicit user confirmation before calling, as this action delivers a message to a real end user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                  |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tag`            | string |          | —       | Required when messaging\_type is MESSAGE\_TAG. Valid tags: HUMAN\_AGENT (within 7 days of last user message for human agent responses), CONFIRMED\_EVENT\_UPDATE (for registered event updates), POST\_PURCHASE\_UPDATE (for purchase-related updates), ACCOUNT\_UPDATE (for non-recurring account changes). |
| `page_id`        | string |     ✅    | —       | The ID of the Facebook Page sending the message Must be a numeric page ID, not a username or alias.                                                                                                                                                                                                          |
| `message_text`   | string |     ✅    | —       | The text content of the message to send                                                                                                                                                                                                                                                                      |
| `recipient_id`   | string |     ✅    | —       | The ID of the message recipient (user ID or PSID) Must be a numeric PSID, not a username or display name.                                                                                                                                                                                                    |
| `messaging_type` | string |          | —       | The messaging type - RESPONSE, UPDATE, or MESSAGE\_TAG. Use RESPONSE within 24 hours of user's last message. Use MESSAGE\_TAG with a tag parameter to send outside the 24-hour window.                                                                                                                       |

***

### `Facebook Toggle Typing Indicator`

Integration name: **FACEBOOK\_TOGGLE\_TYPING\_INDICATOR**

Shows or hides the typing indicator for a user in Messenger.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                             |
| -------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `page_id`      | string  |     ✅    | —       | The ID of the Facebook Page                                             |
| `typing_on`    | boolean |     ✅    | —       | True to show typing indicator, False to hide it                         |
| `recipient_id` | string  |     ✅    | —       | The Page-Scoped ID (PSID) of the user to show/hide typing indicator for |

***

### `Facebook Unlike Post Or Comment`

Integration name: **FACEBOOK\_UNLIKE\_POST\_OR\_COMMENT**

Removes a like from a Facebook post or comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                           |
| ----------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `object_id` | string |     ✅    | —       | The ID of the post or comment to unlike. Facebook IDs are numeric strings (typically 15-20 digits). IMPORTANT: Always pass IDs as strings to preserve precision. Integer values will be converted to strings, but float values (including scientific notation like 5.3e+32) are rejected because they lose precision. |

***

### `Facebook Update Comment`

Integration name: **FACEBOOK\_UPDATE\_COMMENT**

Updates an existing Facebook comment. IMPORTANT: This action requires a Page Access Token. The comment must belong to a post on a Page that you manage. Use the page\_id parameter to ensure the correct page token is used, especially if you manage multiple pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`    | string  |     ✅    | —       | The new text content of the comment                                                                                                                                                                                                         |
| `page_id`    | string  |          | —       | The ID of the Facebook Page that owns the comment. Required to ensure the correct page access token is used. If not provided, the action will attempt to use the first available page's token, which may fail if you manage multiple pages. |
| `is_hidden`  | boolean |          | —       | Whether to hide or unhide the comment                                                                                                                                                                                                       |
| `comment_id` | string  |     ✅    | —       | The ID of the comment to update. Format is typically 'objectId\_commentId' (e.g., '122157027176937815\_1371138271476143').                                                                                                                  |

***

### `Facebook Update Page Settings`

Integration name: **FACEBOOK\_UPDATE\_PAGE\_SETTINGS**

Updates settings for a specific Facebook Page. Requires the authenticated user to have MANAGE and CREATE\_CONTENT tasks for the target page; verify roles via FACEBOOK\_GET\_PAGE\_ROLES. Not all fields (about, description, general\_info, etc.) are available for every Page category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                           |
| -------------- | ------ | :------: | ------- | ------------------------------------- |
| `about`        | string |          | —       | Updated about section for the page    |
| `phone`        | string |          | —       | Updated phone number                  |
| `emails`       | array  |          | —       | Updated email addresses               |
| `page_id`      | string |     ✅    | —       | The ID of the Facebook Page to update |
| `website`      | string |          | —       | Updated website URL                   |
| `description`  | string |          | —       | Updated description for the page      |
| `general_info` | string |          | —       | Updated general information           |

***

### `Facebook Update Post`

Integration name: **FACEBOOK\_UPDATE\_POST**

Updates an existing Facebook Page post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example | Description                      |
| ------------------------- | ------ | :------: | ------- | -------------------------------- |
| `message`                 | string |          | —       | Updated text content of the post |
| `post_id`                 | string |     ✅    | —       | The ID of the post to update     |
| `og_phrase`               | string |          | —       | Open Graph phrase                |
| `og_icon_id`              | string |          | —       | Open Graph icon ID               |
| `og_object_id`            | string |          | —       | Open Graph object ID             |
| `og_action_type_id`       | string |          | —       | Open Graph action type ID        |
| `og_suggestion_mechanism` | string |          | —       | Open Graph suggestion mechanism  |

***

### `Facebook Upload Photo`

Integration name: **FACEBOOK\_UPLOAD\_PHOTO**

DEPRECATED: Use FACEBOOK\_CREATE\_PHOTO\_POST instead. Uploads a photo file directly to a Facebook Page. Supports local file upload up to 10MB.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                                                                                                                                                        |
| ------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `url`                    | string  |          | —       | Public URL of the photo (must be accessible by Facebook servers). Alternative to 'photo'. Use this for images hosted on external servers. Must be a direct HTTPS endpoint returning an image MIME type; redirects, HTML pages, and non-HTTPS URLs fail validation. |
| `tags`                   | array   |          | —       | List of user tags with format \[{'tag\_uid': 'USER\_ID', 'x': 50, 'y': 50}]                                                                                                                                                                                        |
| `photo`                  | object  |          | —       | Photo file to upload (max 10MB). Alternative to 'url'. If a URL string is mistakenly passed here, it will be auto-converted to use the 'url' parameter.                                                                                                            |
| `caption`                | string  |          | —       | Caption for the photo                                                                                                                                                                                                                                              |
| `page_id`                | string  |     ✅    | —       | The ID of the Facebook Page. Can be provided as a string or number. Must be a Page ID; personal profile/user timeline IDs are not valid.                                                                                                                           |
| `published`              | boolean |          | —       | Whether to publish the photo immediately                                                                                                                                                                                                                           |
| `targeting`              | object  |          | —       | Audience targeting specifications                                                                                                                                                                                                                                  |
| `scheduled_publish_time` | integer |          | —       | Unix timestamp to schedule the post Requires `published=false`; value must be a future UTC epoch in seconds. Using `published=true` with this field causes validation errors.                                                                                      |

***

### `Facebook Upload Photos Batch`

Integration name: **FACEBOOK\_UPLOAD\_PHOTOS\_BATCH**

Uploads multiple photo files in batch to a Facebook Page or Album. Uses Facebook's batch API for efficient multi-photo upload. Maximum 50 photos per batch.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                     | Description                                                                                                                                                                         |
| ------------ | ------- | :------: | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `photos`     | array   |          | —                                           | List of photo files to upload (max 50 photos)                                                                                                                                       |
| `page_id`    | string  |     ✅    | —                                           | The ID of the Facebook Page                                                                                                                                                         |
| `album_id`   | string  |          | —                                           | ID of album to add photos to. If not provided, photos will be uploaded to timeline                                                                                                  |
| `published`  | boolean |          | —                                           | Whether to publish the photos immediately To schedule, set to false and include `scheduled_publish_time` as a Unix UTC epoch timestamp; mismatched combinations trigger 400 errors. |
| `photo_urls` | array   |          | `["https://.../a.jpg","https://.../b.png"]` | List of photo URLs to upload (alternative to 'photos') Must be direct, publicly accessible HTTPS URLs — no redirects, private URLs, or HTTP.                                        |

***

### `Facebook Upload Video`

Integration name: **FACEBOOK\_UPLOAD\_VIDEO**

DEPRECATED: Use CreateVideoPost instead. Uploads a video file directly to a Facebook Page. Supports local file upload. For large videos (>100MB), uses resumable upload. After upload completes, the video enters a processing/pending state; do not reference or schedule it until processing finishes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                                                              |
| ------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `title`                  | string  |          | —       | Title of the video                                                                                                                                                       |
| `video`                  | object  |          | —       | Video file to upload (max 10GB, recommended under 1GB). Either 'video' or 'file\_url' must be provided. Use MP4 with H.264 video and AAC audio to avoid upload failures. |
| `page_id`                | string  |     ✅    | —       | The ID of the Facebook Page                                                                                                                                              |
| `file_url`               | string  |          | —       | URL of a publicly accessible video file to upload. Either 'file\_url' or 'video' must be provided. This is an alternative to uploading a local file.                     |
| `published`              | boolean |          | —       | Whether to publish immediately                                                                                                                                           |
| `targeting`              | object  |          | —       | Audience targeting specifications                                                                                                                                        |
| `description`            | string  |          | —       | Description of the video                                                                                                                                                 |
| `content_tags`           | array   |          | —       | List of content tags                                                                                                                                                     |
| `custom_labels`          | array   |          | —       | Custom labels for the video                                                                                                                                              |
| `scheduled_publish_time` | integer |          | —       | Unix timestamp to schedule the video post Requires `published=false`; combining with `published=true` triggers a 400 validation error.                                   |

***


# Fathom

Your Toolhouse AI Worker can connect to Fathom using 7 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](https://toolhouse.app/auth-connections?authkit_slugs=fathom).

## Tools (7)

### `Fathom Create Webhook`

Integration name: **FATHOM\_CREATE\_WEBHOOK**

Tool to create a webhook to receive new meeting content from Fathom. Use when you need to set up notifications for meeting recordings. At least one of transcript, CRM matches, summary, or action items must be included in the webhook payload.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                      | Description                                                                                                                                                                                   |
| ---------------------- | ------- | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `triggered_for`        | array   |     ✅    | `["my_recordings"]`                          | Recording types to monitor. Valid values: 'my\_recordings', 'shared\_external\_recordings', 'my\_shared\_with\_team\_recordings', 'shared\_team\_recordings'. Must provide at least one type. |
| `destination_url`      | string  |     ✅    | `"https://webhook.site/test-fathom-webhook"` | The endpoint URL where webhook events will be sent. Must be a valid HTTPS URL.                                                                                                                |
| `include_summary`      | boolean |          | —                                            | Whether to include meeting summaries in webhook payloads. At least one of include\_transcript, include\_summary, include\_action\_items, or include\_crm\_matches must be True.               |
| `include_transcript`   | boolean |          | —                                            | Whether to include meeting transcripts in webhook payloads. At least one of include\_transcript, include\_summary, include\_action\_items, or include\_crm\_matches must be True.             |
| `include_crm_matches`  | boolean |          | —                                            | Whether to include CRM data matches in webhook payloads. At least one of include\_transcript, include\_summary, include\_action\_items, or include\_crm\_matches must be True.                |
| `include_action_items` | boolean |          | —                                            | Whether to include extracted action items in webhook payloads. At least one of include\_transcript, include\_summary, include\_action\_items, or include\_crm\_matches must be True.          |

***

### `Fathom Delete Webhook`

Integration name: **FATHOM\_DELETE\_WEBHOOK**

Tool to delete an existing webhook by its ID. Use when you need to remove a webhook that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                            |
| --------- | ------ | :------: | -------------------- | -------------------------------------- |
| `id`      | string |     ✅    | `"_Lptjdyv8TKWQbBs"` | The unique ID of the webhook to delete |

***

### `Fathom Get Recording Summary`

Integration name: **FATHOM\_GET\_RECORDING\_SUMMARY**

Tool to retrieve the AI-generated summary for a specific recording. Use when you need to access the summary of a meeting recording. Supports both synchronous mode (returns summary directly) and asynchronous mode (delivers summary to webhook URL specified in destination\_url parameter).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                         | Description                                                                                                                                                                                     |
| ----------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `recording_id`    | integer |     ✅    | `102117184`                     | The identifier for the specific meeting recording.                                                                                                                                              |
| `destination_url` | string  |          | `"https://example.com/webhook"` | Webhook URL for asynchronous delivery of the summary. If provided, the endpoint behaves asynchronously and returns a confirmation. If omitted, returns the summary directly (synchronous mode). |

***

### `Fathom Get Recording Transcript`

Integration name: **FATHOM\_GET\_RECORDING\_TRANSCRIPT**

Tool to retrieve the full transcript for a specific recording. Use when you need to access the complete meeting transcript with speaker information and timestamps. Can operate synchronously (returns transcript directly) or asynchronously (posts transcript to a destination URL). In the response, speaker is an object — access speaker.display\_name rather than treating speaker as a string. Prefer this tool over fetching transcripts via list-meetings calls with include\_transcript=true, which produces extremely large responses when many meetings are returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                             | Description                                                                                                                                                        |
| ----------------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `recording_id`    | integer |     ✅    | `123456789`                         | The ID of the meeting recording to fetch the transcript for.                                                                                                       |
| `destination_url` | string  |          | `"https://example.com/destination"` | Optional destination URL for asynchronous transcript delivery via POST. If provided, the transcript will be posted to this URL instead of being returned directly. |

***

### `Fathom List Meetings`

Integration name: **FATHOM\_LIST\_MEETINGS**

Tool to retrieve a paginated list of meeting recordings for the authenticated user or organization. Use when you need to fetch meetings with optional filtering by dates, domains, meeting type, or recorder. Supports data enrichment via include\_\* parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example                                    | Description                                                                                                                                                                                                                                                                                  |
| -------------------------------- | ------- | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `teams`                          | array   |          | `["Sales","Engineering"]`                  | Filter by team names. Provide a list of team names.                                                                                                                                                                                                                                          |
| `cursor`                         | string  |          | `"eyJpZCI6MTIzfQ=="`                       | Pagination cursor for fetching the next page of results. The response includes a `next_cursor` field; paginate through all pages when filtering by date range to avoid missing older recordings.                                                                                             |
| `recorded_by`                    | array   |          | `["user@example.com","admin@company.org"]` | Filter by recorder email addresses. Provide a list of email addresses.                                                                                                                                                                                                                       |
| `created_after`                  | string  |          | `"2024-01-01T00:00:00Z"`                   | Filter meetings created after this ISO 8601 timestamp (e.g., '2024-01-01T00:00:00Z').                                                                                                                                                                                                        |
| `created_before`                 | string  |          | `"2024-12-31T23:59:59Z"`                   | Filter meetings created before this ISO 8601 timestamp (e.g., '2024-12-31T23:59:59Z').                                                                                                                                                                                                       |
| `include_summary`                | boolean |          | `false`                                    | NOT SUPPORTED FOR OAUTH USERS. This parameter is only available with API key authentication. OAuth authenticated users cannot use this flag on the list endpoint and must fetch summaries via the dedicated GET\_RECORDING\_SUMMARY action for individual recordings. Default is false.      |
| `include_transcript`             | boolean |          | `false`                                    | NOT SUPPORTED FOR OAUTH USERS. This parameter is only available with API key authentication. OAuth authenticated users cannot use this flag on the list endpoint and must fetch transcripts via the dedicated GET\_RECORDING\_TRANSCRIPT action for individual recordings. Default is false. |
| `include_crm_matches`            | boolean |          | `false`                                    | Include linked CRM data in the response. Default is false.                                                                                                                                                                                                                                   |
| `include_action_items`           | boolean |          | `false`                                    | Include action items data in the response. Default is false.                                                                                                                                                                                                                                 |
| `calendar_invitees_domains`      | array   |          | `["example.com","company.org"]`            | Filter by company domains (exact match). Provide a list of domains.                                                                                                                                                                                                                          |
| `calendar_invitees_domains_type` | string  |          | `"all"`                                    | Filter by domain type. Options: 'all' (default), 'only\_internal', 'one\_or\_more\_external'.                                                                                                                                                                                                |

***

### `Fathom List Team Members`

Integration name: **FATHOM\_LIST\_TEAM\_MEMBERS**

Tool to retrieve a paginated list of all team members in the organization. Use when you need to view team members, optionally filtered by team name or paginated using a cursor.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                             |
| --------- | ------ | :------: | ------------------------ | ----------------------------------------------------------------------- |
| `team`    | string |          | `"Engineering"`          | Team name to filter by. Allows filtering results by specific team.      |
| `cursor`  | string |          | `"eyJsYXN0X2lkIjoxMjN9"` | Cursor for pagination. Used for retrieving subsequent pages of results. |

***

### `Fathom List Teams`

Integration name: **FATHOM\_LIST\_TEAMS**

Tool to retrieve a paginated list of all teams in the organization. Use when you need to get information about teams accessible through the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                          | Description                                                                                                 |
| --------- | ------ | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `cursor`  | string |          | `"eyJpZCI6IjEyMzQ1Njc4OTAifQ=="` | Cursor for pagination. Use the next\_cursor value from a previous response to get the next page of results. |

***


# Figma

Your Toolhouse AI Worker can connect to Figma using 53 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](https://toolhouse.app/auth-connections?authkit_slugs=figma).

## Tools (53)

### `Figma Add A Comment To A File`

Integration name: **FIGMA\_ADD\_A\_COMMENT\_TO\_A\_FILE**

Posts a new comment to a Figma file or branch, optionally replying to an existing root comment (replies cannot be nested); `region_height` and `region_width` in `client_meta` must be positive if defining a comment region.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------- | ------ | :------: | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`     | string |     ✅    | `"Great work on this design!"` | Text content of the comment.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `file_key`    | string |     ✅    | `"sFHgQh9dL6369o5wrZHmdR"`     | Figma file key or branch key. Extract from the file URL: <https://www.figma.com/design/FILE\\_KEY/>... or <https://www.figma.com/file/FILE\\_KEY/>... The FILE\_KEY is the alphanumeric string between 'design/' or 'file/' and the next slash. You must have access to the file (editor or commenter permissions required to add comments). For branch keys, use GET /v1/files/:key with branch\_data parameter.                                                                                                                             |
| `comment_id`  | string |          | `"12345"`                      | ID of an existing root comment to reply to. Replies cannot be made to other replies.                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `client_meta` | object |          | `"{\"x\": 100, \"y\": 200}"`   | Dictionary specifying the comment's position. Valid formats: 1) Absolute coordinates: {x, y} 2) Node-relative: {node\_id, node\_offset: {x, y}} (when node\_id is used, coordinates MUST be inside node\_offset) 3) Absolute region: {x, y, region\_height, region\_width, comment\_pin\_corner?} 4) Node-relative region: {node\_id, node\_offset: {x, y}, region\_height, region\_width, comment\_pin\_corner?}. While technically optional, providing this parameter is strongly recommended to properly position the comment in the file. |

***

### `Figma Add A Reaction To A Comment`

Integration name: **FIGMA\_ADD\_A\_REACTION\_TO\_A\_COMMENT**

Posts a specified emoji reaction to an existing comment in a Figma file or branch, requiring valid file\_key and comment\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                | Description                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------ | :------: | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | `":heart:"`            | The emoji to use for the reaction, specified as a shortcode (e.g., `:heart:`, `:+1::skin-tone-2:`). For a comprehensive list of accepted emoji shortcodes, including aliases and skin tone modifiers, refer to the file linked here: <https://raw.githubusercontent.com/missive/emoji-mart/main/packages/emoji-mart-data/sets/14/native.json>. |
| `file_key`   | string |     ✅    | `"figma_file_key_123"` | Identifier of the Figma file or branch to which the comment reaction will be posted. This can be a file key (e.g., from the file URL) or a branch key. Use the `GET /v1/files/:key` endpoint with the `branch_data=true` query parameter to obtain the branch key if needed.                                                                   |
| `comment_id` | string |     ✅    | `"1234567890"`         | The unique identifier of the comment to which the reaction should be added.                                                                                                                                                                                                                                                                    |

***

### `Figma Create A Webhook`

Integration name: **FIGMA\_CREATE\_A\_WEBHOOK**

Creates a Figma webhook to receive POST notifications when specific events occur. Webhooks can monitor events at three scopes: - Team level: monitors all files in a team (requires team admin permissions) - Project level: monitors all files in a project (requires edit access) - File level: monitors a specific file (requires edit access) Upon creation, Figma sends an initial PING event to verify your endpoint (unless status is PAUSED). IMPORTANT: team\_id, project\_id, and file\_key cannot be discovered programmatically. Extract them from Figma URLs or use FIGMA\_DISCOVER\_FIGMA\_RESOURCES to parse URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                           |
| ------------- | ------ | :------: | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status`      | string |          | `"ACTIVE"`                                     | Initial webhook status. `ACTIVE` (default): webhook is operational and receives an initial PING event upon creation. `PAUSED`: webhook is inactive and receives no events; use FIGMA\_UPDATE\_A\_WEBHOOK to activate later.                                                                                                                                                           |
| `context`     | string |          | `"team"`                                       | Scope of the webhook. Use with `context_id`. `team`: monitors all files in a team (requires team admin). `project`: monitors all files in a project (requires edit access). `file`: monitors a specific file (requires edit access). If not provided, `team_id` must be specified instead.                                                                                            |
| `team_id`     | string |          | `"1234567890123456789"`                        | DEPRECATED: Use `context='team'` with `context_id` instead. Identifier of the Figma team for which this webhook monitors events. To find your team\_id: navigate to your team page in Figma (<https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name>), the team\_id is the number after '/team/' in the URL. Note: team\_ids cannot be discovered programmatically via the API. |
| `endpoint`    | string |     ✅    | `"https://example.com/api/figma-webhooks"`     | Publicly accessible HTTPS URL (max 2048 chars) that receives POST requests from Figma when the event triggers. Must be reachable from the internet. Figma sends JSON payloads with event details to this endpoint.                                                                                                                                                                    |
| `passcode`    | string |     ✅    | `"mySecretPasscode123"`                        | Secret string (max 100 chars) included in the webhook payload for verification. Use this to verify that incoming requests to your endpoint are genuinely from Figma.                                                                                                                                                                                                                  |
| `context_id`  | string |          | `"1234567890123456789"`                        | ID of the context (team, project, or file) to monitor. For team: extract from URL <https://www.figma.com/files/team/TEAM\\_ID/>... For project: extract from URL or use FIGMA\_GET\_PROJECTS\_IN\_A\_TEAM. For file: use the file\_key from URL <https://www.figma.com/design/FILE\\_KEY/>... Required when `context` is specified.                                                   |
| `event_type`  | string |     ✅    | `"FILE_COMMENT"`                               | Type of event that triggers the webhook. FILE\_UPDATE: triggered when a file is saved/modified. FILE\_DELETE: triggered when a file is deleted. FILE\_VERSION\_UPDATE: triggered when a new version is added to file history. FILE\_COMMENT: triggered when a comment is added. LIBRARY\_PUBLISH: triggered when a library is published.                                              |
| `description` | string |          | `"Webhook for new file comments in Project X"` | Optional human-readable description for the webhook (max 150 chars). Useful for identifying the webhook's purpose in the team's webhook list.                                                                                                                                                                                                                                         |

***

### `Figma Create Dev Resources`

Integration name: **FIGMA\_CREATE\_DEV\_RESOURCES**

Creates and attaches multiple uniquely-URLed development resources to specified Figma nodes, up to 10 per node.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type  | Required | Example | Description                              |
| --------------- | ----- | :------: | ------- | ---------------------------------------- |
| `dev_resources` | array |     ✅    | —       | List of development resources to create. |

***

### `Figma Create Modify Delete Variables`

Integration name: **FIGMA\_CREATE\_MODIFY\_DELETE\_VARIABLES**

Manages variables, collections, modes, and their values in a Figma file via batch create/update/delete operations; use temporary IDs to link new related items in one request and ensure `variableModeValues` match the target variable's `resolvedType`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                 | Description                                                                                                                                                                                                                                       |
| --------------------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key`            | string |     ✅    | `"your_figma_file_key"` | The key of the Figma file or branch to modify variables in. Use `GET /v1/files/:key` with the `branch_data=true` query parameter to obtain a branch key.                                                                                          |
| `variables`           | array  |          | —                       | List of operations for variables. Each item specifies an action (CREATE, UPDATE, DELETE) and the relevant fields. Maximum 5000 variables per collection. Variables cannot be created in extended collections.                                     |
| `variableModes`       | array  |          | —                       | List of operations for modes. Each item specifies an action (CREATE, UPDATE, DELETE) and the relevant fields. Maximum 40 modes per collection. Modes cannot be created/updated in extended collections (only deleted if parent mode was deleted). |
| `variableModeValues`  | array  |          | —                       | List of value assignments for variables in specific modes. Each item sets the value of a variable in a particular mode. Values must match the variable's resolvedType.                                                                            |
| `variableCollections` | array  |          | —                       | List of operations for variable collections. Each item specifies an action (CREATE, UPDATE, DELETE) and the relevant fields for that action.                                                                                                      |

***

### `Figma Delete A Comment`

Integration name: **FIGMA\_DELETE\_A\_COMMENT**

Deletes a specific comment from a Figma file or branch, provided the authenticated user is the original author of the comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                    | Description                                                                                                                                                                                                                                                                                                                                                  |
| ------------ | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `file_key`   | string |     ✅    | `"sFHgQh9dL6369o5wrZHmdR"` | The key of the Figma file or branch from which the comment will be deleted. This can be a file key (typically found in the file's URL, e.g., 'sFHgQh9dL6369o5wrZHmdR' from <https://www.figma.com/design/sFHgQh9dL6369o5wrZHmdR/>...) or a branch key. To obtain a branch key, use the `GET /v1/files/:key` endpoint with the `branch_data` query parameter. |
| `comment_id` | string |     ✅    | `"1602410633"`             | The unique string identifier of the comment to be deleted. This ID can be obtained from the response of `GET /v1/files/:file_key/comments` or from the response when creating a comment with `POST /v1/files/:file_key/comments`. Only the author of the comment can delete it.                                                                              |

***

### `Figma Delete A Reaction`

Integration name: **FIGMA\_DELETE\_A\_REACTION**

Deletes a specific emoji reaction from a comment in a Figma file; the user must have originally created the reaction.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                    | Description                                                                                                                                                                                                                                  |
| ------------ | ------ | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | `"❤️"`                     | The specific emoji character (e.g., '❤️', '👍') of the reaction to delete. This must be an exact match to the emoji of an existing reaction on the comment.                                                                                  |
| `file_key`   | string |     ✅    | `"LFq2TMI2qg1hcvud2jNtC2"` | Key of the file or branch containing the comment reaction to be deleted. The file key can be obtained from the file URL or API responses. To get a branch key, use the `GET /v1/files/:key` endpoint with the `branch_data` query parameter. |
| `comment_id` | string |     ✅    | `"12345:67890"`            | Identifier of the comment from which the reaction will be removed. This ID is specific to the comment within the Figma file.                                                                                                                 |

***

### `Figma Delete A Webhook`

Integration name: **FIGMA\_DELETE\_A\_WEBHOOK**

Permanently deletes an existing webhook, identified by its unique `webhook_id`; this operation is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example    | Description                                         |
| ------------ | ------ | :------: | ---------- | --------------------------------------------------- |
| `webhook_id` | string |     ✅    | `"789123"` | The unique identifier of the webhook to be deleted. |

***

### `Figma Delete Dev Resource`

Integration name: **FIGMA\_DELETE\_DEV\_RESOURCE**

Deletes a development resource (used to link Figma design elements to external developer information like code or tasks) from a specified Figma file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                    | Description                                                                                                    |
| ----------------- | ------ | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `file_key`        | string |     ✅    | `"sFpP99JA1Z42wZcR5yB12d"` | Identifier of the Figma file from which to delete the dev resource. Must be a main file key, not a branch key. |
| `dev_resource_id` | string |     ✅    | `"dev_res_123abc"`         | Identifier of the dev resource to delete from the file.                                                        |

***

### `Figma Design Tokens To Tailwind`

Integration name: **FIGMA\_DESIGN\_TOKENS\_TO\_TAILWIND**

Convert design tokens to Tailwind CSS configuration. TWO-STEP WORKFLOW: 1. First, call FIGMA\_EXTRACT\_DESIGN\_TOKENS with a Figma file\_key to extract design tokens 2. Then, pass the returned DesignTokens object to this action's 'tokens' parameter This action generates: - tailwind.config.ts/js with theme extensions - Optional globals.css with font imports Note: Shadow colors can be provided in either string format (e.g., "rgba(15, 110, 110, 0.32)") or dictionary format (e.g., {"r": 0.059, "g": 0.431, "b": 0.431, "a": 0.32}).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Description                                                                                                                                                                     |
| ---------------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `prefix`               | string  |          | —                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Prefix for generated token names (e.g., 'brand-')                                                                                                                               |
| `tokens`               | object  |     ✅    | `{"colors":[{"name":"primary","value":"#3B82F6","source":"style","opacity":null,"usage_count":5}],"shadows":[{"name":"card-shadow","source":"style","shadows":[{"x":0,"y":4,"blur":6,"type":"DROP_SHADOW","color":{"a":0.1,"b":0,"g":0,"r":0}}],"usage_count":2}],"sources":{"style":3,"extracted":2},"spacing":[{"name":"padding-16","type":"padding","value":16,"source":"extracted","usage_count":10}],"typography":[{"name":"heading","source":"style","font_size":24,"font_family":"Inter","font_weight":700,"line_height":32,"usage_count":3,"letter_spacing":null,"text_transform":null}],"total_tokens":5,"border_radius":[{"name":"radius-8","value":8,"source":"extracted","usage_count":7}]}` | Design tokens object obtained from the FIGMA\_EXTRACT\_DESIGN\_TOKENS action output. Contains colors, typography, spacing, border\_radius, shadows, total\_tokens, and sources. |
| `config_format`        | string  |          | —                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Output format: 'ts' for TypeScript or 'js' for JavaScript                                                                                                                       |
| `include_font_imports` | boolean |          | —                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Include @import statements for Google Fonts                                                                                                                                     |

***

### `Figma Detect Background`

Integration name: **FIGMA\_DETECT\_BACKGROUND**

Detect background layers for selected nodes in a Figma file. This action analyzes the Figma document structure and identifies potential background elements for the given target nodes. It uses: - Geometric analysis (bounding box overlap/containment) - Z-index ordering (nodes earlier in the layer stack are behind later ones) - Visual properties (fills, node types) - Naming conventions (nodes named 'background', 'bg', etc.) Returns background candidates with confidence scores (0-1) and explanations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                            |
| ----------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key`        | string  |     ✅    | —       | File key extracted from a Figma Design file URL. Example: 'abc123XYZ' from URL figma.com/design/abc123XYZ/My-Design. NOT supported: FigJam boards or Slides.                                                                           |
| `search_depth`    | integer |          | —       | How many levels up in the node hierarchy to search for backgrounds. Higher values find more distant ancestors but take longer. Default: 3.                                                                                             |
| `target_node_ids` | array   |     ✅    | —       | List of node IDs to find background layers for. Node IDs can be found in Figma URLs after 'node-id=' parameter, e.g., '1:2' or '123:456'. The action will search for potential background elements that are behind these target nodes. |

***

### `Figma Discover Figma Resources`

Integration name: **FIGMA\_DISCOVER\_FIGMA\_RESOURCES**

Smart Figma resource discovery - extract IDs from any Figma URL. Supports all URL formats: /file/, /design/, /board/, /proto/, /slides/ Example: figma.com/board/ABC123/Name → file\_key=ABC123 Discovery workflow: team\_id → projects → files → nodes Use extracted IDs with GetFileJson, DetectBackground, etc.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`    | string  |          | —       | Team ID to list all projects from. Get this from team URL: <https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name>. Returns list of projects with IDs and names. Cannot be inferred from user identity or FIGMA\_GET\_CURRENT\_USER; must come from a team URL or be provided directly.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `file_key`   | string  |          | —       | File key to extract all node IDs from. Get this from file URL (figma.com/file/FILE\_KEY/...) or from project files list. Returns hierarchical list of all nodes with IDs, names, types, and paths.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `figma_url`  | string  |          | —       | Full Figma URL to extract file\_key, node\_id, and team\_id from. Works with any Figma URL format: • File: <https://www.figma.com/file/ABC123/Design-Name> • Design: <https://www.figma.com/design/ABC123/Design-Name> • Board: <https://www.figma.com/board/ABC123/Board-Name> • Prototype: <https://www.figma.com/proto/ABC123/Prototype-Name> • Slides: <https://www.figma.com/slides/ABC123/Slide-Name> • With node: <https://www.figma.com/file/ABC123/Design?node-id=123:456> • Team: <https://www.figma.com/files/team/123456/Team-Name> This is the easiest way to get all IDs you need! Node IDs in URLs use hyphens (123-456) but Figma JSON uses colons (123:456) — convert format when passing to other tools. If extracted\_ids.file\_key returns null, parse it manually from the path segment after /file/, /design/, /board/, /proto/, or /slides/. |
| `max_depth`  | integer |          | —       | Maximum tree depth to traverse when discovering nodes. 2=pages+frames, 3=pages+frames+components, etc. Higher values find more nodes but take longer. Responses at depth 4+ or broad file\_key traversal can exceed 20k tokens with significant latency; cap at 2–3 and target specific CANVAS or FRAME node IDs to limit response size.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `project_id` | string  |          | —       | Project ID to list all files from. Get this from project URL or from team projects list. Returns files with keys, names, and thumbnails.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |

***

### `Figma Download Figma Images`

Integration name: **FIGMA\_DOWNLOAD\_FIGMA\_IMAGES**

Download images from Figma file nodes. Renders specified nodes as images and downloads them. Supports PNG, SVG, JPG, and PDF formats. REQUIRED PARAMETERS: - file\_key (string): The Figma file key from the URL - images (array): List of objects, each containing: - node\_id (string, required): The node ID to export (e.g., "1:2") - file\_name (string, required): Output filename with extension (e.g., "logo.png") - format (string, optional): One of 'png', 'svg', 'jpg', 'pdf'. Defaults to 'png' Example usage: { "file\_key": "abc123XYZ", "images": \[ {"node\_id": "1:2", "file\_name": "logo.png", "format": "png"} ] } To find node IDs, use FIGMA\_GET\_FILE\_JSON or look in Figma URLs after 'node-id='. NOTE: Returned image URLs expire shortly after generation — download them immediately.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example | Description                                                                                                                                                                                                                                                  |
| --------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `scale`               | number  |          | —       | Image scaling factor for PNG/JPG exports (0.01 to 4). Default is 2 for retina quality. Ignored for SVG/PDF. Exports are capped at \~32 megapixels; reduce scale or split large nodes to avoid hitting this limit.                                            |
| `images`              | array   |     ✅    | —       | REQUIRED. A list of image download requests. Each item must be an object with 'node\_id' (string, required), 'file\_name' (string, required), and optionally 'format' (string, defaults to 'png'). Example: \[{"node\_id": "1:2", "file\_name": "logo.png"}] |
| `file_key`            | string  |     ✅    | —       | REQUIRED. The Figma file key extracted from a Figma URL. For URL '<https://www.figma.com/file/abc123XYZ/MyDesign>', the file\_key is 'abc123XYZ'. This identifies which Figma file to download images from.                                                  |
| `svg_include_id`      | boolean |          | —       | For SVG exports only: include element IDs in the SVG output. Defaults to false.                                                                                                                                                                              |
| `svg_outline_text`    | boolean |          | —       | For SVG exports only: convert text to paths for accurate rendering. Defaults to true.                                                                                                                                                                        |
| `svg_simplify_stroke` | boolean |          | —       | For SVG exports only: simplify strokes for cleaner SVG output. Defaults to true.                                                                                                                                                                             |

***

### `Figma Extract Design Tokens`

Integration name: **FIGMA\_EXTRACT\_DESIGN\_TOKENS**

Extract design tokens from Figma files by combining styles, variables, and node-extracted values. Only values defined as Figma styles or variables are captured — any design values not encoded as styles/variables are silently omitted. Requires `file_variables:read` scope and a Figma plan that supports variables for full output; if variables return empty, supplement with FIGMA\_GET\_LOCAL\_VARIABLES.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                                                                                          |
| ---------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key`             | string  |     ✅    | —       | The Figma file key (e.g., 'aA1b2Cd3E4F5g6H7i8J9k0L'). Extract from Figma URLs like figma.com/file/FILE\_KEY/... or use FIGMA\_DISCOVER\_FIGMA\_RESOURCES to find file keys                           |
| `include_variables`    | boolean |          | —       | Include variables in extraction. Even with this enabled, modes and scopes may be incomplete; use FIGMA\_GET\_LOCAL\_VARIABLES for full semantic token coverage including variable modes and aliases. |
| `extract_from_nodes`   | boolean |          | —       | Extract tokens from node properties                                                                                                                                                                  |
| `include_local_styles` | boolean |          | —       | Include local styles in extraction                                                                                                                                                                   |

***

### `Figma Extract Prototype Interactions`

Integration name: **FIGMA\_EXTRACT\_PROTOTYPE\_INTERACTIONS**

Extract prototype interactions and animations from Figma files. Required parameter: - file\_key: The Figma file key extracted from a URL like '<https://www.figma.com/file/ABC123xyz/MyFile>' (the 'ABC123xyz' part) Analyzes the prototype data to extract: - User interactions (clicks, hovers, etc.) - Transition animations - Component variant states - User flows and navigation

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                               |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key`           | string  |     ✅    | —       | Required. The unique file key from a Figma URL. To find it: from a URL like '<https://www.figma.com/file/ABC123xyz/MyFileName>' or '<https://www.figma.com/design/ABC123xyz/MyFileName>', extract the alphanumeric string after '/file/' or '/design/' (e.g., 'ABC123xyz'). This is typically 22 alphanumeric characters. |
| `analyze_components` | boolean |          | —       | Extract component variant states                                                                                                                                                                                                                                                                                          |
| `include_animations` | boolean |          | —       | Include detailed animation data                                                                                                                                                                                                                                                                                           |

***

### `Figma Get Activity Logs`

Integration name: **FIGMA\_GET\_ACTIVITY\_LOGS**

Retrieves activity log events from Figma, allowing filtering by event types, time range, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                        | Description                                                                                                                                        |
| ------------ | ------- | :------: | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`      | integer |          | —                              | Maximum number of events per response, for pagination. If unspecified, defaults to 1000.                                                           |
| `order`      | string  |          | —                              | Sort order for events by timestamp.                                                                                                                |
| `events`     | string  |          | `"file_viewed,file_commented"` | Comma-separated event types to include. If unspecified, all event types are returned. Refer to Figma's API documentation for a comprehensive list. |
| `end_time`   | integer |          | —                              | Unix timestamp for the latest time for events. If unspecified, defaults to the current timestamp.                                                  |
| `start_time` | integer |          | —                              | Unix timestamp for the earliest time for events. If unspecified, defaults to one year ago.                                                         |

***

### `Figma Get A Webhook`

Integration name: **FIGMA\_GET\_A\_WEBHOOK**

Retrieves detailed information about a specific webhook by its ID, provided the webhook exists and is accessible to the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                | Description                                       |
| ------------ | ------ | :------: | ---------------------- | ------------------------------------------------- |
| `webhook_id` | string |     ✅    | `"782561836293761926"` | The unique identifier of the webhook to retrieve. |

***

### `Figma Get Comments In A File`

Integration name: **FIGMA\_GET\_COMMENTS\_IN\_A\_FILE**

Retrieves all comments from an existing Figma file, identified by a valid `file_key`, returning details like content, author, position, and reactions, with an option for Markdown formatted content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                  | Description                                                                                                                                                                                                                                       |
| ---------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `as_md`    | boolean |          | `"true"`                 | If true, comment content will be returned in Markdown format where applicable (e.g., for links, bold text). Defaults to false, returning rich text structure.                                                                                     |
| `file_key` | string  |     ✅    | `"jV2jZ7r9H6F1kY8LwQ3n"` | Identifier for the Figma file from which to retrieve comments. This can be a file key (a unique string identifying a file) or a branch key. To obtain a branch key, use the `GET /v1/files/:key` endpoint with the `branch_data` query parameter. |

***

### `Figma Get Component`

Integration name: **FIGMA\_GET\_COMPONENT**

DEPRECATED: Use FIGMA\_GET\_FILE\_NODES instead. Get component data with automatic simplification. Returns clean, AI-friendly component structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                |
| ----------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `node_id`         | string |     ✅    | —       | ID of the component node. Must be a component node ID specifically (not a frame or page ID); pass verbatim from sources like FIGMA\_GET\_FILE\_COMPONENTS. |
| `file_key`        | string |     ✅    | —       | File key that contains the component                                                                                                                       |
| `response_detail` | string |          | —       | Level of detail in the response. 'minimal' (default) simplifies component data for AI consumption. 'full' returns the raw Figma API response.              |

***

### `Figma Get Component2`

Integration name: **FIGMA\_GET\_COMPONENT2**

Fetches metadata for a specific component using its unique identifier. Use when you need to retrieve published component details from a team library.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                             |
| --------- | ------ | :------: | -------------------------------------------- | --------------------------------------- |
| `key`     | string |     ✅    | `"dbe971cca11feeb98c3c74357bdc4d20678f2f88"` | The unique identifier of the component. |

***

### `Figma Get Component Set`

Integration name: **FIGMA\_GET\_COMPONENT\_SET**

Retrieves detailed metadata for a specific published Figma component set using its unique `key`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                 |
| --------- | ------ | :------: | -------------------------- | ------------------------------------------- |
| `key`     | string |     ✅    | `"NsklHwLekg2Y09ChsX0VIN"` | The unique identifier of the component set. |

***

### `Figma Get Current User`

Integration name: **FIGMA\_GET\_CURRENT\_USER**

Retrieves detailed information for the currently authenticated Figma user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Figma Get Dev Resources`

Integration name: **FIGMA\_GET\_DEV\_RESOURCES**

Retrieves development resources (e.g., Jira/GitHub links) for a Figma main file, optionally filtering by specific node IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                    | Description                                                                                                                                                                                                                                                    |
| ---------- | ------ | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"dAln0zQzF2xXyZc8V9bA6e"` | The unique identifier of the Figma design file from which to retrieve development resources. This must be the key for a main file, not a branch key. Extract the file\_key from Figma URLs: figma.com/design/{file\_key}/... or figma.com/file/{file\_key}/... |
| `node_ids` | string |          | `"1:2,100:54"`             | A comma-separated string of node IDs to filter dev resources. Example: '1:2,100:54'. If omitted, returns all dev resources in the file.                                                                                                                        |

***

### `Figma Get File Components`

Integration name: **FIGMA\_GET\_FILE\_COMPONENTS**

Retrieves published components from a Figma file, which must be a main file (not a branch) acting as a library.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                                                  |
| ---------- | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"your_figma_file_key"` | Key of the Figma file. This file must be a main file (not a branch key) that acts as a library, as components are published from main files. |

***

### `Figma Get File Component Sets`

Integration name: **FIGMA\_GET\_FILE\_COMPONENT\_SETS**

Retrieves all published component sets from the specified Figma main file (file\_key must not be for a branch).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example       | Description                                                                                                                                                                                                                                 |
| ---------- | ------ | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"ABC123xyz"` | Key of the Figma file. Must be a main file key (not a branch key) as component sets are published from main files. Extract from Figma URL: <https://www.figma.com/design/{file\\_key}/>... or <https://www.figma.com/file/{file\\_key}/>... |

***

### `Figma Get File Json`

Integration name: **FIGMA\_GET\_FILE\_JSON**

Get Figma Design file data with automatic simplification. IMPORTANT: Only supports Design files (figma.com/design/{file\_key}). FigJam board files (figma.com/board/{file\_key}) and Slides files (figma.com/slides/{file\_key}) are NOT supported and will return a 400 error: "File type not supported by this endpoint". This enhanced version automatically transforms verbose Figma JSON into clean, AI-friendly format with: - CSS-like property names - Deduplicated variables - Removed empty values - 70%+ size reduction Use simplify=False to get raw API response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ids`             | string  |          | —       | Comma-separated node IDs to fetch specific nodes (uses /nodes endpoint). Node IDs can be extracted from Figma URLs: figma.com/design/{file\_key}/{name}?node-id={node\_id}. Example: '1:2,1:3' for multiple nodes. Must be a string, not an array — passing an array causes validation failure. URL node IDs use hyphens (e.g., '1-2'); convert to colons (e.g., '1:2') before passing here. |
| `depth`           | integer |          | —       | Tree traversal depth (e.g., 2 for pages and top-level children). Omitting depth on large files can produce extremely large responses or timeouts; scope with `ids` and set depth to the minimum needed.                                                                                                                                                                                      |
| `version`         | string  |          | —       | Specific version ID; current version if omitted                                                                                                                                                                                                                                                                                                                                              |
| `file_key`        | string  |     ✅    | —       | File key extracted from a Figma Design file URL. SUPPORTED: figma.com/design/{file\_key}/... or figma.com/file/{file\_key}/... NOT SUPPORTED: FigJam boards (figma.com/board/{file\_key}) and Slides (figma.com/slides/{file\_key}). Example valid key: 'abc123XYZ' from URL figma.com/design/abc123XYZ/My-Design.                                                                           |
| `geometry`        | string  |          | —       | Set to "paths" to include vector data                                                                                                                                                                                                                                                                                                                                                        |
| `branch_data`     | boolean |          | —       | Include branch metadata                                                                                                                                                                                                                                                                                                                                                                      |
| `plugin_data`     | string  |          | —       | Comma-separated plugin IDs to include plugin data                                                                                                                                                                                                                                                                                                                                            |
| `response_detail` | string  |          | —       | Level of detail in the response. 'minimal' (default) simplifies file data for AI consumption. 'full' returns the raw Figma API response.                                                                                                                                                                                                                                                     |

***

### `Figma Get File Metadata`

Integration name: **FIGMA\_GET\_FILE\_METADATA**

Get Figma file metadata including name, creator, last modification details, thumbnail, and access information. Use when you need quick file overview without the full document tree.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                      | Description                                                                                                                                                                                                                                                                    |
| ---------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `file_key` | string |     ✅    | `"VGULlnz44R0Ooe4FZKDxlhh4"` | File key to get metadata for. This can be a file key or branch key. Extract from file URL: <https://www.figma.com/design/{file\\_key}/>... or <https://www.figma.com/file/{file\\_key}/>... Use `GET /v1/files/:key` with the `branch_data` query param to get the branch key. |

***

### `Figma Get File Nodes`

Integration name: **FIGMA\_GET\_FILE\_NODES**

Fetch JSON for specific node IDs from a Figma file to avoid full-file payload limits. Use when you already know target node IDs (from shallow file fetch or component listings) or when full-file JSON has hit payload limits. Prefer depth=1 for fast discovery.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example        | Description                                                                                                                                                                                                                    |
| ------------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `ids`         | —       |     ✅    | `"1:5,1:6"`    | Node IDs to retrieve. Provide as comma-separated string (e.g., '1:5,1:6') or as list of strings (e.g., \['1:5', '1:6']). Use this when you already know target node IDs from a shallow file fetch or component/style listings. |
| `depth`       | integer |          | `1`            | How deep into each requested node subtree to traverse. Use depth=1 for fast structure discovery (only immediate children), increase only when needed. Omit to get full subtree.                                                |
| `version`     | string  |          | `"1234567890"` | Specific version ID to retrieve. Omit for current version.                                                                                                                                                                     |
| `file_key`    | string  |     ✅    | `"abc123XYZ"`  | Figma file key or branch key extracted from URL. Example: 'abc123XYZ' from figma.com/design/abc123XYZ/My-Design.                                                                                                               |
| `geometry`    | string  |          | `"paths"`      | Set to 'paths' to include vector path data in the response. Omit for standard node data without geometry.                                                                                                                      |
| `plugin_data` | string  |          | `"shared"`     | Plugin IDs (comma-separated) or 'shared' to include plugin data. Omit to exclude plugin data.                                                                                                                                  |

***

### `Figma Get Files In A Project`

Integration name: **FIGMA\_GET\_FILES\_IN\_A\_PROJECT**

Fetches a list of files in a Figma project, optionally including branch metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example       | Description                                                  |
| ------------- | ------- | :------: | ------------- | ------------------------------------------------------------ |
| `project_id`  | string  |     ✅    | `"PJ7b3k2N5"` | Identifier of the Figma project, typically found in its URL. |
| `branch_data` | boolean |          | `"true"`      | If true, includes metadata for branches of main files.       |

***

### `Figma Get File Styles`

Integration name: **FIGMA\_GET\_FILE\_STYLES**

Retrieves a list of published styles (like colors, text attributes, effects, and layout grids) from a specified main Figma file (not a branch).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                      | Description                                                                                                                                                                                                                                                                                                                              |
| ---------- | ------ | :------: | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"VGULlnz44R0Ooe4FZKDxlhh4"` | Key of the main Figma file (not a branch) from which to retrieve published styles. Extract the file\_key from the Figma URL: figma.com/design/{file\_key}/... or figma.com/file/{file\_key}/... Note: This endpoint only returns PUBLISHED styles from team libraries. For local/unpublished styles, use FIGMA\_GET\_FILE\_JSON instead. |

***

### `Figma Get Image Fills`

Integration name: **FIGMA\_GET\_IMAGE\_FILLS**

Retrieves temporary (14-day expiry) download URLs for all image fills in a Figma file; requires `imageRef` from `Paint` objects to map URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                    | Description                                                                                                                                                                                                                                                 |
| ---------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"sFHgQh9dL6369o5wrZHmdR"` | The unique identifier of a Figma file. Extract this from Figma URLs: <https://www.figma.com/file/{file\\_key}/>... or <https://www.figma.com/design/{file\\_key}/>... The file\_key is a 22-character alphanumeric string (e.g., 'sFHgQh9dL6369o5wrZHmdR'). |

***

### `Figma Get Library Analytics Component Action Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_COMPONENT\_ACTION\_DATA**

Retrieves component insertion and detachment analytics for a specified Figma library, groupable by 'component' or 'team' and filterable by a date range (YYYY-MM-DD).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                    | Description                                                                                                                                               |
| ------------ | ------ | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`     | string |          | —                          | Opaque cursor for pagination, from a previous response's `cursor` field; omit for the first page.                                                         |
| `end_date`   | string |          | `"2023-12-31"`             | End date (YYYY-MM-DD) for analytics. Data includes up to end of this date's week. Defaults to latest computed week.                                       |
| `file_key`   | string |     ✅    | `"sFglL9l62Z1c4qjX2LmyxK"` | Unique identifier (key) of the Figma library file to retrieve analytics data from. Must be a published library file from an Enterprise plan organization. |
| `group_by`   | string |     ✅    | `"component"`              | Dimension to group analytics: 'component' or 'team'.                                                                                                      |
| `start_date` | string |          | `"2023-01-01"`             | Start date (YYYY-MM-DD) for analytics. Data includes from start of this date's week. Defaults to one year prior.                                          |

***

### `Figma Get Library Analytics Component Usage Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_COMPONENT\_USAGE\_DATA**

Retrieves component usage analytics for a specified Figma library file (identified by `file_key`), with data groupable by 'component' or 'file'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`   | string |          | —                       | Opaque string for pagination to fetch the next page of data, obtained from a previous response.                                                                             |
| `file_key` | string |     ✅    | `"your_figma_file_key"` | Unique identifier (key) of the Figma library file. Must be a published library file from an Enterprise plan organization.                                                   |
| `group_by` | string |     ✅    | `"component"`           | Dimension to group analytics data, affecting the response `rows` structure. Use 'component' to see per-component usage stats, or 'file' to see which files use the library. |

***

### `Figma Get Library Analytics Style Action Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_STYLE\_ACTION\_DATA**

Retrieves style usage analytics (insertions, detachments) for a Figma library, grouped by 'style' or 'team'; if providing a date range, ensure end\_date is not before start\_date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                    | Description                                                                                                                                                      |
| ------------ | ------ | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`     | string |          | `"MTY3ODg4NjQwMDAwMA=="`   | Opaque cursor for pagination, from a previous response's `cursor` field to fetch the next page; omit for first page.                                             |
| `end_date`   | string |          | `"2023-12-31"`             | End date for the analytics data range (YYYY-MM-DD). Data includes up to the end of this date's week. Defaults to the most recently computed week if unspecified. |
| `file_key`   | string |     ✅    | `"Hx0k0N9mC9SikO0hZ4C4sC"` | Unique identifier (key) of the Figma library. Must be a published library file from an Enterprise plan organization.                                             |
| `group_by`   | string |     ✅    | `"style"`                  | Dimension by which to group the library style analytics data. Use 'style' for per-style metrics or 'team' for per-team metrics.                                  |
| `start_date` | string |          | `"2023-01-01"`             | Start date for the analytics data range (YYYY-MM-DD). Data includes from the start of this date's week. Defaults to one year prior if unspecified.               |

***

### `Figma Get Library Analytics Style Usage Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_STYLE\_USAGE\_DATA**

Retrieves style usage analytics for a published Figma library. Returns data about how styles (colors, text styles, effects, grids) from the library are being used across your organization. Requires Enterprise plan and library\_analytics:read scope. Group results by 'style' to see per-style metrics or by 'file' to see which files use the library's styles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example   | Description                                                                                                                                                                                                        |
| ---------- | ------ | :------: | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `cursor`   | string |          | —         | Pagination cursor from a previous response's 'cursor' field. Omit to get the first page of results.                                                                                                                |
| `file_key` | string |     ✅    | —         | The unique file key of a published Figma library. Obtain this from the library URL (e.g., figma.com/file/FILE\_KEY/...) or via the Get Team Styles endpoint. Note: This API is only available on Enterprise plans. |
| `group_by` | string |     ✅    | `"style"` | How to group the analytics data: 'style' returns usage stats per style, 'file' returns usage stats per file using the library.                                                                                     |

***

### `Figma Get Library Analytics Variable Action Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_VARIABLE\_ACTION\_DATA**

Retrieves weekly, paginated analytics data on variable insertions and detachments for a specified Figma library (identified by `file_key`), groupable by 'variable' or 'team', and filterable by an optional date range. Note: Requires Enterprise plan and library\_analytics:read scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                                                                                                              |
| ------------ | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `cursor`     | string |          | —              | Opaque cursor for pagination from a previous response; omit or use null for the first page.                                                                              |
| `end_date`   | string |          | `"2023-12-31"` | End date (YYYY-MM-DD) for the analytics range. Data is aggregated weekly; this date rounds to the nearest week end. Defaults to the latest computed week if unspecified. |
| `file_key`   | string |     ✅    | —              | Unique identifier (key) of the Figma file (library) for which to retrieve variable analytics data.                                                                       |
| `group_by`   | string |     ✅    | `"team"`       | Dimension to group analytics data, which determines the structure of `rows` in the response.                                                                             |
| `start_date` | string |          | `"2023-01-01"` | Start date (YYYY-MM-DD) for the analytics range. Data is aggregated weekly; this date rounds to the nearest week start. Defaults to one year prior if unspecified.       |

***

### `Figma Get Library Analytics Variable Usage Data`

Integration name: **FIGMA\_GET\_LIBRARY\_ANALYTICS\_VARIABLE\_USAGE\_DATA**

Retrieves paginated analytics data on variable usage from a specified Figma library, grouped by 'file' or 'variable', for libraries with enabled analytics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                     | Description                                                                                                                                                    |
| ---------- | ------ | :------: | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`   | string |          | `"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."` | Opaque cursor for pagination, from a previous response's `cursor` field if `next_page` was true. Omit for the first page.                                      |
| `file_key` | string |     ✅    | `"sFglL9l62Z1c4qjX2LmyxK"`                  | Key of the Figma library file (from its URL) for which to retrieve variable usage analytics. Must be a published library from an Enterprise plan organization. |
| `group_by` | string |     ✅    | `"file"`                                    | Dimension for grouping analytics data, determining the structure of `rows` in the response ('file' or 'variable').                                             |

***

### `Figma Get Local Variables`

Integration name: **FIGMA\_GET\_LOCAL\_VARIABLES**

Retrieves all local/remote variables for a Figma file/branch; crucial for obtaining mode-specific values which `/v1/files/{file_key}/variables/published` omits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                                                                                                                                                     |
| ---------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | `"your_file_key"` | Key of the Figma file or branch. Can be a standard file key or a branch-specific key (to obtain a branch key, use `GET /v1/files/:key` with the `branch_data` query parameter). |

***

### `Figma Get Payments`

Integration name: **FIGMA\_GET\_PAYMENTS**

Retrieves a user's payment information for a Figma plugin, widget, or Community file; the authenticated identity must own the resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                                                                                                |
| ---------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`              | integer |          | —       | ID of the user whose payment information is sought. Obtain via OAuth2 with Figma REST API. Required if `plugin_payment_token` is not provided.                                                             |
| `plugin_id`            | integer |          | —       | ID of the plugin. Obtain from its manifest or Community page URL (number after 'plugin/'). If `user_id` is provided, specify exactly one of `community_file_id`, `plugin_id`, or `widget_id`.              |
| `widget_id`            | integer |          | —       | ID of the widget. Obtain from its manifest or Community page URL (number after 'widget/'). If `user_id` is provided, specify exactly one of `community_file_id`, `plugin_id`, or `widget_id`.              |
| `community_file_id`    | integer |          | —       | ID of the Community file. Obtain from its Community page URL (number after 'file/'). If `user_id` is provided, specify exactly one of `community_file_id`, `plugin_id`, or `widget_id`.                    |
| `plugin_payment_token` | string  |          | —       | Short-lived auth token from `getPluginPaymentTokenAsync` (Figma Plugin Payments API). See Figma docs 'Calling the Payments REST API...'. If provided, `user_id` and resource IDs are typically not needed. |

***

### `Figma Get Projects In A Team`

Integration name: **FIGMA\_GET\_PROJECTS\_IN\_A\_TEAM**

Retrieves projects within a specified Figma team that are visible to the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                             |
| --------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"8765432109876543210"` | Identifier of the Figma team from which to list projects. Note: The `team_id` cannot be programmatically obtained solely from a user token. To find a `team_id`, navigate to a team page you are a member of in Figma. The `team_id` will be present in the URL, typically formatted as `https://www.figma.com/files/team/YOUR_TEAM_ID/Your_Team_Name`. |

***

### `Figma Get Published Variables`

Integration name: **FIGMA\_GET\_PUBLISHED\_VARIABLES**

Retrieves variables published from a specified Figma file; this API is available only to full members of Enterprise organizations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                                           |
| ---------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_key` | string |     ✅    | —       | The key of the Figma file from which to retrieve published variables. This must be a main file's key, not a branch key, as publishing from branches is not supported. |

***

### `Figma Get Reactions For A Comment`

Integration name: **FIGMA\_GET\_REACTIONS\_FOR\_A\_COMMENT**

Retrieves reactions for a specific comment in a Figma file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                         | Description                                                                                                                                                           |
| ------------ | ------ | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cursor`     | string |          | `"opaque_cursor_string_from_previous_response"` | Pagination cursor from `next_page` of a previous response. Omit or use null for the first page.                                                                       |
| `file_key`   | string |     ✅    | `"your_figma_file_key"`                         | Key for the Figma file or branch. Can be a file key (from URL) or a branch key. To get a branch key, use `GET /v1/files/:key` with the `branch_data` query parameter. |
| `comment_id` | string |     ✅    | `"1234567890"`                                  | Identifier of the comment.                                                                                                                                            |

***

### `Figma Get Scim Service Provider Config`

Integration name: **FIGMA\_GET\_SCIM\_SERVICE\_PROVIDER\_CONFIG**

Get Figma's SCIM service provider configuration. Returns configuration details including which SCIM operations are supported (patch, bulk, filter, etc.), authentication schemes, and service capabilities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Figma Get Style`

Integration name: **FIGMA\_GET\_STYLE**

Retrieves detailed metadata for a specific style in Figma using its unique style key.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`     | string |     ✅    | `"fab4c1a7ca2a72b01100db66097790979f3655c4"` | The unique identifier (key) of the style to retrieve. Style keys are 40-character hexadecimal hash strings obtained from the GET /v1/files/{file\_key}/styles or GET /v1/teams/{team\_id}/styles endpoints. This endpoint only works for styles published in a team library. |

***

### `Figma Get Team Components`

Integration name: **FIGMA\_GET\_TEAM\_COMPONENTS**

Retrieves components published in a specific Figma team's library; the team must have published components, otherwise an empty list is returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                | Description                                                                                                                                                                                                                                                                                                                                                           |
| ----------- | ------- | :------: | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`     | integer |          | `"1609459200000"`      | Opaque cursor indicating the point after which to retrieve components. Used for pagination. Exclusive with the `before` parameter. The cursor value is an internally tracked integer that doesn't correspond to any specific Figma IDs.                                                                                                                               |
| `before`    | integer |          | `"1609459300000"`      | Opaque cursor indicating the point before which to retrieve components. Used for pagination. Exclusive with the `after` parameter. The cursor value is an internally tracked integer that doesn't correspond to any specific Figma IDs.                                                                                                                               |
| `team_id`   | string  |     ✅    | `"876543210987654321"` | The unique identifier of the Figma team from which to retrieve published components. IMPORTANT: Team IDs cannot be obtained programmatically via the Figma API. To find your team\_id: navigate to your team page in the Figma web app (<https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name>), the team\_id is the numeric string after '/team/' in the URL. |
| `page_size` | integer |          | `"30"`                 | Number of components to return per page. Maximum value is 1000.                                                                                                                                                                                                                                                                                                       |

***

### `Figma Get Team Component Sets`

Integration name: **FIGMA\_GET\_TEAM\_COMPONENT\_SETS**

Retrieves a paginated list of published component sets (collections of reusable UI elements) from a specified Figma team's library.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ------- | :------: | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`     | integer |          | `"0"`                   | Cursor for pagination, indicating the point after which to retrieve component sets. Exclusive with the 'before' parameter. The cursor value is an internally tracked integer and does not correspond to any specific Figma IDs.                                                                                                                             |
| `before`    | integer |          | `"1609459300"`          | Cursor for pagination, indicating the point before which to retrieve component sets. Exclusive with the 'after' parameter. The cursor value is an internally tracked integer and does not correspond to any specific Figma IDs.                                                                                                                             |
| `team_id`   | string  |     ✅    | `"1234567890123456789"` | The unique identifier of the Figma team from which to list component sets. IMPORTANT: Team IDs cannot be obtained programmatically via the Figma API. To find your team\_id: navigate to your team page in the Figma web app (<https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name>), the team\_id is the numeric string after '/team/' in the URL. |
| `page_size` | integer |          | `"30"`                  | Number of component sets to return in a single page.                                                                                                                                                                                                                                                                                                        |

***

### `Figma Get Team Styles`

Integration name: **FIGMA\_GET\_TEAM\_STYLES**

Retrieves a paginated list of published styles (fill colors, text styles, effects, grids) from a specified Figma team's library. Note: The team must have published styles in its library for this endpoint to return data. Teams without published styles will return an empty list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                 | Description                                                                                                                                                                                                                                                                                         |
| ----------- | ------- | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`     | integer |          | `1609459200000`         | Opaque integer cursor to retrieve styles after this point; use `cursor.after` from a previous response. Mutually exclusive with `before` - only one can be specified.                                                                                                                               |
| `before`    | integer |          | `1234560000000`         | Opaque integer cursor to retrieve styles before this point; use `cursor.before` from a previous response. Mutually exclusive with `after` - only one can be specified.                                                                                                                              |
| `team_id`   | string  |     ✅    | `"1234567890123456789"` | Identifier of the Figma team to retrieve published styles from. Note: The team\_id cannot be obtained programmatically via the API. To find a team\_id, navigate to the team page in Figma (<https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name>) and extract the numeric ID from the URL. |
| `page_size` | integer |          | `30`                    | Number of style items to return per page. Maximum supported value is 100.                                                                                                                                                                                                                           |

***

### `Figma Get Team Webhooks`

Integration name: **FIGMA\_GET\_TEAM\_WEBHOOKS**

Retrieves all webhooks registered for a specified Figma context (team, project, or file). Uses the Figma Webhooks V2 API endpoint (GET /v2/webhooks) with context and context\_id query parameters. This is the recommended approach as the legacy path-based endpoint (/v2/teams/{team\_id}/webhooks) is deprecated. Note: team\_id, project\_id, and file\_key cannot be discovered programmatically via the API. Extract them from Figma URLs or use FIGMA\_DISCOVER\_FIGMA\_RESOURCES to parse URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                            |
| ------------ | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `context`    | string |          | `"team"`                | The context type to query webhooks for. Options: 'team', 'project', or 'file'. Defaults to 'team' for backward compatibility.                                                                                                                                                                                                                          |
| `context_id` | string |     ✅    | `"1170245155647481265"` | The ID of the context to query webhooks for. For 'team' context, this is the team\_id. For 'project' context, this is the project\_id. For 'file' context, this is the file\_key. Note: team\_id cannot be programmatically obtained from the API - extract it from your Figma team URL: <https://www.figma.com/files/team/YOUR\\_TEAM\\_ID/Team-Name> |

***

### `Figma Get Versions Of A File`

Integration name: **FIGMA\_GET\_VERSIONS\_OF\_A\_FILE**

Retrieves the version history for a Figma file or branch, as specified by its `file_key`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`     | integer |          | `"1588291200"`             | Version ID for pagination; retrieves versions created strictly after this ID.                                                                                                                                                                                                                                                                                                                          |
| `before`    | integer |          | `"1609459200"`             | Version ID for pagination; retrieves versions created strictly before this ID.                                                                                                                                                                                                                                                                                                                         |
| `file_key`  | string  |     ✅    | `"sFHgQh9dL6369o5wrZHmdR"` | The key of the Figma file or branch from which to retrieve the version history. Extract from file URL: <https://www.figma.com/design/{file\\_key}/>... or <https://www.figma.com/file/{file\\_key}/>... For branch keys, use `GET /v1/files/:key` with the `branch_data` query param to obtain it. The authenticated user must have access to the file; otherwise a 404 'Not found' error is returned. |
| `page_size` | integer |          | `"30"`                     | Number of version items per page. The API defaults to 30 if this parameter is not sent.                                                                                                                                                                                                                                                                                                                |

***

### `Figma Get Webhook Requests`

Integration name: **FIGMA\_GET\_WEBHOOK\_REQUESTS**

Retrieves a history of webhook requests for a specific Figma webhook subscription; data is available for requests sent within the last seven days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                                                                                                              |
| ------------ | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `webhook_id` | string |     ✅    | `"1234567890"` | The unique identifier of the Figma webhook subscription for which to retrieve past event requests. This refers to the ID of the webhook itself, not an individual event. |

***

### `Figma Render Images Of File Nodes`

Integration name: **FIGMA\_RENDER\_IMAGES\_OF\_FILE\_NODES**

Render Figma nodes as images (PNG, JPG, SVG, PDF). Returns a map of node IDs to temporary image URLs (valid for 30 days). Images are capped at 32 megapixels; larger requests are automatically scaled down. REQUIRED PARAMETERS: - file\_key: Figma file key from URL (e.g., 'abc123XYZ' from figma.com/design/abc123XYZ/...) - ids: Comma-separated node IDs to render (e.g., '1:2' or '1:2,1:3,1:4') NODE IDs: Found in Figma URLs after 'node-id=' or from FIGMA\_GET\_FILE\_JSON response. FORMATS: - png/jpg: Raster images with optional scale (0.01-4.0) - svg: Vector graphics with text outline options - pdf: Document format COMMON ISSUES: - null value in images map = node failed to render (invalid ID, invisible, 0% opacity) - 404 error = file\_key not found or no access - 429 error = rate limit exceeded, wait and retry

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                 | Description                                                                                                                                                                                  |
| --------------------- | ------- | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ids`                 | string  |     ✅    | `"1:2"`                 | Comma-separated list of node IDs to render as images. Node IDs are found in Figma URLs after 'node-id=' (e.g., '1:2') or from FIGMA\_GET\_FILE\_JSON response. Example: '1:2,1:3,1:4'.       |
| `scale`               | number  |          | `1`                     | Image scaling factor between 0.01 and 4.0. Example: 2.0 renders at 2x resolution. Applies to PNG/JPG only; ignored for SVG/PDF.                                                              |
| `format`              | string  |          | `"png"`                 | Output image format: 'png', 'jpg', 'svg', or 'pdf'.                                                                                                                                          |
| `version`             | string  |          | `"3423423523401204902"` | Specific version ID of the file to render. If omitted, uses current version.                                                                                                                 |
| `file_key`            | string  |     ✅    | `"abc123XYZ"`           | Key of the Figma file or branch. Extract from Figma URLs: figma.com/design/{file\_key}/... or figma.com/file/{file\_key}/... For branch keys, use GET /v1/files/:key with branch\_data=true. |
| `contents_only`       | boolean |          | —                       | If true, excludes content that overlaps node boundaries. If false, includes overlapping content (may increase processing time).                                                              |
| `svg_include_id`      | boolean |          | —                       | (SVG only) If true, includes 'id' attributes (using layer names) on SVG elements.                                                                                                            |
| `svg_outline_text`    | boolean |          | —                       | (SVG only) If true, text renders as vector paths (outlines) for exact visual fidelity. If false, text renders as elements (selectable, but appearance may vary by system fonts).             |
| `svg_include_node_id` | boolean |          | —                       | (SVG only) If true, adds 'data-node-id' attribute (with Figma node ID) to SVG elements.                                                                                                      |
| `svg_simplify_stroke` | boolean |          | —                       | (SVG only) If true, simplifies strokes using 'stroke' attribute instead of .                                                                                                                 |
| `use_absolute_bounds` | boolean |          | —                       | If true, uses full node dimensions ignoring cropping/empty space. Useful for text nodes to avoid unintended cropping.                                                                        |

***

### `Figma Update A Webhook`

Integration name: **FIGMA\_UPDATE\_A\_WEBHOOK**

Updates an existing Figma webhook, identified by `webhook_id`, allowing modification of its event type, endpoint, passcode, status, or description.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                        | Description                                                                                                                             |
| ------------- | ------ | :------: | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `status`      | string |          | `"ACTIVE"`                                     | Operational status: `ACTIVE` to receive events, `PAUSED` to temporarily stop event delivery. Optional - only provide to change status.  |
| `endpoint`    | string |          | `"https://example.com/figma-webhook-receiver"` | URL of the HTTPS endpoint to receive POST requests for webhook events. Max length 2048. Optional - only provide to change the endpoint. |
| `passcode`    | string |          | `"secure-passcode-123"`                        | Secret string for your endpoint to verify webhook authenticity. Max length 100. Optional - only provide to change the passcode.         |
| `event_type`  | string |          | `"FILE_UPDATE"`                                | Type of event that triggers the webhook. Optional - only provide to change the event type.                                              |
| `webhook_id`  | string |     ✅    | `"7891234560"`                                 | Unique identifier of the existing webhook to update. Obtain from GET team webhooks or after creating a webhook.                         |
| `description` | string |          | `"Webhook for project Alpha updates"`          | User-friendly description for the webhook. Max length 140 characters. Pass empty string to remove. Optional.                            |

***

### `Figma Update Dev Resources`

Integration name: **FIGMA\_UPDATE\_DEV\_RESOURCES**

Updates the name and/or URL of one or more existing Figma Dev Resources, each identified by its unique `id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type  | Required | Example | Description                                                                                                       |
| --------------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `dev_resources` | array |     ✅    | —       | List of dev resources to update. Each must include its `id` and can optionally provide a new `name` and/or `url`. |

***


# Freeagent

Your Toolhouse AI Worker can connect to Freeagent using 76 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](https://toolhouse.app/auth-connections?authkit_slugs=freeagent).

## Tools (76)

### `Freeagent Cashflow Summary For A Given Date Range`

Integration name: **FREEAGENT\_CASHFLOW\_SUMMARY\_FOR\_A\_GIVEN\_DATE\_RANGE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                                                                                                                        |
| ----------- | ------ | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_date`   | string |     ✅    | `"2024-12-31"` | 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.         |
| `from_date` | string |     ✅    | `"2024-01-01"` | 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. |

***

### `Freeagent Company Details`

Integration name: **FREEAGENT\_COMPANY\_DETAILS**

Tool to retrieve company details from FreeAgent. Use when you need information about the company's registration, accounting periods, or settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Create A Journal Set`

Integration name: **FREEAGENT\_CREATE\_A\_JOURNAL\_SET**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                      | Description                                                                                                                                             |
| ----------------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag`             | string |          | `"API_TEST"`                 | Tag to identify journal sets created by your application. Tagged journal sets can only be edited or deleted via the API.                                |
| `dated_on`        | string |          | `"2026-01-15"`               | Date for the journal entries in YYYY-MM-DD format. If not specified, defaults to today's date.                                                          |
| `description`     | string |     ✅    | `"Test journal set via API"` | Free-text description of the journal set to explain its purpose.                                                                                        |
| `journal_entries` | array  |     ✅    | —                            | 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). |

***

### `Freeagent Create A Sales Tax Period`

Integration name: **FREEAGENT\_CREATE\_A\_SALES\_TAX\_PERIOD**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example           | Description                                       |
| ------------------------------- | ------- | :------: | ----------------- | ------------------------------------------------- |
| `is_locked`                     | boolean |          | `true`            | Boolean to lock changes                           |
| `locked_reason`                 | string  |          | `"Period closed"` | Reason for locking                                |
| `effective_date`                | string  |     ✅    | `"2026-01-17"`    | When the period takes effect in YYYY-MM-DD format |
| `sales_tax_name`                | string  |     ✅    | `"VAT"`           | Name of the sales tax (e.g., VAT, GST, Sales Tax) |
| `sales_tax_rate_1`              | string  |          | `"20.0"`          | First tax rate as a decimal string                |
| `sales_tax_rate_2`              | string  |          | `"5.0"`           | Second tax rate as a decimal string               |
| `sales_tax_rate_3`              | string  |          | `"10.0"`          | Third tax rate as a decimal string                |
| `sales_tax_is_value_added`      | boolean |     ✅    | `true`            | Boolean indicating tax reclaim eligibility        |
| `sales_tax_registration_number` | string  |          | `"GB123456789"`   | Tax registration number (if required)             |
| `sales_tax_registration_status` | string  |     ✅    | `"Registered"`    | Either 'Not Registered' or 'Registered'           |

***

### `Freeagent Create A Task Under A Certain Project`

Integration name: **FREEAGENT\_CREATE\_A\_TASK\_UNDER\_A\_CERTAIN\_PROJECT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                           | Description                                                                                     |
| ---------------- | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `name`           | string  |     ✅    | `"Test Task Creation"`                            | Name of the task                                                                                |
| `status`         | string  |          | `"Active"`                                        | Task status (e.g., Active, Completed, Hidden). Defaults to Active if not specified.             |
| `project`        | string  |     ✅    | `"https://api.freeagent.com/v2/projects/4547238"` | URL of the project this task belongs to (e.g., <https://api.freeagent.com/v2/projects/4547238>) |
| `currency`       | string  |          | `"GBP"`                                           | Currency code for billing (e.g., GBP, USD, EUR). Required if task is billable.                  |
| `is_billable`    | boolean |          | `true`                                            | Whether clients are charged for this task. Set to true if the task should be billed to clients. |
| `billing_rate`   | string  |          | `"50.0"`                                          | Billing rate as decimal string (e.g., '50.0', '100.00'). Required if task is billable.          |
| `billing_period` | string  |          | `"hour"`                                          | Billing period unit: 'hour' or 'day'. Required if task is billable.                             |

***

### `Freeagent Create A Timeslip`

Integration name: **FREEAGENT\_CREATE\_A\_TIMESLIP**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                           | Description                                                                                                                                    |
| ---------- | ------ | :------: | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `task`     | string |     ✅    | `"https://api.freeagent.com/v2/tasks/6045362"`    | The task URL that was worked on (e.g., <https://api.freeagent.com/v2/tasks/789>). This specifies the type of work performed.                   |
| `user`     | string |     ✅    | `"https://api.freeagent.com/v2/users/2151294"`    | The user URL who is logging the time (e.g., <https://api.freeagent.com/v2/users/123>). This identifies who performed the work.                 |
| `hours`    | string |     ✅    | `"2.5"`                                           | 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.                             |
| `comment`  | string |          | `"Test timeslip created via API"`                 | Optional free-text comment describing the work performed. Use this to add context or details about the timeslip.                               |
| `project`  | string |     ✅    | `"https://api.freeagent.com/v2/projects/4547238"` | 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. |
| `dated_on` | string |     ✅    | `"2026-01-15"`                                    | The date the work was performed in YYYY-MM-DD format. This cannot be in the future.                                                            |

***

### `Freeagent Create A User`

Integration name: **FREEAGENT\_CREATE\_A\_USER**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                  | Description                                                                                                                                                                   |
| ---------------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`                 | string  |     ✅    | `"Employee"`             | 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).                          |
| `email`                | string  |     ✅    | `"testuser@example.com"` | Login email address for the new user                                                                                                                                          |
| `last_name`            | string  |     ✅    | `"Doe"`                  | User's last name                                                                                                                                                              |
| `ni_number`            | string  |          | `"AB123456C"`            | UK National Insurance Number                                                                                                                                                  |
| `first_name`           | string  |     ✅    | `"John"`                 | User's first name                                                                                                                                                             |
| `opening_mileage`      | number  |          | `0`                      | Opening mileage as of company start date                                                                                                                                      |
| `send_invitation`      | boolean |          | `true`                   | Whether to send a password setup invitation email to the new user                                                                                                             |
| `permission_level`     | integer |          | `1`                      | 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 |
| `unique_tax_reference` | string  |          | `"1234567890"`           | 10-digit UK Tax Reference number                                                                                                                                              |

***

### `Freeagent Create Bank Account`

Integration name: **FREEAGENT\_CREATE\_BANK\_ACCOUNT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                   | Description                                                                                                                                                                                                                                       |
| ----------------- | ------- | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string  |     ✅    | `"Main Business Account"` | The name of the bank account                                                                                                                                                                                                                      |
| `type`            | string  |     ✅    | `"StandardBankAccount"`   | 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`           | string  |          | `"paypal@example.com"`    | Email address for PayPal accounts. Required when type is 'PaypalAccount'.                                                                                                                                                                         |
| `status`          | string  |          | `"active"`                | The status of the account. Use 'active' for accounts in use or 'hidden' to hide the account. Defaults to 'active'.                                                                                                                                |
| `currency`        | string  |     ✅    | `"GBP"`                   | The currency code for the account (e.g., 'GBP', 'USD', 'EUR'). Must be a valid 3-letter ISO currency code.                                                                                                                                        |
| `is_personal`     | boolean |          | `false`                   | Whether the account is personal (true) or business (false). Defaults to false for business accounts.                                                                                                                                              |
| `account_number`  | string  |          | `"1234"`                  | Last 4 digits of the account number for credit card accounts. Required when type is 'CreditCardAccount'.                                                                                                                                          |
| `opening_balance` | string  |          | `"0.0"`                   | The opening balance of the account as a decimal string (e.g., '0.0', '1000.50'). Defaults to '0.0' if not provided.                                                                                                                               |

***

### `Freeagent Create Bill With Attachment`

Integration name: **FREEAGENT\_CREATE\_BILL\_WITH\_ATTACHMENT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                            | Description                                                       |
| ------------ | ------ | :------: | -------------------------------------------------- | ----------------------------------------------------------------- |
| `due_on`     | string |     ✅    | `"2026-02-15"`                                     | Payment due date in YYYY-MM-DD format                             |
| `contact`    | string |     ✅    | `"https://api.freeagent.com/v2/contacts/21185950"` | URI reference to the contact (supplier) associated with this bill |
| `dated_on`   | string |     ✅    | `"2026-01-15"`                                     | Bill date in YYYY-MM-DD format                                    |
| `reference`  | string |     ✅    | `"TEST-BILL-001"`                                  | Free-text reference identifier for the bill                       |
| `attachment` | object |          | —                                                  | Represents an attachment to be added to a bill.                   |
| `bill_items` | array  |     ✅    | —                                                  | Array of bill item objects. Maximum 40 items per bill.            |

***

### `Freeagent Create Category`

Integration name: **FREEAGENT\_CREATE\_CATEGORY**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                    | Description                                                                                                                                                                                          |
| --------------------- | ------- | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `description`         | string  |     ✅    | `"Custom Income Category"` | Category name to display in FreeAgent                                                                                                                                                                |
| `nominal_code`        | string  |     ✅    | `"047"`                    | 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+ |
| `category_group`      | string  |     ✅    | `"income"`                 | Type designation: 'income', 'cost\_of\_sales', 'admin\_expenses', 'current\_assets', 'liabilities', etc.                                                                                             |
| `allowable_for_tax`   | boolean |          | `true`                     | Required for cost\_of\_sales and admin\_expenses categories. Indicates whether this cost is tax-deductible.                                                                                          |
| `tax_reporting_name`  | string  |          | `"Purchases"`              | Required for cost\_of\_sales, admin\_expenses, current\_assets, and liabilities categories. Statutory accounts reporting location.                                                                   |
| `auto_sales_tax_rate` | string  |          | `"Standard rate"`          | VAT rate classification. Defaults to 'Standard rate' if not specified. Examples: 'Standard rate', 'Zero rate', 'Exempt'                                                                              |

***

### `Freeagent Create Contact`

Integration name: **FREEAGENT\_CREATE\_CONTACT**

Tool to create a new contact in FreeAgent. Use when you need to add a new client, supplier, or business contact with their details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example                      | Description                                                                                                  |
| ------------------------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `town`                          | string  |          | `"London"`                   | Town or city name                                                                                            |
| `email`                         | string  |          | `"john.doe@testcompany.com"` | Primary email address for the contact                                                                        |
| `locale`                        | string  |          | `"en"`                       | Locale code for invoice language and formatting preferences                                                  |
| `mobile`                        | string  |          | `"9876543210"`               | Mobile phone number                                                                                          |
| `region`                        | string  |          | `"Greater London"`           | Region, state, or county                                                                                     |
| `country`                       | string  |          | `"United Kingdom"`           | Country name                                                                                                 |
| `address1`                      | string  |          | `"123 Main Street"`          | Address line 1 (street address)                                                                              |
| `address2`                      | string  |          | `"Suite 100"`                | Address line 2 (additional address information)                                                              |
| `address3`                      | string  |          | `"Building C"`               | Address line 3 (additional address information)                                                              |
| `postcode`                      | string  |          | `"SW1A 1AA"`                 | Postal code or ZIP code                                                                                      |
| `last_name`                     | string  |          | `"Doe"`                      | Contact's last name. Either first\_name/last\_name or organisation\_name should be provided.                 |
| `first_name`                    | string  |          | `"John"`                     | Contact's first name. Either first\_name/last\_name or organisation\_name should be provided.                |
| `phone_number`                  | string  |          | `"1234567890"`               | Primary phone number                                                                                         |
| `billing_email`                 | string  |          | `"billing@testcompany.com"`  | Billing email address for invoices and financial communications                                              |
| `charge_sales_tax`              | string  |          | `"Auto"`                     | Sales tax charging mode: Auto (based on location), Always (always charge), or Never (never charge)           |
| `organisation_name`             | string  |          | `"Test Company"`             | Organization or company name. Either first\_name/last\_name or organisation\_name should be provided.        |
| `contact_name_on_invoices`      | boolean |          | —                            | Whether to display contact name with organization name on invoices. Set to true to show both.                |
| `default_payment_terms_in_days` | integer |          | `30`                         | Default payment terms duration in days for invoices sent to this contact                                     |
| `sales_tax_registration_number` | string  |          | `"GB123456789"`              | Sales tax or VAT registration number for the contact                                                         |
| `uses_contact_invoice_sequence` | boolean |          | —                            | Whether this contact uses a separate invoice numbering sequence. Set to true for contact-specific numbering. |

***

### `Freeagent Create Credit Note`

Integration name: **FREEAGENT\_CREATE\_CREDIT\_NOTE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                            | Description                                                                                     |
| ----------------------- | ------- | :------: | -------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `due_on`                | string  |          | `"2026-01-15"`                                     | Due date in YYYY-MM-DD format                                                                   |
| `contact`               | string  |     ✅    | `"https://api.freeagent.com/v2/contacts/21185950"` | URI reference to the contact being credited (e.g., <https://api.freeagent.com/v2/contacts/123>) |
| `project`               | string  |          | `"https://api.freeagent.com/v2/projects/456"`      | URI reference to project                                                                        |
| `comments`              | string  |          | `"Refund for cancelled order"`                     | Additional comments for the credit note                                                         |
| `currency`              | string  |          | `"GBP"`                                            | Currency code (e.g., GBP, USD, EUR). Defaults to company's native currency                      |
| `dated_on`              | string  |     ✅    | `"2026-01-15"`                                     | Date of the credit note in YYYY-MM-DD format                                                    |
| `reference`             | string  |          | `"CN-TEST-001"`                                    | Credit note reference number (auto-generated if omitted)                                        |
| `omit_header`           | boolean |          | `true`                                             | Boolean flag to hide logo/address on credit note                                                |
| `bank_account`          | string  |          | `"https://api.freeagent.com/v2/bank_accounts/123"` | URI reference to bank account for remittance advice                                             |
| `discount_percent`      | string  |          | `"0.10"`                                           | Discount percentage as decimal string                                                           |
| `credit_note_items`     | array   |          | —                                                  | Array of line items for the credit note                                                         |
| `payment_terms_in_days` | integer |     ✅    | `0`                                                | Payment terms in days (set to 0 for 'Due on Receipt')                                           |

***

### `Freeagent Create Credit Note Reconciliation`

Integration name: **FREEAGENT\_CREATE\_CREDIT\_NOTE\_RECONCILIATION**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                | Description                                                                                                                                                                                                          |
| --------------- | ------ | :------: | ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invoice`       | string |     ✅    | `"https://api.freeagent.com/v2/invoices/85939270"`     | 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.                                                |
| `currency`      | string |     ✅    | `"GBP"`                                                | The currency code for the reconciliation (e.g., 'GBP', 'USD', 'EUR'). Must be a valid 3-letter ISO currency code.                                                                                                    |
| `dated_on`      | string |     ✅    | `"2026-01-15"`                                         | The date of the reconciliation in YYYY-MM-DD format. This is the effective date when the reconciliation occurs.                                                                                                      |
| `credit_note`   | string |     ✅    | `"https://api.freeagent.com/v2/credit_notes/85939318"` | 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.                                      |
| `gross_value`   | string |     ✅    | `"25.0"`                                               | 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.                                                         |
| `exchange_rate` | string |     ✅    | `"1.0"`                                                | 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. |

***

### `Freeagent Create Estimate`

Integration name: **FREEAGENT\_CREATE\_ESTIMATE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                          | Type    | Required | Example                                            | Description                                                                                                |
| ---------------------------------- | ------- | :------: | -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `notes`                            | string  |          | `"Test estimate created via API"`                  | Additional notes or description for the estimate                                                           |
| `status`                           | string  |     ✅    | `"Draft"`                                          | Initial status of the estimate. Must be one of: Draft, Sent, Open, Approved, Rejected, Invoiced            |
| `contact`                          | string  |     ✅    | `"https://api.freeagent.com/v2/contacts/21185950"` | URI of the contact for whom the estimate is created (e.g., <https://api.freeagent.com/v2/contacts/123>)    |
| `project`                          | string  |          | `"https://api.freeagent.com/v2/projects/123"`      | URI of the project to associate with the estimate (e.g., <https://api.freeagent.com/v2/projects/123>)      |
| `currency`                         | string  |          | `"GBP"`                                            | Currency code for the estimate (e.g., GBP, USD, EUR). If not specified, defaults to the contact's currency |
| `dated_on`                         | string  |     ✅    | `"2026-01-15"`                                     | Date of the estimate in YYYY-MM-DD format                                                                  |
| `ec_status`                        | string  |          | `"UK/Non-EC"`                                      | VAT status for reporting purposes. One of: UK/Non-EC, EC Goods, EC Services, Reverse Charge, EC VAT MOSS   |
| `reference`                        | string  |     ✅    | `"EST-001"`                                        | Free-text reference identifier for the estimate                                                            |
| `estimate_type`                    | string  |     ✅    | `"Estimate"`                                       | Type of estimate document. Must be one of: Estimate, Quote, or Proposal                                    |
| `estimate_items`                   | array   |     ✅    | —                                                  | List of items to include in the estimate. At least one item is required.                                   |
| `place_of_supply`                  | string  |          | `"GB"`                                             | Place of supply for VAT purposes. Required when ec\_status is 'EC VAT MOSS'                                |
| `discount_percent`                 | string  |          | `"10.0"`                                           | Discount percentage applied across the entire estimate as a decimal string                                 |
| `client_contact_name`              | string  |          | `"John Smith"`                                     | Overrides the default contact name on the estimate                                                         |
| `include_sales_tax_on_total_value` | boolean |          | —                                                  | Whether sales tax should be included in the total value. Defaults to true                                  |

***

### `Freeagent Create Estimate Item`

Integration name: **FREEAGENT\_CREATE\_ESTIMATE\_ITEM**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                      | Description                                                                           |
| --------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------- |
| `estimate`      | string |     ✅    | `"https://api.freeagent.com/v2/estimates/1"` | URL of the estimate where the item should be added.                                   |
| `estimate_item` | object |     ✅    | —                                            | Details of the estimate item to create including position, type, quantity, and price. |

***

### `Freeagent Create Estimates Duplicate`

Integration name: **FREEAGENT\_CREATE\_ESTIMATES\_DUPLICATE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                         |
| --------- | ------ | :------: | ----------- | ----------------------------------- |
| `id`      | string |     ✅    | `"6695166"` | The ID of the estimate to duplicate |

***

### `Freeagent Create Estimates Send Email`

Integration name: **FREEAGENT\_CREATE\_ESTIMATES\_SEND\_EMAIL**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                                           |
| ---------- | ------ | :------: | ----------- | ----------------------------------------------------- |
| `id`       | string |     ✅    | `"6695297"` | The estimate identifier (numeric ID or full URL path) |
| `estimate` | object |     ✅    | —           | Root object containing email configuration            |

***

### `Freeagent Create Invoice`

Integration name: **FREEAGENT\_CREATE\_INVOICE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                            | Description                                                                                     |
| ------------------------- | ------- | :------: | -------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `due_on`                  | string  |     ✅    | `"2026-02-14"`                                     | Due date in YYYY-MM-DD format                                                                   |
| `contact`                 | string  |     ✅    | `"https://api.freeagent.com/v2/contacts/21185950"` | URL of the contact being invoiced (e.g., <https://api.freeagent.com/v2/contacts/123>)           |
| `comments`                | string  |          | `"Test invoice created via API"`                   | Invoice comments or notes                                                                       |
| `currency`                | string  |          | `"GBP"`                                            | Currency code (e.g., 'GBP', 'USD', 'EUR'). Defaults to company native currency if not provided. |
| `dated_on`                | string  |     ✅    | `"2026-01-15"`                                     | Invoice date in YYYY-MM-DD format                                                               |
| `reference`               | string  |          | `"INV-001"`                                        | Invoice reference number (optional, auto-generated if omitted)                                  |
| `invoice_items`           | array   |          | —                                                  | Array of invoice line items to add to the invoice                                               |
| `send_reminder_emails`    | boolean |          | `true`                                             | Send payment reminder emails                                                                    |
| `payment_terms_in_days`   | integer |     ✅    | `30`                                               | Payment term duration in days                                                                   |
| `send_thank_you_emails`   | boolean |          | `true`                                             | Send thank you emails after payment                                                             |
| `send_new_invoice_emails` | boolean |          | `true`                                             | Send new invoice notification emails to the contact                                             |

***

### `Freeagent Create Invoice Item`

Integration name: **FREEAGENT\_CREATE\_INVOICE\_ITEM**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                     | Description                                                                             |
| -------------- | ------ | :------: | ------------------------------------------- | --------------------------------------------------------------------------------------- |
| `invoice`      | string |     ✅    | `"https://api.freeagent.com/v2/invoices/1"` | URL of the invoice where the item should be added.                                      |
| `invoice_item` | object |     ✅    | —                                           | Details of the invoice item to create including type, quantity, price, and description. |

***

### `Freeagent Create Invoices Duplicate`

Integration name: **FREEAGENT\_CREATE\_INVOICES\_DUPLICATE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                                                                                                             |
| --------- | ------ | :------: | ------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"85939041"` | The ID of the invoice to duplicate. Extract from invoice URL (e.g., '85939041' from '<https://api.freeagent.com/v2/invoices/85939041>') |

***

### `Freeagent Create Notes`

Integration name: **FREEAGENT\_CREATE\_NOTES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                       | Description                                                                                                                          |
| --------- | ------ | :------: | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `note`    | string |     ✅    | `"This is a test note created via API to verify the endpoint functionality."` | The text content of the note to create                                                                                               |
| `contact` | string |          | `"https://api.freeagent.com/v2/contacts/21185895"`                            | URL of the contact to attach the note to (e.g., <https://api.freeagent.com/v2/contacts/123>). Either contact or project is required. |
| `project` | string |          | `"https://api.freeagent.com/v2/projects/123"`                                 | URL of the project to attach the note to (e.g., <https://api.freeagent.com/v2/projects/123>). Either contact or project is required. |

***

### `Freeagent Create Price List Items`

Integration name: **FREEAGENT\_CREATE\_PRICE\_LIST\_ITEMS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                         | Description                                                                                                                 |
| ----------------------- | ------ | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `code`                  | string |     ✅    | `"TEST-001"`                                    | Unique identifier code for the item. Used for invoice/estimate reference.                                                   |
| `price`                 | string |     ✅    | `"9.99"`                                        | Unit price per item as a decimal string in the company currency.                                                            |
| `category`              | string |          | `"https://api.freeagent.com/v2/categories/001"` | Income accounting category URI reference. Must be a valid FreeAgent category API URL.                                       |
| `quantity`              | string |     ✅    | `"1.0"`                                         | Item quantity as a decimal string. For single items, use '1.0'.                                                             |
| `item_type`             | string |     ✅    | `"Products"`                                    | Category of the item such as Products, Services, Hours, Days, etc.                                                          |
| `vat_status`            | string |          | `"standard"`                                    | VAT status for UK accounts. Options: 'standard', 'reduced', 'zero', or 'out\_of\_scope'. Leave empty for non-UK accounts.   |
| `description`           | string |     ✅    | `"Test Product Item"`                           | Free-text description of the item.                                                                                          |
| `sales_tax_rate`        | string |          | `"0.20"`                                        | Sales tax rate as a decimal string for Universal/US accounts. For example, '0.20' for 20% tax. Leave empty for UK accounts. |
| `second_sales_tax_rate` | string |          | `"0.05"`                                        | Secondary sales tax rate as a decimal string for Universal accounts with multiple tax jurisdictions.                        |

***

### `Freeagent Create Project`

Integration name: **FREEAGENT\_CREATE\_PROJECT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example                                            | Description                                                                                                                                      |
| ------------------------------- | ------- | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                          | string  |     ✅    | `"Website Redesign"`                               | Free-text project name                                                                                                                           |
| `budget`                        | number  |     ✅    | `5000`                                             | Project budget amount (use zero if none exists). Must be non-negative.                                                                           |
| `status`                        | string  |     ✅    | `"Active"`                                         | Project status. Active = in progress, Completed = finished, Cancelled = abandoned, Hidden = archived from view.                                  |
| `contact`                       | string  |     ✅    | `"https://api.freeagent.com/v2/contacts/21185950"` | Contact to bill for the project - URI reference like <https://api.freeagent.com/v2/contacts/{id}>                                                |
| `ends_on`                       | string  |          | `"2024-12-31"`                                     | Project end date in YYYY-MM-DD format                                                                                                            |
| `is_ir35`                       | boolean |          | `true`                                             | Indicates IR35 employment classification status for UK tax purposes                                                                              |
| `currency`                      | string  |     ✅    | `"GBP"`                                            | ISO currency code (e.g., USD, GBP, EUR). Must be a valid 3-letter ISO currency code.                                                             |
| `starts_on`                     | string  |          | `"2024-01-15"`                                     | Project start date in YYYY-MM-DD format                                                                                                          |
| `budget_units`                  | string  |     ✅    | `"Hours"`                                          | Budget tracking unit. Hours = time-based in hours, Days = time-based in days, Monetary = financial amount.                                       |
| `hours_per_day`                 | number  |          | `7.5`                                              | Daily hours for day-based billing. Typically 7.5 or 8.0. Must be positive.                                                                       |
| `billing_period`                | string  |          | `"hour"`                                           | Billing period for the normal\_billing\_rate. Required when normal\_billing\_rate is specified.                                                  |
| `normal_billing_rate`           | number  |          | `75`                                               | Standard billing rate amount. Must be non-negative.                                                                                              |
| `contract_po_reference`         | string  |          | `"PO-2024-001"`                                    | Contract or purchase order reference number                                                                                                      |
| `uses_project_invoice_sequence` | boolean |     ✅    | `true`                                             | Indicates if invoicing follows project-level sequencing. Set to true for project-specific invoice numbering, false to use company-wide sequence. |

***

### `Freeagent Delete Bank Transaction`

Integration name: **FREEAGENT\_DELETE\_BANK\_TRANSACTION**

Tool to delete a bank transaction explanation in FreeAgent. Use when you need to remove an explanation from a bank transaction.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                          |
| --------- | ------ | :------: | ------------- | ---------------------------------------------------- |
| `id`      | string |     ✅    | `"667920853"` | The ID of the bank transaction explanation to delete |

***

### `Freeagent Delete Estimates Default Additional Text`

Integration name: **FREEAGENT\_DELETE\_ESTIMATES\_DEFAULT\_ADDITIONAL\_TEXT**

Tool to delete default additional text for estimates in FreeAgent. Use when you need to remove the default additional text that appears on estimates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Delete Notes1`

Integration name: **FREEAGENT\_DELETE\_NOTES1**

Tool to delete a note by its ID. Use when you need to permanently remove a note from FreeAgent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                 |
| --------- | ------ | :------: | ---------- | ------------------------------------------- |
| `id`      | string |     ✅    | `"984267"` | The unique identifier of the note to delete |

***

### `Freeagent Get Invoice Timeline`

Integration name: **FREEAGENT\_GET\_INVOICE\_TIMELINE**

Tool to retrieve invoice timeline showing chronological record of invoice-related events. Use when you need to track invoice payment history and related activities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Get Mileage Settings`

Integration name: **FREEAGENT\_GET\_MILEAGE\_SETTINGS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Get Opening Balances`

Integration name: **FREEAGENT\_GET\_OPENING\_BALANCES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Get Personal Profile`

Integration name: **FREEAGENT\_GET\_PERSONAL\_PROFILE**

Tool to retrieve the authenticated user's personal profile from FreeAgent. Use when you need information about the current user's details, role, or permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Get The Opening Balances`

Integration name: **FREEAGENT\_GET\_THE\_OPENING\_BALANCES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Get The Pl Summary`

Integration name: **FREEAGENT\_GET\_THE\_PL\_SUMMARY**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example        | Description                                                                                                                                                           |
| ------------------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_date`           | string |          | `"2024-12-31"` | 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.                                |
| `from_date`         | string |          | `"2024-01-01"` | 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` | string |          | `"2024/25"`    | 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.               |

***

### `Freeagent Get The Trial Balance Summary`

Integration name: **FREEAGENT\_GET\_THE\_TRIAL\_BALANCE\_SUMMARY**

Tool to get the trial balance summary from FreeAgent. Use when you need to retrieve the trial balance report data for accounting purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                                                                                                                             |
| ----------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_date`   | string |          | `"2024-12-31"` | 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. |
| `from_date` | string |          | `"2024-01-01"` | Start date in YYYY-MM-DD format. When combined with to\_date, returns trial balance for custom date range.                                              |

***

### `Freeagent List Accounting Balance Sheet`

Integration name: **FREEAGENT\_LIST\_ACCOUNTING\_BALANCE\_SHEET**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                                                                                                   |
| ------------ | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `as_at_date` | string |          | `"2023-09-30"` | 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. |

***

### `Freeagent List Accounting Balance Sheet2`

Integration name: **FREEAGENT\_LIST\_ACCOUNTING\_BALANCE\_SHEET2**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Accounting Transactions`

Integration name: **FREEAGENT\_LIST\_ACCOUNTING\_TRANSACTIONS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example        | Description                                                                                                                                                                          |
| -------------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`         | integer |          | `1`            | Page number for pagination. Default is 1.                                                                                                                                            |
| `to_date`      | string  |          | `"2024-12-31"` | 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'   |
| `per_page`     | integer |          | `25`           | Number of records to return per page. Maximum 100, default 25.                                                                                                                       |
| `from_date`    | string  |          | `"2024-01-01"` | 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' |
| `nominal_code` | string  |          | `"001"`        | Filter transactions by nominal code. Use this to retrieve transactions for a specific accounting category.                                                                           |

***

### `Freeagent List All Cis Bands For A Company`

Integration name: **FREEAGENT\_LIST\_ALL\_CIS\_BANDS\_FOR\_A\_COMPANY**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List All Expenses`

Integration name: **FREEAGENT\_LIST\_ALL\_EXPENSES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                       | Description                                                                                                                        |
| --------------- | ------- | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                                                          |
| `view`          | string  |          | `"recent"`                                    | Filter type: 'recent' displays only recent expenses, 'recurring' shows recurring expenses. Leave empty for all expenses.           |
| `project`       | string  |          | `"https://api.freeagent.com/v2/projects/123"` | Filter by specific project URI. Use the full project URI from FreeAgent API (e.g., '<https://api.freeagent.com/v2/projects/123>'). |
| `to_date`       | string  |          | `"2024-12-31"`                                | End date for expense range in YYYY-MM-DD format. Use to filter expenses up to this date.                                           |
| `per_page`      | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                                                     |
| `from_date`     | string  |          | `"2024-01-01"`                                | Start date for expense range in YYYY-MM-DD format. Use to filter expenses from this date onwards.                                  |
| `updated_since` | string  |          | `"2024-01-01T00:00:00Z"`                      | ISO 8601 timestamp filter to return only expenses modified after this datetime. Format: YYYY-MM-DDTHH:MM:SSZ                       |

***

### `Freeagent List All Price List Items`

Integration name: **FREEAGENT\_LIST\_ALL\_PRICE\_LIST\_ITEMS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example        | Description                                                                                                                                                                                                                     |
| ---------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | `1`            | Page number for pagination. Default is 1.                                                                                                                                                                                       |
| `sort`     | string  |          | `"created_at"` | 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. |
| `per_page` | integer |          | `25`           | Number of records to return per page. Maximum 100, default 25.                                                                                                                                                                  |

***

### `Freeagent List All Properties`

Integration name: **FREEAGENT\_LIST\_ALL\_PROPERTIES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                    |
| ---------- | ------- | :------: | ------- | -------------------------------------------------------------- |
| `page`     | integer |          | `1`     | Page number for pagination. Default is 1.                      |
| `per_page` | integer |          | `25`    | Number of records to return per page. Maximum 100, default 25. |

***

### `Freeagent List All Recurring Invoices`

Integration name: **FREEAGENT\_LIST\_ALL\_RECURRING\_INVOICES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                       | Description                                                                                                                            |
| ---------------------- | ------- | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `page`                 | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                                                              |
| `view`                 | string  |          | `"draft"`                                     | Filter by invoice status: draft (draft recurring invoices), active (active recurring invoices), inactive (inactive recurring invoices) |
| `contact`              | string  |          | `"https://api.freeagent.com/v2/contacts/123"` | Filter by contact URL (e.g., '<https://api.freeagent.com/v2/contacts/123>')                                                            |
| `per_page`             | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                                                         |
| `nested_invoice_items` | boolean |          | —                                             | Include nested invoice items in the response. When true, invoice\_items array will be populated with line items                        |

***

### `Freeagent List All Sales Tax Periods For A Company`

Integration name: **FREEAGENT\_LIST\_ALL\_SALES\_TAX\_PERIODS\_FOR\_A\_COMPANY**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List All Stock Items`

Integration name: **FREEAGENT\_LIST\_ALL\_STOCK\_ITEMS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example        | Description                                                                                                                                                                                                                                                  |
| ---------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`     | integer |          | `1`            | Page number for pagination. Default is 1.                                                                                                                                                                                                                    |
| `sort`     | string  |          | `"created_at"` | 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. |
| `per_page` | integer |          | `25`           | Number of records to return per page. Maximum 100, default 25.                                                                                                                                                                                               |

***

### `Freeagent List All Tasks`

Integration name: **FREEAGENT\_LIST\_ALL\_TASKS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                     | Description                                                                            |
| --------------- | ------- | :------: | ------------------------------------------- | -------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                                         | Page number for pagination. Default is 1.                                              |
| `sort`          | string  |          | `"name"`                                    | Sort order for tasks: name (default), project, billing\_rate, created\_at, updated\_at |
| `view`          | string  |          | `"all"`                                     | Filter tasks by status: all (default), active, completed, hidden                       |
| `project`       | string  |          | `"https://api.freeagent.com/v2/projects/2"` | Filter tasks by project URL (e.g., <https://api.freeagent.com/v2/projects/2>)          |
| `per_page`      | integer |          | `25`                                        | Number of records to return per page. Maximum 100, default 25.                         |
| `updated_since` | string  |          | `"2017-04-06"`                              | Filter tasks updated since this date. ISO date format (e.g., 2017-04-06)               |

***

### `Freeagent List All Timeslips`

Integration name: **FREEAGENT\_LIST\_ALL\_TIMESLIPS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                       | Description                                                                                                                                        |
| --------------- | ------- | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                                                                          |
| `task`          | string  |          | `"https://api.freeagent.com/v2/tasks/456"`    | Filter by task URI. Use the full task URI from FreeAgent API (e.g., '<https://api.freeagent.com/v2/tasks/456>').                                   |
| `user`          | string  |          | `"https://api.freeagent.com/v2/users/123"`    | Filter by user URI. Use the full user URI from FreeAgent API (e.g., '<https://api.freeagent.com/v2/users/123>').                                   |
| `view`          | string  |          | `"all"`                                       | Filter timeslips by status: 'all' (default), 'unbilled', or 'running'. Use 'unbilled' for timeslips not yet invoiced, 'running' for active timers. |
| `nested`        | boolean |          | —                                             | Return associated resources (user, project, task) as nested JSON objects instead of URI references. Set to true for detailed nested data.          |
| `project`       | string  |          | `"https://api.freeagent.com/v2/projects/789"` | Filter by project URI. Use the full project URI from FreeAgent API (e.g., '<https://api.freeagent.com/v2/projects/789>').                          |
| `to_date`       | string  |          | `"2024-12-31"`                                | Filter by end date in YYYY-MM-DD format. Returns timeslips up to this date.                                                                        |
| `per_page`      | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                                                                     |
| `from_date`     | string  |          | `"2024-01-01"`                                | Filter by start date in YYYY-MM-DD format. Returns timeslips from this date onwards.                                                               |
| `updated_since` | string  |          | `"2024-01-01T00:00:00Z"`                      | Filter by update timestamp in ISO 8601 format. Returns only timeslips updated after this datetime.                                                 |

***

### `Freeagent List All Users`

Integration name: **FREEAGENT\_LIST\_ALL\_USERS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                             |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `view`    | string |          | `"all"` | 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) |

***

### `Freeagent List Bank Accounts`

Integration name: **FREEAGENT\_LIST\_BANK\_ACCOUNTS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                                                                                        |
| --------- | ------ | :------: | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `view`    | string |          | `"standard_bank_accounts"` | Filter results by account type: standard\_bank\_accounts, credit\_card\_accounts, or paypal\_accounts. If not provided, returns all account types. |

***

### `Freeagent List Bank Feeds`

Integration name: **FREEAGENT\_LIST\_BANK\_FEEDS**

Tool to list all bank feeds for a company. Use when you need to retrieve the list of bank feeds and their current status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Bank Transactions`

Integration name: **FREEAGENT\_LIST\_BANK\_TRANSACTIONS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                | Description                                                                                                                                                                                                                                                                                                                                                   |
| --------------- | ------- | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                                                    | Page number for pagination. Default is 1.                                                                                                                                                                                                                                                                                                                     |
| `view`          | string  |          | —                                                      | 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. |
| `to_date`       | string  |          | `"2024-12-31"`                                         | End date for filtering transactions in YYYY-MM-DD format. Returns transactions dated on or before this date.                                                                                                                                                                                                                                                  |
| `per_page`      | integer |          | `25`                                                   | Number of records to return per page. Maximum 100, default 25.                                                                                                                                                                                                                                                                                                |
| `from_date`     | string  |          | `"2024-01-01"`                                         | Start date for filtering transactions in YYYY-MM-DD format. Returns transactions dated on or after this date.                                                                                                                                                                                                                                                 |
| `bank_account`  | string  |     ✅    | `"https://api.freeagent.com/v2/bank_accounts/1840732"` | 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.                                                                                                                                                                                        |
| `last_uploaded` | boolean |          | —                                                      | If true, returns only transactions from the most recently uploaded bank statement. Useful for processing new transactions.                                                                                                                                                                                                                                    |
| `updated_since` | string  |          | `"2024-01-15T10:30:00Z"`                               | Returns transactions updated after this timestamp. Must be in ISO 8601 format (e.g., '2024-01-15T10:30:00Z').                                                                                                                                                                                                                                                 |

***

### `Freeagent List Bills`

Integration name: **FREEAGENT\_LIST\_BILLS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                       | Description                                                                                    |
| ------------------- | ------- | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `page`              | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                      |
| `view`              | string  |          | `"open"`                                      | Filter by status: all, open, overdue, open\_or\_overdue, paid, recurring, hire\_purchase, cis. |
| `contact`           | string  |          | `"https://api.freeagent.com/v2/contacts/123"` | Filter by contact API URL.                                                                     |
| `project`           | string  |          | `"https://api.freeagent.com/v2/projects/456"` | Filter by project API URL.                                                                     |
| `to_date`           | string  |          | `"2024-12-31"`                                | End date filter in YYYY-MM-DD format.                                                          |
| `per_page`          | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                 |
| `from_date`         | string  |          | `"2024-01-01"`                                | Start date filter in YYYY-MM-DD format.                                                        |
| `updated_since`     | string  |          | `"2024-01-01T00:00:00Z"`                      | Filter by update time in ISO 8601 timestamp format.                                            |
| `nested_bill_items` | boolean |          | —                                             | Include bill items in response when set to true.                                               |

***

### `Freeagent List Business Categories`

Integration name: **FREEAGENT\_LIST\_BUSINESS\_CATEGORIES**

Tool to retrieve all available business categories from FreeAgent. Use when you need to get the complete list of industry classifications for company categorization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Categories`

Integration name: **FREEAGENT\_LIST\_CATEGORIES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                                                                                 |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sub_accounts` | boolean |          | `true`  | 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'). |

***

### `Freeagent List Contacts`

Integration name: **FREEAGENT\_LIST\_CONTACTS**

Tool to list contacts in FreeAgent. Use when you need to retrieve contacts with optional filtering by type, sort order, or update date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                       |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number for pagination. Default is 1.                                                                                                         |
| `sort`          | string  |          | `"name"`                 | Sort order: name (default), created\_at, updated\_at. Prefix with - for descending order (e.g., -name)                                            |
| `view`          | string  |          | `"active"`               | Filter contacts by type: all, active (default), clients, suppliers, active\_projects, completed\_projects, open\_clients, open\_suppliers, hidden |
| `per_page`      | integer |          | `25`                     | Number of records to return per page. Maximum 100, default 25.                                                                                    |
| `updated_since` | string  |          | `"2023-01-01T00:00:00Z"` | ISO 8601 format datetime - only return contacts updated since the provided date and time                                                          |

***

### `Freeagent List Credit Note Reconciliations`

Integration name: **FREEAGENT\_LIST\_CREDIT\_NOTE\_RECONCILIATIONS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                      | Description                                                                                                                                |
| --------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`          | integer |          | `1`                          | Page number for pagination. Default is 1.                                                                                                  |
| `to_date`       | string  |          | `"2017-05-22"`               | Filter by reconciliation date to (inclusive) in YYYY-MM-DD format. Only returns reconciliations dated on or before this date.              |
| `per_page`      | integer |          | `25`                         | Number of records to return per page. Maximum 100, default 25.                                                                             |
| `from_date`     | string  |          | `"2017-05-22"`               | Filter by reconciliation date from (inclusive) in YYYY-MM-DD format. Only returns reconciliations dated on or after this date.             |
| `updated_since` | string  |          | `"2017-05-22T09:00:00.000Z"` | Filter by update timestamp in ISO 8601 format (e.g., 2017-05-22T09:00:00.000Z). Only returns reconciliations updated after this timestamp. |

***

### `Freeagent List Credit Notes`

Integration name: **FREEAGENT\_LIST\_CREDIT\_NOTES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                       | Description                                                                                                                                                                                                        |
| -------------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`                     | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                                                                                                                                          |
| `sort`                     | string  |          | `"created_at"`                                | Sort results by 'created\_at' or 'updated\_at'. Prefix with hyphen for descending order (e.g., '-updated\_at')                                                                                                     |
| `view`                     | string  |          | `"all"`                                       | 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'. |
| `contact`                  | string  |          | `"https://api.freeagent.com/v2/contacts/123"` | Filter by specific contact URL (e.g., '<https://api.freeagent.com/v2/contacts/123>')                                                                                                                               |
| `project`                  | string  |          | `"https://api.freeagent.com/v2/projects/456"` | Filter by specific project URL (e.g., '<https://api.freeagent.com/v2/projects/456>')                                                                                                                               |
| `per_page`                 | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                                                                                                                                     |
| `updated_since`            | string  |          | `"2024-01-01T00:00:00Z"`                      | Retrieve records modified after specified timestamp (ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ)                                                                                                                        |
| `nested_credit_note_items` | boolean |          | `true`                                        | When true, includes credit note items nested in response. Increases payload size but eliminates need for separate item requests.                                                                                   |

***

### `Freeagent List Ec Moss Sales Tax Rates`

Integration name: **FREEAGENT\_LIST\_EC\_MOSS\_SALES\_TAX\_RATES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                                                                                                             |
| --------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `date`    | string |     ✅    | `"2024-01-01"` | Transaction date in YYYY-MM-DD format. Required to retrieve the tax rates that were applicable on that specific date.                   |
| `country` | string |     ✅    | `"Austria"`    | An EU member state name (e.g., Austria, France, Germany, Spain, Italy). Required to retrieve the applicable VAT rates for that country. |

***

### `Freeagent List Estimates`

Integration name: **FREEAGENT\_LIST\_ESTIMATES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                       | Description                                                                                                                                            |
| ----------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`                  | integer |          | `1`                                           | Page number for pagination. Default is 1.                                                                                                              |
| `view`                  | string  |          | `"all"`                                       | Filter estimates by status: all (default), recent, draft, non\_draft, sent, approved, rejected, invoiced                                               |
| `contact`               | string  |          | `"https://api.freeagent.com/v2/contacts/123"` | Filter estimates for a specific contact. Provide the contact URI                                                                                       |
| `invoice`               | string  |          | `"https://api.freeagent.com/v2/invoices/789"` | Filter estimates related to a specific invoice. Provide the invoice URI                                                                                |
| `project`               | string  |          | `"https://api.freeagent.com/v2/projects/456"` | Filter estimates for a specific project. Provide the project URI                                                                                       |
| `to_date`               | string  |          | `"2024-12-31"`                                | Filter estimates up to this date. Format: YYYY-MM-DD                                                                                                   |
| `per_page`              | integer |          | `25`                                          | Number of records to return per page. Maximum 100, default 25.                                                                                         |
| `from_date`             | string  |          | `"2024-01-01"`                                | Filter estimates from this date onwards. Format: YYYY-MM-DD                                                                                            |
| `updated_since`         | string  |          | `"2024-01-01T00:00:00Z"`                      | Returns estimates updated after specified timestamp. Format: ISO 8601 timestamp                                                                        |
| `nested_estimate_items` | boolean |          | —                                             | Include estimate items nested within each estimate in the response. Set to true to eliminate the need for separate requests to retrieve estimate items |

***

### `Freeagent List Estimates Default Additional Text`

Integration name: **FREEAGENT\_LIST\_ESTIMATES\_DEFAULT\_ADDITIONAL\_TEXT**

Tool to retrieve the default additional text for estimates. Use when you need to get the default text that appears on all estimate documents.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Final Accounts Reports`

Integration name: **FREEAGENT\_LIST\_FINAL\_ACCOUNTS\_REPORTS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Hire Purchases`

Integration name: **FREEAGENT\_LIST\_HIRE\_PURCHASES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Invoices Default Additional Text`

Integration name: **FREEAGENT\_LIST\_INVOICES\_DEFAULT\_ADDITIONAL\_TEXT**

Tool to get the default additional text shown on all invoices. Use when you need to retrieve the default invoice text.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent List Notes`

Integration name: **FREEAGENT\_LIST\_NOTES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                            | Description                                                                                                                            |
| ---------- | ------- | :------: | -------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `page`     | integer |          | `1`                                                | Page number for pagination. Default is 1.                                                                                              |
| `contact`  | string  |          | `"https://api.freeagent.com/v2/contacts/21185895"` | Filter notes by contact URL (e.g., <https://api.freeagent.com/v2/contacts/123>). Either contact or project can be specified, not both. |
| `project`  | string  |          | `"https://api.freeagent.com/v2/projects/123"`      | Filter notes by project URL (e.g., <https://api.freeagent.com/v2/projects/456>). Either contact or project can be specified, not both. |
| `per_page` | integer |          | `25`                                               | Number of records to return per page. Maximum 100, default 25.                                                                         |

***

### `Freeagent List Projects`

Integration name: **FREEAGENT\_LIST\_PROJECTS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example    | Description                                                                                                                                      |
| ---------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`     | integer |          | `1`        | Page number for pagination. Default is 1.                                                                                                        |
| `sort`     | string  |          | `"name"`   | Order by: name, contact\_name, contact\_display\_name, created\_at, or updated\_at. Prefix with '-' for descending order (e.g., '-created\_at'). |
| `view`     | string  |          | `"active"` | Filter by status: active, completed, cancelled, hidden. If not specified, returns all projects.                                                  |
| `nested`   | boolean |          | `true`     | Include full contact details as nested object. If false or not specified, returns only contact URL reference.                                    |
| `per_page` | integer |          | `25`       | Number of records to return per page. Maximum 100, default 25.                                                                                   |

***

### `Freeagent List Vat Returns`

Integration name: **FREEAGENT\_LIST\_VAT\_RETURNS**

Tool to list VAT returns for a company in FreeAgent. Use when you need to retrieve VAT return records, their filing status, and payment information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Show Tax Timeline`

Integration name: **FREEAGENT\_SHOW\_TAX\_TIMELINE**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Freeagent Update Bank Transaction Explanations`

Integration name: **FREEAGENT\_UPDATE\_BANK\_TRANSACTION\_EXPLANATIONS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type   | Required | Example       | Description                                                                                                          |
| ------------------------------ | ------ | :------: | ------------- | -------------------------------------------------------------------------------------------------------------------- |
| `id`                           | string |     ✅    | `"667923205"` | The numeric identifier of the bank transaction explanation to update. This is the ID from the explanation's URL.     |
| `bank_transaction_explanation` | object |     ✅    | —             | Root element containing the bank transaction explanation data to update. Include only the fields you want to modify. |

***

### `Freeagent Update Estimates Default Additional Text`

Integration name: **FREEAGENT\_UPDATE\_ESTIMATES\_DEFAULT\_ADDITIONAL\_TEXT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                                                         | Description                                                                                                                |
| ------------------------- | ------ | :------: | ------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `default_additional_text` | string |     ✅    | `"Please respond to this estimate within 14 days. Terms and conditions apply."` | The text to display on all estimates. Use this to set standard terms, conditions, or instructions for estimate recipients. |

***

### `Freeagent Update Estimates Transitions Convert`

Integration name: **FREEAGENT\_UPDATE\_ESTIMATES\_TRANSITIONS\_CONVERT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                             |
| --------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"6695297"` | The unique identifier of the estimate to convert to an invoice. Can be the numeric ID or full URL path. |

***

### `Freeagent Update Expenses`

Integration name: **FREEAGENT\_UPDATE\_EXPENSES**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                         | Description                                                                                                                                              |
| ------------------------- | ------- | :------: | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                      | string  |     ✅    | `"60124452"`                                    | The unique identifier of the expense to update. Extract from the expense URL (e.g., '60124452' from '<https://api.freeagent.com/v2/expenses/60124452>'). |
| `user`                    | string  |          | `"https://api.freeagent.com/v2/users/123"`      | URL reference to the expense claimant (user who claimed the expense). Format: '<https://api.freeagent.com/v2/users/{id}>'                                |
| `mileage`                 | string  |          | `"50.5"`                                        | Number of miles travelled for mileage expenses. Only applicable when category is 'Mileage'.                                                              |
| `project`                 | string  |          | `"https://api.freeagent.com/v2/projects/789"`   | URL reference to a project for rebilling this expense. Format: '<https://api.freeagent.com/v2/projects/{id}>'                                            |
| `category`                | string  |          | `"https://api.freeagent.com/v2/categories/456"` | URL reference to the accounting category or the literal string 'Mileage' for mileage expenses. Format: '<https://api.freeagent.com/v2/categories/{id}>'  |
| `currency`                | string  |          | `"USD"`                                         | Three-letter ISO 4217 currency code for the expense. If omitted, uses company's default currency.                                                        |
| `dated_on`                | string  |          | `"2024-01-15"`                                  | Date of the expense in YYYY-MM-DD format.                                                                                                                |
| `description`             | string  |          | `"Updated test expense via API"`                | Free-text description of the expense. Use to provide context or details about the expense.                                                               |
| `gross_value`             | string  |          | `"75.0"`                                        | Total expense amount as a decimal string. Required if category is not 'Mileage'. Can be negative for refunds.                                            |
| `rebill_type`             | string  |          | `"cost"`                                        | Type of rebilling: 'cost' (at cost), 'markup' (with markup), or 'price' (fixed price). Required if expense is being rebilled to a project.               |
| `vehicle_type`            | string  |          | `"Car"`                                         | Type of vehicle for mileage claims: 'Car', 'Motorcycle', or 'Bicycle'.                                                                                   |
| `rebill_factor`           | string  |          | `"1.5"`                                         | Rebilling amount as a decimal string. Required if rebill\_type is 'markup' or 'price'.                                                                   |
| `sales_tax_rate`          | string  |          | `"20.0"`                                        | 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.           |
| `reclaim_mileage`         | integer |          | `0`                                             | Whether to reclaim mileage: 0 for no, 1 for yes.                                                                                                         |
| `sales_tax_value`         | string  |          | `"15.0"`                                        | Total sales tax amount as a decimal string.                                                                                                              |
| `receipt_reference`       | string  |          | `"REC-001"`                                     | Reference identifier for the receipt.                                                                                                                    |
| `manual_sales_tax_amount` | string  |          | `"10.0"`                                        | Manually specified sales tax amount in the company's native currency as a decimal string.                                                                |

***

### `Freeagent Update Invoices Default Additional Text`

Integration name: **FREEAGENT\_UPDATE\_INVOICES\_DEFAULT\_ADDITIONAL\_TEXT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                                      | Description                                                                                       |
| ------------------------- | ------ | :------: | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| `default_additional_text` | string |     ✅    | `"Payment terms: Net 30 days. Thank you for your business!"` | The text to display at the bottom of all invoices. This value replaces any existing default text. |

***

### `Freeagent Update Invoices Transitions Convert`

Integration name: **FREEAGENT\_UPDATE\_INVOICES\_TRANSITIONS\_CONVERT**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                                                                                                                                                                                      |
| --------- | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"85939329"` | 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. |

***

### `Freeagent Update Journal Sets`

Integration name: **FREEAGENT\_UPDATE\_JOURNAL\_SETS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                           | Description                                                                                                                                                                                                                          |
| ----------------- | ------ | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`              | string |     ✅    | `"6738617"`                                       | 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`             | string |          | `"API_TEST"`                                      | Tag to identify journal sets created by your application. Tagged journal sets can only be edited or deleted via the API.                                                                                                             |
| `dated_on`        | string |          | `"2026-01-15"`                                    | Date for the journal entries in YYYY-MM-DD format. If not specified, the existing date remains unchanged.                                                                                                                            |
| `description`     | string |          | `"Updated journal set description via curl test"` | Free-text description of the journal set. If not specified, the existing description remains unchanged.                                                                                                                              |
| `journal_entries` | array  |          | —                                                 | 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. |

***

### `Freeagent Update Notes1`

Integration name: **FREEAGENT\_UPDATE\_NOTES1**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                           | Description                                 |
| --------- | ------ | :------: | --------------------------------------------------------------------------------- | ------------------------------------------- |
| `id`      | string |     ✅    | `"984272"`                                                                        | The unique identifier of the note to update |
| `note`    | string |     ✅    | `"Updated note content - Testing the PUT endpoint with proper request structure"` | The updated text content of the note        |

***

### `Freeagent Update Price List Items`

Integration name: **FREEAGENT\_UPDATE\_PRICE\_LIST\_ITEMS**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                         | Description                                                                                                                 |
| ----------------------- | ------ | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `id`                    | string |     ✅    | `"1336432"`                                     | The ID of the price list item to update                                                                                     |
| `code`                  | string |          | `"TEST-001"`                                    | Unique identifier code for the item. Used for invoice/estimate reference.                                                   |
| `price`                 | string |          | `"75.00"`                                       | Unit price per item as a decimal string in the company currency.                                                            |
| `category`              | string |          | `"https://api.freeagent.com/v2/categories/001"` | Income accounting category URI reference. Must be a valid FreeAgent category API URL.                                       |
| `quantity`              | string |          | `"1.0"`                                         | Item quantity as a decimal string. For single items, use '1.0'.                                                             |
| `item_type`             | string |          | `"Products"`                                    | Category of the item such as Products, Services, Hours, Days, etc.                                                          |
| `vat_status`            | string |          | `"standard"`                                    | VAT status for UK accounts. Options: 'standard', 'reduced', 'zero', or 'out\_of\_scope'. Leave empty for non-UK accounts.   |
| `description`           | string |          | `"Updated Test Item"`                           | Free-text description of the item.                                                                                          |
| `sales_tax_rate`        | string |          | `"0.20"`                                        | Sales tax rate as a decimal string for Universal/US accounts. For example, '0.20' for 20% tax. Leave empty for UK accounts. |
| `second_sales_tax_rate` | string |          | `"0.05"`                                        | Secondary sales tax rate as a decimal string for Universal accounts with multiple tax jurisdictions.                        |

***

### `Freeagent Update Users Me`

Integration name: **FREEAGENT\_UPDATE\_USERS\_ME**

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

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                  | Description                                                                                                                         |
| ---------------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------- |
| `role`                 | string  |          | `"Owner"`                | User's role in the organization. Must be one of: Owner, Director, Partner, Company Secretary, Employee, Shareholder, or Accountant. |
| `email`                | string  |          | `"john.doe@example.com"` | Login email address. Update this to change the email used for authentication.                                                       |
| `last_name`            | string  |          | `"Doe"`                  | User's last name                                                                                                                    |
| `ni_number`            | string  |          | `"AB123456C"`            | UK National Insurance Number. Format: two letters, six digits, one letter (e.g., AB123456C).                                        |
| `first_name`           | string  |          | `"John"`                 | User's first name                                                                                                                   |
| `opening_mileage`      | integer |          | `10000`                  | Opening mileage value for expense tracking. Set this to the vehicle's mileage at the start of the accounting period.                |
| `permission_level`     | integer |          | `8`                      | Permission level for access control. Range: 0-8, where 8 represents full access and 0 represents minimal access.                    |
| `unique_tax_reference` | string  |          | `"1234567890"`           | 10-digit UK Unique Tax Reference (UTR) number for self-assessment or corporation tax.                                               |

***

### `Freeagent Upload A Bank Statement`

Integration name: **FREEAGENT\_UPLOAD\_A\_BANK\_STATEMENT**

Tool to upload a bank statement to FreeAgent. Use when you need to import multiple bank transactions at once for a specific bank account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                | Description                                                                                                                                                          |
| -------------- | ------ | :------: | ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `statement`    | array  |     ✅    | —                                                      | Array of transaction objects to upload. Each transaction represents a bank statement entry with date, amount, and other details                                      |
| `bank_account` | string |     ✅    | `"https://api.freeagent.com/v2/bank_accounts/1840732"` | 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}> |

***


# 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](https://toolhouse.app/auth-connections?authkit_slugs=freshbooks).

## Tools (10)

### `Freshbooks Create Webhook`

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

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                 |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter     | Type   | Required | Example    | Description                                                                                             |
| ------------- | ------ | :------: | ---------- | ------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter     | Type    | Required | Example    | Description                                                                                                                     |
| ------------- | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

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

| Parameter          | Type    | Required | Example                                    | Description                                                                                                                                    |
| ------------------ | ------- | :------: | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter       | Type    | Required | Example                                  | Description                                                                                                          |
| --------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter                 | Type    | Required | Example                  | Description                                                                                                                                                                       |
| ------------------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter    | Type   | Required | Example    | Description                                                                                                                                         |
| ------------ | ------ | :------: | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter       | Type   | Required | Example                 | Description                                                                                                                       |
| --------------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `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`

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

| Parameter     | Type    | Required | Example       | Description                                                                                                                                        |
| ------------- | ------- | :------: | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `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.                                  |

***


# Github

Your Toolhouse AI Worker can connect to Github using 867 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](https://toolhouse.app/auth-connections?authkit_slugs=github).

## Tools (867)

The source content is already structured as Markdown and does not contain FAQ, package-manager tabs, steppers, or other blocks that need conversion.


# Gitlab

Your Toolhouse AI Worker can connect to Gitlab using 58 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](https://toolhouse.app/auth-connections?authkit_slugs=gitlab).

## Tools (58)

### `Gitlab Archive Project`

Integration name: **GITLAB\_ARCHIVE\_PROJECT**

Tool to archive a project. Use when you need to mark a project read-only after finishing active development. Call after confirming no further changes are required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type | Required | Example | Description                                           |
| --------- | ---- | :------: | ------- | ----------------------------------------------------- |
| `id`      | —    |     ✅    | `"5"`   | The ID or URL-encoded path of the project to archive. |

***

### `Gitlab Create Group`

Integration name: **GITLAB\_CREATE\_GROUP**

Tool to create a new group in GitLab. Use when you need to establish a new group for projects or collaboration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                            | Type    | Required | Example          | Description                                                                                                                                                                                                                |
| ------------------------------------ | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                               | string  |     ✅    | `"My New Group"` | The name of the group.                                                                                                                                                                                                     |
| `path`                               | string  |     ✅    | `"my-new-group"` | The path of the group.                                                                                                                                                                                                     |
| `avatar`                             | string  |          | —                | Image file for avatar of the group.                                                                                                                                                                                        |
| `parent_id`                          | integer |          | —                | The parent group ID for creating nested group.                                                                                                                                                                             |
| `visibility`                         | string  |          | —                | The group’s visibility.                                                                                                                                                                                                    |
| `description`                        | string  |          | —                | The group’s description.                                                                                                                                                                                                   |
| `lfs_enabled`                        | boolean |          | —                | Enable/disable Large File Storage (LFS) for the projects in this group.                                                                                                                                                    |
| `default_branch`                     | string  |          | —                | The default branch name for group’s projects.                                                                                                                                                                              |
| `emails_enabled`                     | boolean |          | —                | Enable email notifications.                                                                                                                                                                                                |
| `membership_lock`                    | boolean |          | —                | Users cannot be added to projects in this group. Premium and Ultimate only.                                                                                                                                                |
| `organization_id`                    | integer |          | —                | The organization ID for the group.                                                                                                                                                                                         |
| `duo_availability`                   | string  |          | —                | Duo availability setting. Note: In the UI, never\_on is displayed as "Always Off".                                                                                                                                         |
| `mentions_disabled`                  | boolean |          | —                | Disable the capability of a group from getting mentioned.                                                                                                                                                                  |
| `wiki_access_level`                  | string  |          | —                | The wiki access level. Premium and Ultimate only.                                                                                                                                                                          |
| `auto_devops_enabled`                | boolean |          | —                | Default to Auto DevOps pipeline for all projects within this group.                                                                                                                                                        |
| `share_with_group_lock`              | boolean |          | —                | Prevent sharing a project with another group within this group.                                                                                                                                                            |
| `project_creation_level`             | string  |          | —                | Determine if developers can create projects in the group.                                                                                                                                                                  |
| `request_access_enabled`             | boolean |          | —                | Allow users to request member access.                                                                                                                                                                                      |
| `subgroup_creation_level`            | string  |          | —                | Allowed to create subgroups.                                                                                                                                                                                               |
| `two_factor_grace_period`            | integer |          | —                | Time before Two-factor authentication is enforced (in hours).                                                                                                                                                              |
| `enabled_git_access_protocol`        | string  |          | —                | Enabled protocols for Git access.                                                                                                                                                                                          |
| `experiment_features_enabled`        | boolean |          | —                | Enable experiment features for this group.                                                                                                                                                                                 |
| `shared_runners_minutes_limit`       | integer |          | —                | Can be set by administrators only. Maximum number of monthly compute minutes for this group. Can be nil (default; inherit system default), 0 (unlimited), or > 0. GitLab Self-Managed, Premium and Ultimate only.          |
| `require_two_factor_authentication`  | boolean |          | —                | Require all users in this group to set up two-factor authentication.                                                                                                                                                       |
| `default_branch_protection_defaults` | object  |          | —                | Options for default\_branch\_protection\_defaults. E.g. {"allowed\_to\_push": \[{"access\_level":40}], "allow\_force\_push": False, "allowed\_to\_merge": \[{"access\_level":40}], "developer\_can\_initial\_push": False} |
| `extra_shared_runners_minutes_limit` | integer |          | —                | Can be set by administrators only. Additional compute minutes for this group. GitLab Self-Managed, Premium and Ultimate only.                                                                                              |

***

### `Gitlab Create Project`

Integration name: **GITLAB\_CREATE\_PROJECT**

Tool to create a new project in GitLab. Implements POST /projects endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example            | Description                                                         |
| ---------------------------- | ------- | :------: | ------------------ | ------------------------------------------------------------------- |
| `name`                       | string  |     ✅    | `"My New Project"` | The name of the project.                                            |
| `path`                       | string  |     ✅    | `"my-new-project"` | The path or URL-friendly name for the project.                      |
| `visibility`                 | string  |          | `"private"`        | Project visibility.                                                 |
| `description`                | string  |          | —                  | Project description.                                                |
| `namespace_id`               | integer |          | —                  | The namespace (group or user ID) under which to create the project. |
| `wiki_enabled`               | boolean |          | —                  | Enable wiki feature.                                                |
| `default_branch`             | string  |          | —                  | The default branch name.                                            |
| `issues_enabled`             | boolean |          | —                  | Enable issues feature.                                              |
| `snippets_enabled`           | boolean |          | —                  | Enable snippets feature.                                            |
| `build_git_strategy`         | string  |          | —                  | Git strategy for builds.                                            |
| `merge_requests_enabled`     | boolean |          | —                  | Enable merge requests feature.                                      |
| `container_registry_enabled` | boolean |          | —                  | Enable container registry.                                          |

***

### `Gitlab Create Project Issue`

Integration name: **GITLAB\_CREATE\_PROJECT\_ISSUE**

Tool to create a new issue in a GitLab project. Use when you need to report a bug, request a feature, or track a task within a specific project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                 | Type    | Required | Example                       | Description                                                                                                                                                                                                                                     |
| ----------------------------------------- | ------- | :------: | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                      | string  |     ✅    | `"12345"`                     | The global ID or URL-encoded path of the project (e.g., '12345', 'my-group/my-project', or 'my-group%2Fmy-project').                                                                                                                            |
| `iid`                                     | integer |          | —                             | The internal ID of the project’s issue (requires administrator or project owner rights).                                                                                                                                                        |
| `title`                                   | string  |     ✅    | `"Issue with authentication"` | The title of an issue.                                                                                                                                                                                                                          |
| `labels`                                  | string  |          | `"bug,critical"`              | Comma-separated label names to assign to the new issue. If a label does not already exist, this creates a new project label and assigns it to the issue.                                                                                        |
| `weight`                                  | integer |          | `5`                           | The weight of the issue. Valid values are greater than or equal to 0. Premium and Ultimate only.                                                                                                                                                |
| `epic_id`                                 | integer |          | `42`                          | ID of the epic to add the issue to. Valid values are greater than or equal to 0. Premium and Ultimate only.                                                                                                                                     |
| `due_date`                                | string  |          | `"2016-03-11"`                | The due date. Date time string in the format `YYYY-MM-DD`, for example `2016-03-11`.                                                                                                                                                            |
| `epic_iid`                                | integer |          | `5`                           | IID of the epic to add the issue to. Valid values are greater than or equal to 0. (deprecated, scheduled for removal in API version 5). Premium and Ultimate only.                                                                              |
| `created_at`                              | string  |          | `"2016-03-11T03:45:40Z"`      | When the issue was created. Date time string, ISO 8601 formatted, for example `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights.                                                                                     |
| `issue_type`                              | string  |          | —                             | The type of issue. One of `issue`, `incident`, `test_case` or `task`. Default is `issue`.                                                                                                                                                       |
| `assignee_id`                             | integer |          | `1`                           | The ID of the user to assign the issue to. Only appears on GitLab Free.                                                                                                                                                                         |
| `description`                             | string  |          | `"This is a bug report."`     | The description of an issue. Limited to 1,048,576 characters.                                                                                                                                                                                   |
| `assignee_ids`                            | array   |          | `[1,2]`                       | The IDs of the users to assign the issue to. Premium and Ultimate only.                                                                                                                                                                         |
| `confidential`                            | boolean |          | —                             | Set an issue to be confidential. Default is false.                                                                                                                                                                                              |
| `milestone_id`                            | integer |          | —                             | The global ID of a milestone to assign issue. To find the `milestone_id` associated with a milestone, view an issue with the milestone assigned and use the API to retrieve the issue’s details.                                                |
| `discussion_to_resolve`                   | string  |          | —                             | The ID of a discussion to resolve. This fills out the issue with a default description and mark the discussion as resolved. Use in combination with `merge_request_to_resolve_discussions_of`.                                                  |
| `merge_request_to_resolve_discussions_of` | integer |          | —                             | The IID of a merge request in which to resolve all issues. This fills out the issue with a default description and mark all discussions as resolved. When passing a description or title, these values take precedence over the default values. |

***

### `Gitlab Create Repository Branch`

Integration name: **GITLAB\_CREATE\_REPOSITORY\_BRANCH**

Tool to create a new branch in a project. Use when you need to create a new branch from an existing branch or a specific commit in a GitLab project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                | Description                                                  |
| ------------- | ------ | :------: | ---------------------- | ------------------------------------------------------------ |
| `ref`         | string |     ✅    | `"main"`               | The branch name or commit SHA to create the new branch from. |
| `project_id`  | —      |     ✅    | `"5"`                  | The ID or URL-encoded path of the project.                   |
| `branch_name` | string |     ✅    | `"new-feature-branch"` | The name of the new branch.                                  |

***

### `Gitlab Delete Project`

Integration name: **GITLAB\_DELETE\_PROJECT**

Tool to delete a GitLab project by its ID. Use when you need to remove a project, either by marking it for later deletion or deleting it immediately.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                     | Description                                                                                                                                                                                                  |
| -------------------- | ------- | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                 | —       |     ✅    | `"123"`                     | The ID or URL-encoded path of the project to be deleted.                                                                                                                                                     |
| `full_path`          | string  |          | `"my_namespace/my_project"` | The full path of the project (e.g., namespace/project\_name). Used with `permanently_remove=true` for immediate deletion. Available in GitLab Free from 18.0 (previously Premium/Ultimate only since 15.11). |
| `permanently_remove` | boolean |          | `true`                      | If true, the project is deleted immediately. Otherwise, it is marked for deletion and removed after a retention period. Available in GitLab Free from 18.0 (previously Premium/Ultimate only since 15.11).   |

***

### `Gitlab Download Project Avatar`

Integration name: **GITLAB\_DOWNLOAD\_PROJECT\_AVATAR**

Tool to download a project's avatar image. Use when you need the raw avatar bytes after confirming the project exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                         |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"123"` | The ID or URL-encoded path of the project whose avatar to download. |

***

### `Gitlab Erase Job`

Integration name: **GITLAB\_ERASE\_JOB**

Tool to erase the content of a specified job within a project. Use when you need to remove job artifacts and logs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                |
| ------------ | ------- | :------: | ------- | ------------------------------------------ |
| `job_id`     | integer |     ✅    | `456`   | The ID of the job to be erased.            |
| `project_id` | —       |     ✅    | `"123"` | The ID or URL-encoded path of the project. |

***

### `Gitlab Get Commit Refs`

Integration name: **GITLAB\_GET\_COMMIT\_REFS**

Tool to get all references (branches or tags) a commit is pushed to. Use when you need to find out which branches or tags a specific commit belongs to in a GitLab project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                      | Description                                                                  |
| ------------ | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------- |
| `sha`        | string |     ✅    | `"a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"` | The commit hash.                                                             |
| `ref_type`   | string |          | `"branch"`                                   | The scope of commits to list. Possible values are `branch`, `tag`, or `all`. |
| `project_id` | —      |     ✅    | `"123"`                                      | The ID or URL-encoded path of the project.                                   |

***

### `Gitlab Get Commit Sequence`

Integration name: **GITLAB\_GET\_COMMIT\_SEQUENCE**

Tool to get the sequence number of a commit in a project by following parent links from the given commit. Use when you need to determine the order of a commit in the project's history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                      | Description                                                     |
| -------------- | ------- | :------: | -------------------------------------------- | --------------------------------------------------------------- |
| `sha`          | string  |     ✅    | `"5937ac0a7beb003549fc5fd26fc247adbce4a52e"` | The commit hash.                                                |
| `project_id`   | —       |     ✅    | `"5"`                                        | The ID or URL-encoded path of the project.                      |
| `first_parent` | boolean |          | —                                            | Follow only the first parent commit upon seeing a merge commit. |

***

### `Gitlab Get Group`

Integration name: **GITLAB\_GET\_GROUP**

Tool to retrieve information about a specific group by its ID. Use when you need to get details of a GitLab group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example | Description                                                                                                                       |
| ------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `id`                     | —       |     ✅    | `123`   | The ID or URL-encoded path of the group.                                                                                          |
| `with_projects`          | boolean |          | —       | Include details from projects that belong to the specified group (defaults to true). Deprecated, scheduled for removal in API v5. |
| `with_custom_attributes` | boolean |          | —       | Include custom attributes in response (administrators only).                                                                      |

***

### `Gitlab Get Group Member`

Integration name: **GITLAB\_GET\_GROUP\_MEMBER**

Tool to retrieve details for a specific group member. Use when you need to fetch membership information for a user in a group after you know both group ID and user ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                  |
| --------- | ------- | :------: | ------- | -------------------------------------------- |
| `id`      | —       |     ✅    | `123`   | The ID or URL-encoded path of the group.     |
| `user_id` | integer |     ✅    | `42`    | The user ID of the group member to retrieve. |

***

### `Gitlab Get Groups`

Integration name: **GITLAB\_GET\_GROUPS**

Get Groups

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example    | Description                                                                                       |
| ------------------------ | ------- | :------: | ---------- | ------------------------------------------------------------------------------------------------- |
| `page`                   | integer |          | —          | Page number for pagination.                                                                       |
| `sort`                   | string  |          | `"asc"`    | Return groups sorted in 'asc' or 'desc' order.                                                    |
| `owned`                  | boolean |          | —          | Limit to groups owned by the current user.                                                        |
| `search`                 | string  |          | `"gitlab"` | Search for groups by name or path.                                                                |
| `order_by`               | string  |          | `"name"`   | Return groups ordered by this field. Use 'similarity' when searching to order by relevance score. |
| `per_page`               | integer |          | —          | Number of results per page.                                                                       |
| `statistics`             | boolean |          | `true`     | Include group statistics (admin only).                                                            |
| `skip_groups`            | array   |          | `[1,2,3]`  | List of group IDs to exclude.                                                                     |
| `all_available`          | boolean |          | —          | Include all groups the user has access to (admin only).                                           |
| `with_projects`          | boolean |          | —          | Include project details in response (deprecated).                                                 |
| `with_two_factor`        | boolean |          | `true`     | Include groups requiring two-factor authentication.                                               |
| `min_access_level`       | integer |          | `10`       | Limit to groups with minimum access level.                                                        |
| `with_custom_attributes` | boolean |          | —          | Include custom attributes in response (admins only).                                              |

***

### `Gitlab Get Job Details`

Integration name: **GITLAB\_GET\_JOB\_DETAILS**

Tool to retrieve details of a single job by its ID within a specified project. Use this when you need to fetch specific information about a particular CI/CD job.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                |
| ------------ | ------- | :------: | ------- | ------------------------------------------ |
| `job_id`     | integer |     ✅    | `456`   | The ID of the job.                         |
| `project_id` | —       |     ✅    | `123`   | The ID or URL-encoded path of the project. |

***

### `Gitlab Get Merge Request Notes`

Integration name: **GITLAB\_GET\_MERGE\_REQUEST\_NOTES**

Tool to fetch comments on a merge request. Use when you need to retrieve all notes for a specific merge request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                |
| ------------------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`                | —       |     ✅    | `123`   | The ID or URL-encoded path of the project. |
| `page`              | integer |          | `1`     | Page number to retrieve.                   |
| `per_page`          | integer |          | `20`    | Number of notes per page (max 100).        |
| `merge_request_iid` | integer |     ✅    | `1`     | Internal ID of the merge request.          |

***

### `Gitlab Get Project`

Integration name: **GITLAB\_GET\_PROJECT**

Tool to get a single project by ID or URL-encoded path.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type | Required | Example | Description                                |
| --------- | ---- | :------: | ------- | ------------------------------------------ |
| `id`      | —    |     ✅    | `123`   | The ID or URL-encoded path of the project. |

***

### `Gitlab Get Project Languages`

Integration name: **GITLAB\_GET\_PROJECT\_LANGUAGES**

Tool to list programming languages used in a project with percentages. Use when you need the project language breakdown.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type | Required | Example | Description                                |
| --------- | ---- | :------: | ------- | ------------------------------------------ |
| `id`      | —    |     ✅    | `123`   | The ID or URL-encoded path of the project. |

***

### `Gitlab Get Project Member`

Integration name: **GITLAB\_GET\_PROJECT\_MEMBER**

Tool to retrieve details for a specific project member. Use after confirming project and user IDs to fetch membership information for a project member.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                    |
| --------- | ------- | :------: | ------- | ---------------------------------------------- |
| `id`      | —       |     ✅    | `123`   | The ID or URL-encoded path of the project.     |
| `user_id` | integer |     ✅    | `42`    | The user ID of the project member to retrieve. |

***

### `Gitlab Get Project Member All`

Integration name: **GITLAB\_GET\_PROJECT\_MEMBER\_ALL**

Tool to retrieve details for a specific project member (including inherited and invited members). Use when you need the effective membership info (including invitations and inheritance).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                |
| --------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`      | —       |     ✅    | `123`   | The ID or URL-encoded path of the project. |
| `user_id` | integer |     ✅    | `42`    | The user ID of the project member.         |

***

### `Gitlab Get Project Merge Request`

Integration name: **GITLAB\_GET\_PROJECT\_MERGE\_REQUEST**

Tool to fetch full details for a single merge request when the MR IID is known. Use when you need to retrieve canonical metadata, description, state, branches, authors, and approval-related fields for a specific merge request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example | Description                                                           |
| -------------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------- |
| `id`                             | —       |     ✅    | `"123"` | The ID or URL-encoded path of the project.                            |
| `render_html`                    | boolean |          | `true`  | If true, response includes rendered HTML for title and description.   |
| `merge_request_iid`              | integer |     ✅    | `42`    | Internal ID of the merge request.                                     |
| `include_rebase_in_progress`     | boolean |          | `false` | If true, response includes whether a rebase operation is in progress. |
| `include_diverged_commits_count` | boolean |          | `false` | If true, response includes the commits behind the target branch.      |

***

### `Gitlab Get Project Merge Request Commits`

Integration name: **GITLAB\_GET\_PROJECT\_MERGE\_REQUEST\_COMMITS**

Tool to get commits of a merge request. Use when you need to retrieve all commits associated with a specific merge request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                |
| ------------------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`                | —       |     ✅    | `"5"`   | The ID or URL-encoded path of the project. |
| `merge_request_iid` | integer |     ✅    | `1`     | Internal ID of the merge request.          |

***

### `Gitlab Get Project Merge Requests`

Integration name: **GITLAB\_GET\_PROJECT\_MERGE\_REQUESTS**

Tool to retrieve a list of merge requests for a specific project. Use when you need to get all merge requests associated with a project, with options to filter by state, labels, milestones, and other attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                         |
| --------------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | —       |     ✅    | `"123"`                                  | The ID or URL-encoded path of the project.                                                                                                                                                                                                                          |
| `wip`                       | string  |          | `"yes"`                                  | Filter merge requests against their wip status.                                                                                                                                                                                                                     |
| `iids`                      | array   |          | `[42,43]`                                | Returns the request having the given iid.                                                                                                                                                                                                                           |
| `page`                      | integer |          | `1`                                      | The page of results to return. Defaults to 1.                                                                                                                                                                                                                       |
| `sort`                      | string  |          | `"asc"`                                  | Returns requests sorted in the specified order. Default is desc.                                                                                                                                                                                                    |
| `view`                      | string  |          | `"simple"`                               | If simple, returns the iid, URL, title, description, and basic state of merge request.                                                                                                                                                                              |
| `scope`                     | string  |          | `"all"`                                  | Returns merge requests for the given scope. Defaults to created\_by\_me.                                                                                                                                                                                            |
| `state`                     | string  |          | `"opened"`                               | Returns merge requests filtered by state.                                                                                                                                                                                                                           |
| `labels`                    | string  |          | `"bug,reproduced"`                       | Returns merge requests matching a comma-separated list of labels. None lists all merge requests with no labels. Any lists all merge requests with at least one label. Predefined names are case-insensitive.                                                        |
| `search`                    | string  |          | `"fix login page"`                       | Search merge requests against their title and description.                                                                                                                                                                                                          |
| `approved`                  | string  |          | `"yes"`                                  | Filters merge requests by their approved status. Requires the mr\_approved\_filter feature flag, disabled by default.                                                                                                                                               |
| `order_by`                  | string  |          | `"updated_at"`                           | Returns requests ordered by the specified field. Default is created\_at.                                                                                                                                                                                            |
| `per_page`                  | integer |          | `20`                                     | The number of results per page. Defaults to 20.                                                                                                                                                                                                                     |
| `author_id`                 | integer |          | `456`                                    | Returns merge requests created by the given user id. Mutually exclusive with author\_username. Combine with scope=all or scope=assigned\_to\_me.                                                                                                                    |
| `milestone`                 | string  |          | `"release"`                              | Returns merge requests for a specific milestone. None returns merge requests with no milestone. Any returns merge requests that have an assigned milestone.                                                                                                         |
| `not_filter`                | object  |          | `{"labels":"bug","milestone":"release"}` | Returns merge requests that do not match the parameters supplied. Accepts: labels, milestone, author\_id, author\_username, assignee\_id, assignee\_username, reviewer\_id, reviewer\_username, my\_reaction\_emoji.                                                |
| `assignee_id`               | integer |          | `123`                                    | Returns merge requests assigned to the given user id. None returns unassigned merge requests. Any returns merge requests with an assignee.                                                                                                                          |
| `environment`               | string  |          | `"production"`                           | Returns merge requests deployed to the given environment.                                                                                                                                                                                                           |
| `reviewer_id`               | integer |          | `101`                                    | Returns merge requests which have the user as a reviewer with the given user id. None returns merge requests with no reviewers. Any returns merge requests with any reviewer. Mutually exclusive with reviewer\_username.                                           |
| `approver_ids`              | array   |          | `[4,5]`                                  | Returns merge requests which have specified all the users with the given id as individual approvers. None returns merge requests without approvers. Any returns merge requests with an approver. Premium and Ultimate only.                                         |
| `created_after`             | string  |          | `"2019-03-15T08:00:00Z"`                 | Returns merge requests created on or after the given time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                      |
| `merge_user_id`             | integer |          | `789`                                    | Returns the merge requests merged by the user with the given user id. Mutually exclusive with merge\_user\_username. Introduced in GitLab 17.0.                                                                                                                     |
| `source_branch`             | string  |          | `"feature-branch"`                       | Returns merge requests with the given source branch.                                                                                                                                                                                                                |
| `target_branch`             | string  |          | `"main"`                                 | Returns merge requests with the given target branch.                                                                                                                                                                                                                |
| `updated_after`             | string  |          | `"2019-03-15T08:00:00Z"`                 | Returns merge requests updated on or after the given time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                      |
| `created_before`            | string  |          | `"2019-03-16T08:00:00Z"`                 | Returns merge requests created on or before the given time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                     |
| `deployed_after`            | string  |          | `"2019-03-15T08:00:00Z"`                 | Returns merge requests deployed after the given date/time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                      |
| `updated_before`            | string  |          | `"2019-03-16T08:00:00Z"`                 | Returns merge requests updated on or before the given time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                     |
| `approved_by_ids`           | array   |          | `[1,2,3]`                                | Returns merge requests approved by all the users with the given id, up to 5 users. None returns merge requests with no approvals. Any returns merge requests with an approval. Premium and Ultimate only.                                                           |
| `author_username`           | string  |          | `"john_doe"`                             | Returns merge requests created by the given username. Mutually exclusive with author\_id.                                                                                                                                                                           |
| `deployed_before`           | string  |          | `"2019-03-16T08:00:00Z"`                 | Returns merge requests deployed before the given date/time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                                                     |
| `my_reaction_emoji`         | string  |          | `"star"`                                 | Returns merge requests reacted by the authenticated user by the given emoji. None returns issues not given a reaction. Any returns issues given at least one reaction.                                                                                              |
| `reviewer_username`         | string  |          | `"reviewer_username"`                    | Returns merge requests which have the user as a reviewer with the given username. None returns merge requests with no reviewers. Any returns merge requests with any reviewer. Mutually exclusive with reviewer\_id.                                                |
| `merge_user_username`       | string  |          | `"jane_doe"`                             | Returns the merge requests merged by the user with the given username. Mutually exclusive with merge\_user\_id. Introduced in GitLab 17.0.                                                                                                                          |
| `with_labels_details`       | boolean |          | `true`                                   | If true, response returns more details for each label in labels field: :name, :color, :description, :description\_html, :text\_color. Default is false.                                                                                                             |
| `with_merge_status_recheck` | boolean |          | `true`                                   | If true, this projection requests (but does not guarantee) an asynchronous recalculation of the merge\_status field. Enable the restrict\_merge\_status\_recheck feature flag to ignore this attribute when requested by users without at least the Developer role. |

***

### `Gitlab Get Projects`

Integration name: **GITLAB\_GET\_PROJECTS**

Tool to list all projects accessible to the authenticated user. Supports filtering. Private or group projects may be silently omitted if the token lacks sufficient scopes or group membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example | Description                                                                                                                   |
| ----------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `page`                        | integer |          | —       | Page number for pagination. Iterate incrementally until an empty result is returned to retrieve a complete project inventory. |
| `sort`                        | string  |          | —       | Return projects sorted in 'asc' or 'desc' order. Default is 'desc'.                                                           |
| `owned`                       | boolean |          | —       | Limit by projects explicitly owned by the current user.                                                                       |
| `search`                      | string  |          | —       | Return list of projects matching search criteria (case-insensitive substring).                                                |
| `simple`                      | boolean |          | —       | Return only limited fields for each project.                                                                                  |
| `starred`                     | boolean |          | —       | Limit by projects starred by the current user.                                                                                |
| `archived`                    | boolean |          | —       | Limit by archived status.                                                                                                     |
| `id_after`                    | integer |          | —       | Limit results to projects with IDs greater than the specified ID.                                                             |
| `order_by`                    | string  |          | —       | Return projects ordered by this field. Default is 'created\_at'.                                                              |
| `per_page`                    | integer |          | —       | Number of items per page (1-100).                                                                                             |
| `id_before`                   | integer |          | —       | Limit results to projects with IDs less than the specified ID.                                                                |
| `membership`                  | boolean |          | —       | Limit by projects that the current user is a member of.                                                                       |
| `statistics`                  | boolean |          | —       | Include project statistics. Available to Reporter role and above.                                                             |
| `visibility`                  | string  |          | —       | Limit by project visibility.                                                                                                  |
| `min_access_level`            | integer |          | —       | Limit by current user minimal role (access\_level).                                                                           |
| `with_issues_enabled`         | boolean |          | —       | Limit by enabled issues feature.                                                                                              |
| `with_custom_attributes`      | boolean |          | —       | Include custom attributes in response (admin only).                                                                           |
| `with_programming_language`   | string  |          | —       | Limit by projects which use the given programming language.                                                                   |
| `with_merge_requests_enabled` | boolean |          | —       | Limit by enabled merge requests feature.                                                                                      |

***

### `Gitlab Get Projects Id Merge Requests Iid Diffs`

Integration name: **GITLAB\_GET\_PROJECTS\_ID\_MERGE\_REQUESTS\_IID\_DIFFS**

Tool to list all diff versions of a merge request. Use when you need to inspect changes across different diff versions after creating or updating a merge request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                |
| ------------------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`                | —       |     ✅    | `123`   | The ID or URL-encoded path of the project. |
| `merge_request_iid` | integer |     ✅    | `42`    | The internal ID of the merge request.      |

***

### `Gitlab Get Repository Branch`

Integration name: **GITLAB\_GET\_REPOSITORY\_BRANCH**

Tool to retrieve information about a specific branch in a project. Use when you need to get details for a single branch.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example  | Description                                |
| ------------- | ------ | :------: | -------- | ------------------------------------------ |
| `project_id`  | —      |     ✅    | `"5"`    | The ID or URL-encoded path of the project. |
| `branch_name` | string |     ✅    | `"main"` | The URL-encoded name of the branch.        |

***

### `Gitlab Get Repository Branches`

Integration name: **GITLAB\_GET\_REPOSITORY\_BRANCHES**

Retrieves a list of repository branches for a project. Use this when you need to get all branches or search for specific branches within a GitLab project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                                                                                                   |
| ------------ | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `regex`      | string |          | `".*hotfix.*"` | Return list of branches with names matching a re2 regular expression.                                                                                         |
| `search`     | string |          | `"feature"`    | Return list of branches containing the search string. Use `^term` to find branches that begin with `term`, and `term$` to find branches that end with `term`. |
| `project_id` | —      |     ✅    | `"5"`          | The ID or URL-encoded path of the project.                                                                                                                    |

***

### `Gitlab Get Single Commit`

Integration name: **GITLAB\_GET\_SINGLE\_COMMIT**

Tool to get a specific commit identified by the commit hash or name of a branch or tag. Use this when you need to retrieve detailed information about a single commit in a GitLab project repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                                            |
| --------- | ------- | :------: | -------- | ------------------------------------------------------ |
| `id`      | —       |     ✅    | `5`      | The ID or URL-encoded path of the project.             |
| `sha`     | string  |     ✅    | `"main"` | The commit hash or name of a repository branch or tag. |
| `stats`   | boolean |          | —        | Include commit stats. Default is true.                 |

***

### `Gitlab Get Single Pipeline`

Integration name: **GITLAB\_GET\_SINGLE\_PIPELINE**

Tool to retrieve details of a single pipeline by its ID within a specified project. Use when you need to get information about a specific CI/CD pipeline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                |
| ------------- | ------- | :------: | ------- | ------------------------------------------ |
| `project_id`  | —       |     ✅    | `"123"` | The ID or URL-encoded path of the project. |
| `pipeline_id` | integer |     ✅    | `456`   | The ID of the pipeline.                    |

***

### `Gitlab Get User`

Integration name: **GITLAB\_GET\_USER**

Tool to retrieve information about a specific user by their ID. Use when you need to fetch details for a single GitLab user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description         |
| --------- | ------- | :------: | ------- | ------------------- |
| `id`      | integer |     ✅    | `12345` | The ID of the user. |

***

### `Gitlab Get User Preferences`

Integration name: **GITLAB\_GET\_USER\_PREFERENCES**

Tool to get the current user's preferences. Use when you need to retrieve the user's diff display and CI identity JWT settings after authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gitlab Get Users`

Integration name: **GITLAB\_GET\_USERS**

Tool to retrieve a list of users from GitLab. Use this when you need to find user information, search for specific users, or filter users based on various criteria like activity status or creation date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                  | Description                                                                                                                 |
| ---------------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| `page`                 | integer |          | —                        | Page number for pagination.                                                                                                 |
| `sort`                 | string  |          | —                        | Return users sorted in 'asc' or 'desc' order. Default is 'desc'. (Admin only)                                               |
| `active`               | boolean |          | —                        | Filters only active users. Default is false.                                                                                |
| `admins`               | boolean |          | —                        | Return only administrators. Default is false. (Admin only)                                                                  |
| `humans`               | boolean |          | —                        | Filters only regular users that are not bot or internal users. Default is false.                                            |
| `search`               | string  |          | `"John"`                 | Search for users by name, username, or public email.                                                                        |
| `blocked`              | boolean |          | —                        | Filters only blocked users. Default is false.                                                                               |
| `auditors`             | boolean |          | —                        | Return only auditor users. Default is false. If not included, it returns all users. (Admin only, Premium and Ultimate only) |
| `external`             | boolean |          | —                        | Filters only external users. Default is false.                                                                              |
| `order_by`             | string  |          | —                        | Return users ordered by 'id', 'name', 'username', 'created\_at', or 'updated\_at' fields. Default is 'id'. (Admin only)     |
| `per_page`             | integer |          | —                        | Number of items per page for pagination.                                                                                    |
| `provider`             | string  |          | `"ldapmain"`             | The external provider. (Admin only)                                                                                         |
| `username`             | string  |          | `"john_doe"`             | Get a single user with a specific username.                                                                                 |
| `skip_ldap`            | boolean |          | —                        | Skip LDAP users. (Admin only, Premium and Ultimate only)                                                                    |
| `extern_uid`           | string  |          | `"external_user_123"`    | Get a single user with a specific external authentication provider UID. (Admin only)                                        |
| `two_factor`           | string  |          | —                        | Filter users by Two-factor authentication. Filter values are 'enabled' or 'disabled'. (Admin only)                          |
| `created_after`        | string  |          | `"2023-01-01T00:00:00Z"` | Return users created after specified time (ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ).                                          |
| `created_before`       | string  |          | `"2023-12-31T23:59:59Z"` | Return users created before specified time (ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ).                                         |
| `exclude_active`       | boolean |          | —                        | Filters only non active users. Default is false.                                                                            |
| `exclude_humans`       | boolean |          | —                        | Filters only bot or internal users. Default is false.                                                                       |
| `exclude_external`     | boolean |          | —                        | Filters only non external users. Default is false.                                                                          |
| `exclude_internal`     | boolean |          | —                        | Filters only non internal users. Default is false.                                                                          |
| `without_projects`     | boolean |          | —                        | Filter users without projects. Default is false. (Admin only)                                                               |
| `without_project_bots` | boolean |          | —                        | Filters user without project bots. Default is false.                                                                        |

***

### `Gitlab Get Users Id Status`

Integration name: **GITLAB\_GET\_USERS\_ID\_STATUS**

Tool to get a user's status by ID. Use when you need to retrieve a GitLab user's current status message, emoji, and availability after identifying their user ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `user_id` | integer |     ✅    | `12345` | The numeric ID of the GitLab user whose status you want to retrieve. |

***

### `Gitlab Get User Status`

Integration name: **GITLAB\_GET\_USER\_STATUS**

Tool to get the current user's status. Use when displaying or verifying the authenticated user's GitLab status after login.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gitlab Get User Support Pin`

Integration name: **GITLAB\_GET\_USER\_SUPPORT\_PIN**

Tool to get details of the current user's Support PIN. Use when you need to retrieve the active support PIN and its expiration for the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gitlab Import Project Members`

Integration name: **GITLAB\_IMPORT\_PROJECT\_MEMBERS**

Tool to import members from one project to another. Use when migrating members between projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                          |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"5"`   | ID or URL-encoded path of the target project to receive members.     |
| `project_id` | string |     ✅    | `"32"`  | ID or URL-encoded path of the source project to import members from. |

***

### `Gitlab List All Group Members`

Integration name: **GITLAB\_LIST\_ALL\_GROUP\_MEMBERS**

Tool to list all members of a group including direct, inherited, and invited members. Use when you need a comprehensive membership list beyond direct members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                              |
| ---------- | ------- | :------: | ------- | ---------------------------------------- |
| `id`       | —       |     ✅    | `123`   | The ID or URL-encoded path of the group. |
| `page`     | integer |          | —       | Page number for pagination.              |
| `per_page` | integer |          | —       | Number of items per page for pagination. |

***

### `Gitlab List All Project Members`

Integration name: **GITLAB\_LIST\_ALL\_PROJECT\_MEMBERS**

Tool to list all members of a project (direct, inherited, invited). Use when you need the effective membership list including inherited and invited members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example    | Description                                                                                                    |
| ---------------- | ------- | :------: | ---------- | -------------------------------------------------------------------------------------------------------------- |
| `id`             | —       |     ✅    | `123`      | The ID or URL-encoded path of the project.                                                                     |
| `page`           | integer |          | `1`        | Page number for pagination.                                                                                    |
| `query`          | string  |          | —          | Filters results based on a given name, email, or username. Use partial values to widen the scope of the query. |
| `state`          | string  |          | `"active"` | Filter results by member state, one of 'awaiting' or 'active'. Premium and Ultimate only.                      |
| `per_page`       | integer |          | `20`       | Number of items per page for pagination.                                                                       |
| `user_ids`       | array   |          | `[1,2,3]`  | Filter the results on the given user IDs.                                                                      |
| `show_seat_info` | boolean |          | —          | Show seat information for users.                                                                               |

***

### `Gitlab List Billable Group Members`

Integration name: **GITLAB\_LIST\_BILLABLE\_GROUP\_MEMBERS**

Tool to list billable members of a top-level group (including its subgroups and projects). Use when generating billing reports; requires Owner role on the group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example               | Description                                                                                                                                                                                                                    |
| ---------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`       | —       |     ✅    | `123`                 | The ID or URL-encoded path of the top-level group. Only top-level groups are supported.                                                                                                                                        |
| `page`     | integer |          | `1`                   | Page number for pagination (must be ≥ 1).                                                                                                                                                                                      |
| `sort`     | string  |          | `"access_level_desc"` | Sort order for results. Supported values: access\_level\_asc\|access\_level\_desc\|last\_joined\|name\_asc\|name\_desc\|oldest\_joined\|oldest\_sign\_in\|recent\_sign\_in\|last\_activity\_on\_asc\|last\_activity\_on\_desc. |
| `search`   | string  |          | `"john"`              | Search string to filter members by name, username, or public email.                                                                                                                                                            |
| `per_page` | integer |          | `20`                  | Number of items per page for pagination (must be ≥ 1).                                                                                                                                                                         |

***

### `Gitlab List Group Members`

Integration name: **GITLAB\_LIST\_GROUP\_MEMBERS**

Tool to list direct members of a group. Use when you need to retrieve or filter a group's direct membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                  | Description                                                                      |
| ------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------- |
| `id`                | —       |     ✅    | `123`                    | The ID or URL-encoded path of the group.                                         |
| `page`              | integer |          | `1`                      | Page number for pagination.                                                      |
| `sort`              | string  |          | `"access_level_desc"`    | Order results by access level, ascending or descending.                          |
| `query`             | string  |          | `"alice"`                | Filter members by name, username, or email substring.                            |
| `active`            | boolean |          | `true`                   | When true, return only active users.                                             |
| `per_page`          | integer |          | `20`                     | Number of results per page (1–100).                                              |
| `relations`         | array   |          | `["direct","inherited"]` | Membership relation types to include: direct, descendants, inherited, or shared. |
| `skip_users`        | array   |          | `[42,84]`                | List of user IDs to exclude from the results.                                    |
| `two_factor`        | string  |          | `"enabled"`              | Filter users by two-factor authentication status.                                |
| `include_inherited` | boolean |          | —                        | Include members inherited from ancestor groups when true.                        |

***

### `Gitlab List Group Projects`

Integration name: **GITLAB\_LIST\_GROUP\_PROJECTS**

Tool to list projects within a GitLab group by group ID or full path. Use when discovering projects under a namespace or subgroup.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example | Description                                                                 |
| ----------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `id`                          | —       |     ✅    | `123`   | The ID or URL-encoded path of the group.                                    |
| `page`                        | integer |          | —       | Page number for pagination.                                                 |
| `sort`                        | string  |          | —       | Return projects sorted in ascending or descending order. Default is 'desc'. |
| `owned`                       | boolean |          | —       | Limit by projects owned by the current user.                                |
| `search`                      | string  |          | —       | Return list of projects matching the search criteria.                       |
| `simple`                      | boolean |          | —       | Return only limited fields for each project.                                |
| `starred`                     | boolean |          | —       | Limit by projects starred by the current user.                              |
| `archived`                    | boolean |          | —       | Limit by archived status.                                                   |
| `order_by`                    | string  |          | —       | Return projects ordered by this field. Default is 'created\_at'.            |
| `per_page`                    | integer |          | —       | Number of items per page (1-100).                                           |
| `visibility`                  | string  |          | —       | Limit by visibility level.                                                  |
| `with_shared`                 | boolean |          | —       | Include projects shared to this group. Default is true.                     |
| `min_access_level`            | integer |          | —       | Limit to projects where current user has at least this access level.        |
| `include_subgroups`           | boolean |          | —       | Include projects in subgroups of this group. Default is false.              |
| `with_issues_enabled`         | boolean |          | —       | Limit by projects with issues feature enabled. Default is false.            |
| `with_security_reports`       | boolean |          | —       | Return only projects with security reports artifacts. Default is false.     |
| `with_custom_attributes`      | boolean |          | —       | Include custom attributes in response (administrators only).                |
| `with_merge_requests_enabled` | boolean |          | —       | Limit by projects with merge requests feature enabled. Default is false.    |

***

### `Gitlab List Pending Group Members`

Integration name: **GITLAB\_LIST\_PENDING\_GROUP\_MEMBERS**

Tool to list pending members of a group and its subgroups and projects. Use when you need to review users awaiting approval or invited without an account. Call after confirming the top-level group ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                        |
| ---------- | ------- | :------: | ------- | -------------------------------------------------- |
| `id`       | —       |     ✅    | `123`   | The ID or URL-encoded path of the top-level group. |
| `page`     | integer |          | `1`     | Page number for pagination (1-based index).        |
| `per_page` | integer |          | `20`    | Number of items per page for pagination (max 100). |

***

### `Gitlab List Pipeline Jobs`

Integration name: **GITLAB\_LIST\_PIPELINE\_JOBS**

Tool to retrieve a list of jobs for a specified pipeline within a project. Use this when you need to inspect the status or details of jobs associated with a particular CI/CD pipeline.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example     | Description                                                                                                      |
| ----------------- | ------- | :------: | ----------- | ---------------------------------------------------------------------------------------------------------------- |
| `id`              | —       |     ✅    | `123`       | The ID or URL-encoded path of the project.                                                                       |
| `page`            | integer |          | `1`         | Page number for pagination (1-based).                                                                            |
| `scope`           | —       |          | `"running"` | The scope of jobs to show. Can be a single status or a list of statuses. If not provided, all jobs are returned. |
| `per_page`        | integer |          | `20`        | Number of items per page for pagination (max 100).                                                               |
| `pipeline_id`     | integer |     ✅    | `456`       | The ID of the pipeline.                                                                                          |
| `include_retried` | boolean |          | —           | Include retried jobs in the response. Defaults to false.                                                         |

***

### `Gitlab List Project Groups`

Integration name: **GITLAB\_LIST\_PROJECT\_GROUPS**

Tool to list ancestor groups of a project. Use when you need to retrieve all groups a project belongs to or is shared with.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example   | Description                                                |
| ------------------------- | ------- | :------: | --------- | ---------------------------------------------------------- |
| `id`                      | —       |     ✅    | `123`     | The ID or URL-encoded path of the project.                 |
| `page`                    | integer |          | `1`       | Page number of the results to retrieve.                    |
| `search`                  | string  |          | `"foo"`   | Search for specific groups by name.                        |
| `per_page`                | integer |          | `20`      | Number of items to return per page.                        |
| `skip_groups`             | array   |          | `[1,2,3]` | Skip the group IDs passed.                                 |
| `with_shared`             | boolean |          | `true`    | Include projects shared with this group. Default is false. |
| `shared_visible_only`     | boolean |          | `true`    | Limit to shared groups user has access to.                 |
| `shared_min_access_level` | integer |          | `10`      | Limit to shared groups with at least this access level.    |

***

### `Gitlab List Project Invited Groups`

Integration name: **GITLAB\_LIST\_PROJECT\_INVITED\_GROUPS**

Tool to list groups invited to a project. Use when auditing which groups have access to a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                |
| ---------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`       | —       |     ✅    | `123`   | The ID or URL-encoded path of the project. |
| `page`     | integer |          | `1`     | Page number for pagination.                |
| `per_page` | integer |          | `20`    | Number of items to return per page.        |

***

### `Gitlab List Project Issues`

Integration name: **GITLAB\_LIST\_PROJECT\_ISSUES**

Tool to list issues for a project with filtering options (state, labels, search, assignee, author, etc.). Use when you need to browse, filter, or triage project issues to confirm IIDs or decide what to update/close.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                                                                                                                                                                       |
| --------------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                  | —       |     ✅    | `"123"`                  | Project identifier: numeric ID (e.g., 123) or namespace path in format 'namespace/project-name' (e.g., 'my-group/my-project'). Path must use forward slash / as separator. URL-encoding is handled automatically. |
| `iids`                | array   |          | `[1,2,3]`                | Return specific issues by their internal IDs.                                                                                                                                                                     |
| `page`                | integer |          | `1`                      | The page of results to return. Defaults to 1.                                                                                                                                                                     |
| `sort`                | string  |          | `"asc"`                  | Order direction. Default: desc.                                                                                                                                                                                   |
| `scope`               | string  |          | `"all"`                  | Filter scope. Default: all.                                                                                                                                                                                       |
| `state`               | string  |          | `"opened"`               | Filter by issue state.                                                                                                                                                                                            |
| `labels`              | string  |          | `"bug,critical"`         | Comma-separated label names; issues must have all specified labels.                                                                                                                                               |
| `search`              | string  |          | `"authentication bug"`   | Search in title and description.                                                                                                                                                                                  |
| `weight`              | integer |          | `3`                      | Filter by weight value. Premium/Ultimate only.                                                                                                                                                                    |
| `epic_id`             | integer |          | `42`                     | Issues associated with a specific epic ID. Premium/Ultimate only.                                                                                                                                                 |
| `due_date`            | string  |          | `"overdue"`              | Filter by due date status.                                                                                                                                                                                        |
| `order_by`            | string  |          | `"updated_at"`           | Sort by the specified field. Default: created\_at.                                                                                                                                                                |
| `per_page`            | integer |          | `20`                     | The number of results per page. Defaults to 20.                                                                                                                                                                   |
| `author_id`           | integer |          | `10`                     | Return issues created by a specific user ID.                                                                                                                                                                      |
| `milestone`           | string  |          | `"v1.0"`                 | Filter by milestone title.                                                                                                                                                                                        |
| `issue_type`          | string  |          | `"issue"`                | Filter by issue type.                                                                                                                                                                                             |
| `assignee_id`         | —       |          | `5`                      | Return issues assigned to a specific user ID. Use the string 'None' for unassigned issues or 'Any' for issues assigned to someone.                                                                                |
| `confidential`        | boolean |          | `false`                  | Filter confidential or public issues.                                                                                                                                                                             |
| `iteration_id`        | integer |          | `7`                      | Issues assigned to a specific iteration. Premium/Ultimate only.                                                                                                                                                   |
| `created_after`       | string  |          | `"2019-03-15T08:00:00Z"` | Issues created on or after this time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                         |
| `updated_after`       | string  |          | `"2019-03-15T08:00:00Z"` | Issues updated on or after this time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                         |
| `created_before`      | string  |          | `"2019-03-16T08:00:00Z"` | Issues created on or before this time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                        |
| `updated_before`      | string  |          | `"2019-03-16T08:00:00Z"` | Issues updated on or before this time. Expected in ISO 8601 format (2019-03-15T08:00:00Z).                                                                                                                        |
| `author_username`     | string  |          | `"jane_doe"`             | Return issues created by a specific username.                                                                                                                                                                     |
| `iteration_title`     | string  |          | `"Sprint 1"`             | Issues assigned to iteration with given title. Premium/Ultimate only.                                                                                                                                             |
| `assignee_username`   | array   |          | `["john_doe"]`           | Return issues assigned to given username(s).                                                                                                                                                                      |
| `my_reaction_emoji`   | string  |          | `"thumbsup"`             | Issues reacted to by authenticated user with specified emoji.                                                                                                                                                     |
| `with_labels_details` | boolean |          | `true`                   | Return detailed label information (name, color, description, HTML description, text color). Default: false.                                                                                                       |

***

### `Gitlab List Project Pipelines`

Integration name: **GITLAB\_LIST\_PROJECT\_PIPELINES**

Tool to retrieve a list of pipelines for a specified project. Use when you need to get information about CI/CD pipelines, such as their status, source, or creation/update times.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                           |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------- |
| `id`             | —       |     ✅    | —       | The ID or URL-encoded path of the project.                                            |
| `ref`            | string  |          | —       | The ref of pipelines.                                                                 |
| `sha`            | string  |          | —       | The SHA of pipelines.                                                                 |
| `name`           | string  |          | —       | Return pipelines with the specified name.                                             |
| `page`           | integer |          | —       | Page number for pagination.                                                           |
| `sort`           | string  |          | —       | Sort pipelines in 'asc' or 'desc' order.                                              |
| `scope`          | string  |          | —       | The scope of pipelines, one of: 'running', 'pending', 'finished', 'branches', 'tags'. |
| `source`         | string  |          | —       | The pipeline source. To return child pipelines, set to 'parent\_pipeline'.            |
| `status`         | string  |          | —       | The status of pipelines.                                                              |
| `order_by`       | string  |          | —       | Order pipelines by 'id', 'status', 'ref', 'updated\_at' or 'user\_id'.                |
| `per_page`       | integer |          | —       | Number of items per page for pagination.                                              |
| `username`       | string  |          | —       | The username of the user who triggered pipelines.                                     |
| `yaml_errors`    | boolean |          | —       | Returns pipelines with invalid configurations.                                        |
| `created_after`  | string  |          | —       | Return pipelines created after the specified date (ISO 8601 format).                  |
| `updated_after`  | string  |          | —       | Return pipelines updated after the specified date (ISO 8601 format).                  |
| `created_before` | string  |          | —       | Return pipelines created before the specified date (ISO 8601 format).                 |
| `updated_before` | string  |          | —       | Return pipelines updated before the specified date (ISO 8601 format).                 |

***

### `Gitlab List Project Shareable Groups`

Integration name: **GITLAB\_LIST\_PROJECT\_SHAREABLE\_GROUPS**

Tool to list groups that can be shared with a project. Use before sharing a project to fetch eligible groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                    |
| ------------- | ------- | :------: | ------------ | ---------------------------------------------- |
| `id`          | —       |     ✅    | `123`        | The ID or URL-encoded path of the project.     |
| `page`        | integer |          | `1`          | Page number for pagination.                    |
| `search`      | string  |          | `"dev-team"` | Search term to filter groups by name or path.  |
| `per_page`    | integer |          | `20`         | Number of items per page for pagination.       |
| `skip_groups` | array   |          | `[10,20]`    | List of group IDs to exclude from the results. |

***

### `Gitlab List Project Tags`

Integration name: **GITLAB\_LIST\_PROJECT\_TAGS**

Tool to retrieve a list of repository tags for a specified project. Use when you need to get all tags associated with a project in GitLab.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example  | Description                                                                                                                      |
| ---------- | ------- | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `id`       | —       |     ✅    | `"5"`    | The ID or URL-encoded path of the project.                                                                                       |
| `page`     | integer |          | `1`      | Page number of the results to retrieve.                                                                                          |
| `sort`     | string  |          | `"asc"`  | Return tags sorted in the specified order. Default is `desc`.                                                                    |
| `search`   | string  |          | `"^v1"`  | Return a list of tags matching the search criteria. You can use `^term` and `term$` to find tags that begin and end with `term`. |
| `order_by` | string  |          | `"name"` | Return tags ordered by the specified field. Default is `updated`.                                                                |
| `per_page` | integer |          | `20`     | Number of items to return per page.                                                                                              |

***

### `Gitlab List Project Transfer Locations`

Integration name: **GITLAB\_LIST\_PROJECT\_TRANSFER\_LOCATIONS**

Tool to list namespaces available for project transfer. Use when you need to determine which groups a project can be transferred into.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example      | Description                                |
| ---------- | ------- | :------: | ------------ | ------------------------------------------ |
| `id`       | —       |     ✅    | `123`        | The ID or URL-encoded path of the project. |
| `page`     | integer |          | `1`          | Page number for pagination (1-based).      |
| `search`   | string  |          | `"dev-team"` | The group names to search for.             |
| `per_page` | integer |          | `20`         | Number of items per page for pagination.   |

***

### `Gitlab List Project Users`

Integration name: **GITLAB\_LIST\_PROJECT\_USERS**

Tool to list users of a project. Use after you have a project ID and want to retrieve its users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                        |
| ------------ | ------- | :------: | -------- | -------------------------------------------------- |
| `id`         | string  |     ✅    | `"5"`    | The ID or URL-encoded path of the project.         |
| `page`       | integer |          | `1`      | Page number for pagination (1-based).              |
| `search`     | string  |          | `"john"` | Filter users by name or username.                  |
| `per_page`   | integer |          | `20`     | Number of items per page for pagination (max 100). |
| `skip_users` | array   |          | `[1,2]`  | List of user IDs to exclude from the result.       |

***

### `Gitlab List Repository Commits`

Integration name: **GITLAB\_LIST\_REPOSITORY\_COMMITS**

Tool to get a list of repository commits in a project. Use when you need to retrieve commit history for a specific project, branch, or time range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                  | Description                                                                                                                       |
| -------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------- |
| `all`          | boolean |          | —                        | Retrieve every commit from the repository. When set to true, the ref\_name parameter is ignored.                                  |
| `page`         | integer |          | `1`                      | Page number for pagination (1-based).                                                                                             |
| `path`         | string  |          | `"README.md"`            | The file path to filter commits by.                                                                                               |
| `order`        | string  |          | —                        | List commits in order. Possible values: default, topo. Defaults to default, the commits are shown in reverse chronological order. |
| `since`        | string  |          | `"2023-01-01T00:00:00Z"` | Only commits after or on this date are returned in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ.                                          |
| `until`        | string  |          | `"2023-12-31T23:59:59Z"` | Only commits before or on this date are returned in ISO 8601 format YYYY-MM-DDTHH:MM:SSZ.                                         |
| `author`       | string  |          | `"john.doe@example.com"` | Search commits by commit author.                                                                                                  |
| `per_page`     | integer |          | `20`                     | Number of items per page for pagination (max 100).                                                                                |
| `ref_name`     | string  |          | `"main"`                 | The name of a repository branch, tag or revision range, or if not given the default branch.                                       |
| `trailers`     | boolean |          | —                        | Parse and include Git trailers for every commit.                                                                                  |
| `project_id`   | —       |     ✅    | `"5"`                    | The ID or URL-encoded path of the project.                                                                                        |
| `with_stats`   | boolean |          | —                        | Stats about each commit are added to the response.                                                                                |
| `first_parent` | boolean |          | —                        | Follow only the first parent commit upon seeing a merge commit.                                                                   |

***

### `Gitlab List User Projects`

Integration name: **GITLAB\_LIST\_USER\_PROJECTS**

Tool to list projects owned by a specific user. Use after obtaining target user identity to fetch owned projects.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example | Description                                                                    |
| ----------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `id`                          | —       |     ✅    | `123`   | The ID or username of the user whose projects to list.                         |
| `page`                        | integer |          | —       | Page number for pagination.                                                    |
| `sort`                        | string  |          | —       | Return projects sorted in asc or desc order. Default is 'desc'.                |
| `owned`                       | boolean |          | —       | Limit by projects explicitly owned by the specified user.                      |
| `search`                      | string  |          | —       | Return list of projects matching search criteria (case-insensitive substring). |
| `simple`                      | boolean |          | —       | Return only limited fields for each project.                                   |
| `starred`                     | boolean |          | —       | Limit by projects starred by the specified user.                               |
| `archived`                    | boolean |          | —       | Limit by archived status.                                                      |
| `id_after`                    | integer |          | —       | Limit results to projects with IDs greater than the specified ID.              |
| `order_by`                    | string  |          | —       | Return projects ordered by this field. Default is 'created\_at'.               |
| `per_page`                    | integer |          | —       | Number of items per page (1-100).                                              |
| `id_before`                   | integer |          | —       | Limit results to projects with IDs less than the specified ID.                 |
| `membership`                  | boolean |          | —       | Limit by projects that the current user is a member of.                        |
| `statistics`                  | boolean |          | —       | Include project statistics. Available to Reporter role and above.              |
| `visibility`                  | string  |          | —       | Limit by project visibility.                                                   |
| `updated_after`               | string  |          | —       | Limit projects updated after given time (ISO 8601).                            |
| `updated_before`              | string  |          | —       | Limit projects updated before given time (ISO 8601).                           |
| `min_access_level`            | integer |          | —       | Limit by current user minimal role (access\_level).                            |
| `with_issues_enabled`         | boolean |          | —       | Limit by enabled issues feature.                                               |
| `with_custom_attributes`      | boolean |          | —       | Include custom attributes in response (admin only).                            |
| `with_programming_language`   | string  |          | —       | Limit by projects which use the given programming language.                    |
| `with_merge_requests_enabled` | boolean |          | —       | Limit by enabled merge requests feature.                                       |

***

### `Gitlab Post User Support Pin`

Integration name: **GITLAB\_POST\_USER\_SUPPORT\_PIN**

Tool to create a support PIN for your authenticated user. Use when GitLab Support requests a PIN to verify your identity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gitlab Put User Preferences`

Integration name: **GITLAB\_PUT\_USER\_PREFERENCES**

Tool to update the current user's preferences. Use when adjusting default diff viewing and CI identity settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example | Description                                                                                                                            |
| -------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `view_diffs_file_by_file`        | boolean |     ✅    | `true`  | Flag indicating the user sees only one file diff per page.                                                                             |
| `show_whitespace_in_diffs`       | boolean |     ✅    | `false` | Flag indicating the user sees whitespace changes in diffs.                                                                             |
| `pass_user_identities_to_ci_jwt` | boolean |     ✅    | `false` | Flag indicating the user passes their external identities as CI information. Internal use only; do not expose to third-party services. |

***

### `Gitlab Set User Status`

Integration name: **GITLAB\_SET\_USER\_STATUS**

Tool to set the current user's status. Use when you need to update availability or convey current mood on GitLab.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example            | Description                                                                                                                                        |
| -------------------- | ------ | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emoji`              | string |          | `"speech_balloon"` | Name of the emoji to use as status. Defaults to 'speech\_balloon' if omitted.                                                                      |
| `message`            | string |          | `"In a meeting"`   | Status message to display. Max 100 characters; can contain emoji codes.                                                                            |
| `clear_status_after` | string |          | `"3_hours"`        | Automatically clear status after the specified time interval. Allowed values: 30\_minutes, 3\_hours, 8\_hours, 1\_day, 3\_days, 7\_days, 30\_days. |

***

### `Gitlab Share Project With Group`

Integration name: **GITLAB\_SHARE\_PROJECT\_WITH\_GROUP**

Tool to share a project with a group. Use when you need to grant a group specific access level to a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example        | Description                                                                                                    |
| -------------- | ------- | :------: | -------------- | -------------------------------------------------------------------------------------------------------------- |
| `id`           | —       |     ✅    | `1`            | The ID or URL-encoded path of the project.                                                                     |
| `group_id`     | integer |     ✅    | `42`           | The ID of the group to share with.                                                                             |
| `expires_at`   | string  |          | `"2022-12-31"` | Expiration date for the group share in YYYY-MM-DD format (ISO 8601).                                           |
| `group_access` | integer |     ✅    | `30`           | The access level to grant the group. One of GitLab's access levels, e.g., 30 for Developer, 40 for Maintainer. |

***

### `Gitlab Start Project Housekeeping`

Integration name: **GITLAB\_START\_PROJECT\_HOUSEKEEPING**

Tool to start the housekeeping task for a project. Use when you need to trigger manual maintenance or pruning on a repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                                                                                                        |
| --------- | ------ | :------: | --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | —      |     ✅    | `"5"`     | The ID or URL-encoded path of the project.                                                                                         |
| `task`    | string |          | `"prune"` | Type of housekeeping task to perform. `prune` triggers a manual prune of unreachable objects; `eager` triggers eager housekeeping. |

***

### `Gitlab Update Project Issue`

Integration name: **GITLAB\_UPDATE\_PROJECT\_ISSUE**

Tool to update an existing issue in a GitLab project (title, description, labels, assignees, state, etc.). Use when you need to modify issue details, close/reopen issues, or manage labels and assignments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                             | Description                                                                                                                      |
| ------------------- | ------- | :------: | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `id`                | —       |     ✅    | `"my-group/my-project"`             | The global ID or URL-encoded path of the project.                                                                                |
| `title`             | string  |          | `"Updated issue title"`             | The title of the issue.                                                                                                          |
| `labels`            | string  |          | `"bug,critical"`                    | Comma-separated label names to replace the entire label set. Set to empty string to remove all labels.                           |
| `weight`            | integer |          | `3`                                 | The weight of the issue. Valid values are greater than or equal to 0. Premium and Ultimate only.                                 |
| `epic_id`           | integer |          | `10`                                | ID of the epic to add the issue to. Valid values are greater than or equal to 0. Premium and Ultimate only.                      |
| `due_date`          | string  |          | `"2024-12-31"`                      | The due date. Date time string in the format YYYY-MM-DD.                                                                         |
| `issue_iid`         | integer |     ✅    | `42`                                | The internal ID of the project's issue.                                                                                          |
| `add_labels`        | string  |          | `"documentation"`                   | Comma-separated label names to add to the issue without affecting existing labels.                                               |
| `issue_type`        | string  |          | —                                   | The type of issue. One of 'issue', 'incident', 'test\_case', or 'task'.                                                          |
| `updated_at`        | string  |          | `"2024-01-15T10:30:00Z"`            | When the issue was updated. Date time string, ISO 8601 formatted. Requires administrator or project/group owner rights.          |
| `description`       | string  |          | `"This is an updated description."` | The description of the issue. Limited to 1,048,576 characters.                                                                   |
| `state_event`       | string  |          | —                                   | State event to perform on the issue. Use 'close' to close the issue or 'reopen' to reopen it.                                    |
| `assignee_ids`      | array   |          | `[1,2]`                             | The IDs of the users to assign the issue to. Set to \[0] or provide empty array to unassign all.                                 |
| `confidential`      | boolean |          | —                                   | Set an issue to be confidential.                                                                                                 |
| `milestone_id`      | integer |          | `5`                                 | The global ID of a milestone to assign to the issue. Set to 0 to unassign milestone.                                             |
| `remove_labels`     | string  |          | `"wontfix"`                         | Comma-separated label names to remove from the issue.                                                                            |
| `discussion_locked` | boolean |          | —                                   | Flag indicating if the issue's discussion is locked. If the discussion is locked, only project members can add or edit comments. |

***


# Gmail

Your Toolhouse AI Worker can connect to Gmail using 63 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](https://toolhouse.app/auth-connections?authkit_slugs=gmail).

## Tools (63)

### Gmail Add Label To Email

Integration name: **GMAIL\_ADD\_LABEL\_TO\_EMAIL**

Adds and/or removes specified Gmail labels for a message; ensure `message_id` and all `label_ids` are valid (use `listLabels` for custom label IDs).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------ | ------ | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`          | string |          | `"me"`               | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `message_id`       | string |     ✅    | `"1a2b3c4d5e6f7890"` | Immutable ID of the message to modify. Gmail message IDs are 15-16 character hexadecimal strings (e.g., '1a2b3c4d5e6f7890'). IMPORTANT: Do NOT use UUIDs (32-character strings like '093ca4662b214d5eba8f4ceeaad63433'), thread IDs, or internal system IDs - these will cause 'Invalid id value' errors. Obtain valid message IDs from: (1) 'GMAIL\_FETCH\_EMAILS' response 'messageId' field, (2) 'GMAIL\_FETCH\_MESSAGE\_BY\_THREAD\_ID' response, or (3) 'GMAIL\_LIST\_THREADS' and then fetching thread messages.                                                      |
| `add_label_ids`    | array  |          | `"STARRED"`          | Label IDs to add (IDs, not display names). System labels: INBOX, SPAM, TRASH, UNREAD, STARRED, IMPORTANT, CATEGORY\_PERSONAL, CATEGORY\_SOCIAL, CATEGORY\_PROMOTIONS, CATEGORY\_UPDATES, CATEGORY\_FORUMS. Use full CATEGORY\_ prefix (e.g., 'CATEGORY\_UPDATES' not 'UPDATES'). Custom labels: call 'listLabels' first to get the ID (format: 'Label\_'). Do NOT use the label display name; the API requires the ID. SENT, DRAFT, CHAT are immutable and cannot be added or removed. A label cannot appear in both add\_label\_ids and remove\_label\_ids.                |
| `remove_label_ids` | array  |          | `"UNREAD"`           | Label IDs to remove (IDs, not display names). System labels: INBOX, SPAM, TRASH, UNREAD, STARRED, IMPORTANT, CATEGORY\_PERSONAL, CATEGORY\_SOCIAL, CATEGORY\_PROMOTIONS, CATEGORY\_UPDATES, CATEGORY\_FORUMS. Use full CATEGORY\_ prefix (e.g., 'CATEGORY\_UPDATES' not 'UPDATES'). Custom labels: call 'listLabels' first to get the ID (format: 'Label\_'). SENT, DRAFT, CHAT are immutable and cannot be removed. Common operations: to mark as read, remove 'UNREAD'; to archive, remove 'INBOX'. A label cannot appear in both add\_label\_ids and remove\_label\_ids. |

***

### Gmail Batch Delete Messages

Integration name: **GMAIL\_BATCH\_DELETE\_MESSAGES**

Tool to permanently delete multiple Gmail messages in bulk, bypassing Trash with no recovery possible. Use when you need to efficiently remove large numbers of emails (e.g., retention enforcement, mailbox hygiene). Use GMAIL\_MOVE\_TO\_TRASH instead when reversibility may be needed. Always obtain explicit user confirmation and verify a sample of message IDs before executing. High-volume calls may trigger 429 rateLimitExceeded or 403 userRateLimitExceeded errors; apply exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                   | Description                                                                                                                                                                                                                               |
| ------------ | ------ | :------: | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`     | string |          | `"me"`                                    | User's email address or 'me' for the authenticated user.                                                                                                                                                                                  |
| `messageIds` | array  |     ✅    | `["18c5f5d1a2b3c4d5","18c5f5d1a2b3c4d6"]` | List of Gmail message IDs to delete. Each ID must be a 15-16 character hexadecimal string (e.g., '18c5f5d1a2b3c4d5'). Obtain IDs from actions like GMAIL\_FETCH\_EMAILS or GMAIL\_LIST\_THREADS - do not use human-readable descriptions. |

***

### Gmail Batch Modify Messages

Integration name: **GMAIL\_BATCH\_MODIFY\_MESSAGES**

Modify labels on multiple Gmail messages in one efficient API call. Supports up to 1,000 messages per request for bulk operations like archiving, marking as read/unread, or applying custom labels. High-volume calls may return 429 rateLimitExceeded or 403 userRateLimitExceeded; apply exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ---------------- | ------ | :------: | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `userId`         | string |          | `"me"`                                    | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `messageIds`     | array  |     ✅    | `["18c5f5d1a2b3c4d5","18c5f5d1a2b3c4d6"]` | List of message IDs to modify. Maximum 1,000 message IDs per request. Get message IDs from GMAIL\_FETCH\_EMAILS or GMAIL\_LIST\_THREADS actions. Accepts 'messageIds', 'ids', or 'message\_ids' as the parameter name.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `addLabelIds`    | array  |          | `["INBOX","STARRED"]`                     | List of label IDs to add to the messages. IMPORTANT: Use label IDs, NOT label display names. System labels use their name as ID: INBOX, STARRED, IMPORTANT, SENT, DRAFT, SPAM, TRASH, UNREAD, CATEGORY\_PERSONAL, CATEGORY\_SOCIAL, CATEGORY\_PROMOTIONS, CATEGORY\_UPDATES, CATEGORY\_FORUMS. Custom labels MUST use their ID (format: 'Label\_XXX', e.g., 'Label\_1', 'Label\_25'), NOT the display name (e.g., do NOT use 'Work' or 'Projects'). Call GMAIL\_LIST\_LABELS first to get the 'id' field for custom labels. At least one of add\_label\_ids or remove\_label\_ids must be provided. CONSTRAINT: Label IDs must NOT overlap with remove\_label\_ids - cannot add and remove the same label.                                             |
| `removeLabelIds` | array  |          | `["UNREAD"]`                              | List of label IDs to remove from the messages. IMPORTANT: Use label IDs, NOT label display names. System labels use their name as ID: INBOX, STARRED, IMPORTANT, SENT, SPAM, TRASH, UNREAD. Custom labels MUST use their ID (format: 'Label\_XXX', e.g., 'Label\_1', 'Label\_25'), NOT the display name (e.g., do NOT use 'Work' or 'Projects'). Call GMAIL\_LIST\_LABELS first to get the 'id' field for custom labels. Common use cases: Remove 'UNREAD' to mark as read, remove 'INBOX' to archive. Note: 'DRAFT' cannot be removed - use GMAIL\_DELETE\_DRAFT instead. At least one of add\_label\_ids or remove\_label\_ids must be provided. CONSTRAINT: Label IDs must NOT overlap with add\_label\_ids - cannot add and remove the same label. |

***

### Gmail Create Email Draft

Integration name: **GMAIL\_CREATE\_EMAIL\_DRAFT**

Creates a Gmail email draft. While all fields are optional per the Gmail API, practical validation requires at least one of recipient\_email, cc, or bcc and at least one of subject or body. Supports To/Cc/Bcc recipients, subject, plain/HTML body (ensure `is_html=True` for HTML), attachments, and threading. Returns a draft\_id that must be used as-is with GMAIL\_SEND\_DRAFT — synthetic or stale IDs will fail. When creating a draft reply to an existing thread (thread\_id provided), leave subject empty to stay in the same thread; setting a subject will create a NEW thread instead. HTTP 429 may occur on rapid creation/send sequences; apply exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------ | ------- | :------: | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cc`               | array   |          | `["cc.recipient1@example.com","CC User <cc.recipient2@example.com>"]`                           | Carbon Copy (CC) recipients' email addresses. Each must be a valid email address (e.g., '<user@example.com>') or display name format (e.g., 'John Doe <user@example.com>'). Plain names without email addresses are NOT valid. Optional for drafts (recipients can be added later before sending).                                                                                                                        |
| `bcc`              | array   |          | `["bcc.recipient@example.com","BCC User <bcc.user@example.com>"]`                               | Blind Carbon Copy (BCC) recipients' email addresses. Each must be a valid email address (e.g., '<user@example.com>') or display name format (e.g., 'Bob Jones <user@example.com>'). Plain names without email addresses are NOT valid. Optional for drafts (recipients can be added later before sending).                                                                                                                |
| `body`             | string  |          | `"Hello Team,\n\nPlease find the attached report for your review.\n\nBest regards,\nYour Name"` | Email body content (plain text or HTML); `is_html` must be True if HTML. Optional - drafts can be created without a body and edited later before sending. Can also be provided as 'message\_body'.                                                                                                                                                                                                                        |
| `is_html`          | boolean |          | `true`                                                                                          | <p>Set to True if <code>body</code> is already formatted HTML. When False, plain text newlines are auto-converted to<br>tags. Both modes result in HTML email; this flag controls whether the body content is treated as raw HTML or plain text that gets HTML formatting applied.</p>                                                                                                                                    |
| `subject`          | string  |          | `"Project Update Q3"`                                                                           | Email subject line. Optional - drafts can be created without a subject and edited later before sending. When creating a draft reply to an existing thread (thread\_id provided), leave this empty to stay in the same thread. Setting a subject will create a NEW thread instead.                                                                                                                                         |
| `user_id`          | string  |          | `"me"`                                                                                          | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                  |
| `thread_id`        | string  |          | `"17f45ec49a9c3f1b"`                                                                            | ID of an existing Gmail thread to reply to; omit for new thread. If the thread ID is invalid or inaccessible, the draft will be created as a new thread instead of failing.                                                                                                                                                                                                                                               |
| `attachment`       | —       |          | `{"name":"report.pdf","s3key":"uploads/abc123.pdf","mimetype":"application/pdf"}`               | File(s) to attach to the email. Accepts a single file or a list of files. Must be a dict (or list of dicts) with fields: name (filename), mimetype (e.g., 'application/pdf'), and s3key (obtained from a prior upload/download response — local paths or guessed keys will fail). Total message size including base64-encoded attachments must be under 25 MB; use shareable links (e.g., Google Drive) for larger files. |
| `recipient_email`  | string  |          | `"john.doe@example.com"`                                                                        | Primary recipient's email address. Must be a valid email address (e.g., '<user@example.com>') or display name format (e.g., 'John Doe <user@example.com>'). A plain name without an email address (e.g., 'John Doe') is NOT valid - the '@' symbol and domain are required. Optional for drafts (recipients can be added later before sending). Use extra\_recipients if you want to send to multiple recipients.         |
| `extra_recipients` | array   |          | `["jane.doe@example.com","Jane Doe <jane.doe@example.com>"]`                                    | Additional 'To' recipients' email addresses (not Cc or Bcc). Each must be a valid email address (e.g., '<user@example.com>'), display name format (e.g., 'Jane Doe <user@example.com>'), or 'me' for the authenticated user. Plain names without email addresses are NOT valid. Should only be used if recipient\_email is also provided.                                                                                 |

***

### Gmail Create Filter

Integration name: **GMAIL\_CREATE\_FILTER**

Tool to create a new Gmail filter with specified criteria and actions. Use when the user wants to automatically organize incoming messages based on sender, subject, size, or other criteria. Note: you can only create a maximum of 1,000 filters per account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                 |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `action`   | object |     ✅    | —       | REQUIRED. Action that the filter will perform on messages matching the criteria. At least one action field must be specified.               |
| `user_id`  | string |          | `"me"`  | The user's email address or the special value 'me' to indicate the authenticated user for whom the filter will be created.                  |
| `criteria` | object |     ✅    | —       | REQUIRED. Message matching criteria that determines which messages the filter will apply to. At least one criteria field must be specified. |

***

### Gmail Create Label

Integration name: **GMAIL\_CREATE\_LABEL**

Creates a new label with a unique name in the specified user's Gmail account. Returns a labelId (e.g., 'Label\_123') required for downstream tools like GMAIL\_ADD\_LABEL\_TO\_EMAIL, GMAIL\_BATCH\_MODIFY\_MESSAGES, and GMAIL\_MODIFY\_THREAD\_LABELS — those tools do not accept display names.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------- | ------ | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id`                 | string |          | `"me"`        | The email address of the user in whose account the label will be created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `label_name`              | string |     ✅    | `"Work"`      | REQUIRED. The name for the new label. Must be unique within the account, non-blank, maximum length 225 characters, cannot contain commas (','), not only whitespace, and must not be a reserved system label. Reserved English system labels include: Inbox, Starred, Important, Sent, Draft, Drafts, Spam, Trash, etc. Forward slashes ('/') are allowed and used to create hierarchical nested labels (e.g., 'Work/Projects', 'Personal/Finance'). When creating nested labels, any missing parent labels will be automatically created (similar to 'mkdir -p'). Periods ('.') are allowed and commonly used for numbering schemes (e.g., '1. Action Items', '2. Projects'). Note: 'name' is also accepted as an alias for this field. If a label with this name already exists, returns a 409 conflict; use GMAIL\_LIST\_LABELS to check existing labels and reuse the existing labelId, or use GMAIL\_PATCH\_LABEL to update it. |
| `text_color`              | string |          | `"BLACK"`     | Text color for the label. Gmail only accepts colors from a predefined palette of 102 specific hex values. Common color names like 'YELLOW', 'RED', 'BLUE', 'GREEN', 'ORANGE', 'PURPLE', 'PINK' are automatically mapped to the closest Gmail palette color. Provide either a common color name, a Gmail palette color name (e.g., 'BLACK', 'ROYAL\_BLUE'), or exact hex value (e.g., '#000000', '#4a86e8'). If only text\_color is provided without background\_color, a complementary background color (white or black) will be auto-selected for optimal contrast. Full palette: <https://developers.google.com/workspace/gmail/api/reference/rest/v1/users.labels#Color> Must be supplied together with background\_color — providing only one will cause a 400 error. The auto-selected complementary color behavior does not apply; both colors are required.                                                                   |
| `background_color`        | string |          | `"YELLOW"`    | Background color for the label. Gmail only accepts colors from a predefined palette of 102 specific hex values. Common color names like 'YELLOW', 'RED', 'BLUE', 'GREEN', 'ORANGE', 'PURPLE', 'PINK' are automatically mapped to the closest Gmail palette color. Provide either a common color name, a Gmail palette color name (e.g., 'ROYAL\_BLUE', 'CARIBBEAN\_GREEN'), or exact hex value (e.g., '#4a86e8', '#43d692'). If only background\_color is provided without text\_color, a complementary text color (white or black) will be auto-selected for optimal contrast. Full palette: <https://developers.google.com/workspace/gmail/api/reference/rest/v1/users.labels#Color> Must be supplied together with text\_color — providing only one will cause a 400 error. The auto-selected complementary color behavior does not apply; both colors are required.                                                              |
| `label_list_visibility`   | string |          | `"labelShow"` | Controls how the label is displayed in the label list in the Gmail sidebar. Valid values: 'labelShow' (always show), 'labelShowIfUnread' (show only if unread messages), 'labelHide' (hide from list).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `message_list_visibility` | string |          | `"show"`      | Controls how messages with this label are displayed in the message list. Valid values: 'show' or 'hide'. Note: These values are different from label\_list\_visibility - do NOT use 'labelShow' or 'labelHide' here.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### Gmail Create Prompt Post

Integration name: **GMAIL\_CREATE\_PROMPT\_POST**

Send a one-shot prompt to the Sanity Content Agent. Stateless one-shot prompt endpoint. No thread management or message persistence. Ideal for simple, single-turn interactions. Use when you need to send a single prompt and receive a response without maintaining conversation context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                              | Description                                                                |
| ---------------- | ------ | :------: | ------------------------------------ | -------------------------------------------------------------------------- |
| `config`         | object |          | —                                    | Agent configuration. Controls behavior, capabilities, and document access. |
| `format`         | string |          | —                                    | Controls how directives in the response are formatted.                     |
| `message`        | string |     ✅    | `"Summarize my latest blog posts"`   | The prompt message to send to the agent                                    |
| `instructions`   | string |          | `"Be concise and use bullet points"` | Custom instructions for the agent                                          |
| `organizationId` | string |     ✅    | `"abc123"`                           | Your Sanity organization ID                                                |

***

### Gmail Delete Draft

Integration name: **GMAIL\_DELETE\_DRAFT**

Permanently deletes a specific Gmail draft using its ID with no recovery possible; verify the correct `draft_id` and obtain explicit user confirmation before calling. Ensure the draft exists and the user has necessary permissions for the given `user_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                   | Description                                                                                                                                                                                                                                                                                                                                                                                             |
| ---------- | ------ | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`  | string |          | `"me"`                    | User's email address or 'me' for the authenticated user; 'me' is recommended.                                                                                                                                                                                                                                                                                                                           |
| `draft_id` | string |     ✅    | `"r-8388446164079304564"` | Immutable ID of the draft to delete. Must be obtained from GMAIL\_LIST\_DRAFTS or GMAIL\_CREATE\_EMAIL\_DRAFT actions. Draft IDs typically have an 'r' prefix (e.g., 'r-1234567890' or 'r1234567890'). Draft IDs differ from message IDs used in GMAIL\_BATCH\_DELETE\_MESSAGES — do not interchange. When multiple similar drafts exist, confirm the exact ID via GMAIL\_LIST\_DRAFTS before deleting. |

***

### Gmail Delete Filter

Integration name: **GMAIL\_DELETE\_FILTER**

Tool to permanently delete a Gmail filter by its ID. Use when you need to remove an existing email filtering rule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                    | Description                                                                                      |
| ----------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------ |
| `user_id`   | string |          | `"me"`                                     | User's email address or 'me' for the authenticated user.                                         |
| `filter_id` | string |     ✅    | `"ANe1Bmhf1zE0KtM6340kAXudxukJADqVJ6jVVA"` | The ID of the filter to be deleted. Filter IDs can be obtained from GMAIL\_LIST\_FILTERS action. |

***

### Gmail Delete Label

Integration name: **GMAIL\_DELETE\_LABEL**

Permanently DELETES a user-created Gmail label from the account (not from a message). WARNING: This action DELETES the label definition itself, removing it from all messages. System labels (INBOX, SENT, UNREAD, etc.) cannot be deleted. To add/remove labels from specific messages, use GMAIL\_ADD\_LABEL\_TO\_EMAIL action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------- | ------ | :------: | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`  | string |          | `"me"`      | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `label_id` | string |     ✅    | `"Label_1"` | ID of the user-created label to be permanently DELETED from the account. Must be a custom label ID (format: 'Label\_' e.g., 'Label\_1', 'Label\_42'). System labels (INBOX, SENT, DRAFT, UNREAD, STARRED, IMPORTANT, SPAM, TRASH, CATEGORY\_\*, etc.) cannot be deleted. WARNING: This action permanently DELETES the label definition from your account - it does NOT remove a label from a message. To add/remove labels from messages, use GMAIL\_ADD\_LABEL\_TO\_EMAIL instead. |

***

### Gmail Delete Message

Integration name: **GMAIL\_DELETE\_MESSAGE**

Permanently deletes a specific email message by its ID from a Gmail mailbox; for `user_id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                    |
| ------------ | ------ | :------: | -------------------- | ------------------------------------------------------------------------------ |
| `user_id`    | string |          | `"me"`               | User's email address. The special value 'me' refers to the authenticated user. |
| `message_id` | string |     ✅    | `"185120e4428ba8cf"` | Identifier of the email message to delete.                                     |

***

### Gmail Delete Thread

Integration name: **GMAIL\_DELETE\_THREAD**

Tool to immediately and permanently delete a specified thread and all its messages. This operation cannot be undone. Use threads.trash instead for reversible deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                    |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"19c8e0ea407b9cf9"` | ID of the Thread to delete.                                                    |
| `user_id` | string |          | `"me"`               | User's email address. The special value 'me' refers to the authenticated user. |

***

### Gmail Fetch Emails

Integration name: **GMAIL\_FETCH\_EMAILS**

Fetches a list of email messages from a Gmail account, supporting filtering, pagination, and optional full content retrieval. Results are NOT sorted by recency; sort by internalDate client-side. The messages field may be absent or empty (valid no-results state); always null-check before accessing messageId or threadId. Null-check subject and header fields before string operations. For large result sets, prefer ids\_only=true or metadata-only listing, then hydrate via GMAIL\_FETCH\_MESSAGE\_BY\_MESSAGE\_ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| -------------------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`              | string  |          | `"from:john@example.com is:unread"` | Gmail advanced search query (e.g., 'from:user subject:meeting'). Supported operators: 'from:', 'to:', 'subject:', 'label:', 'has:', 'is:', 'in:', 'category:', 'after:YYYY/MM/DD', 'before:YYYY/MM/DD', AND/OR/NOT. IMPORTANT - 'is:' vs 'label:' usage: Use 'is:' for special mail states: is:snoozed, is:unread, is:read, is:starred, is:important. Use 'label:' ONLY for user-created labels (e.g., 'label:work', 'label:projects'). Note: 'muted' may work with both 'is:muted' and 'label:muted' based on community reports. Common mistake: 'label:snoozed' is WRONG - use 'is:snoozed' instead. Use quotes for exact phrases. Omit for no query filter. after:/before: evaluate whole calendar days in UTC; before: is exclusive — adjust for local timezone to avoid off-by-one-day gaps. |
| `user_id`            | string  |          | `"me"`                              | User's email address or 'me' for the authenticated user. Non-'me' addresses require domain-level delegation; without it, authentication or not-found errors result.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `verbose`            | boolean |          | `true`                              | If false, uses optimized concurrent metadata fetching for faster performance (\~75% improvement). If true, uses standard detailed message fetching. When false, only essential fields (subject, sender, recipient, time, labels) are guaranteed. Body content and attachment details require verbose=true even when include\_payload=true.                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `ids_only`           | boolean |          | `true`                              | If true, only returns message IDs from the list API without fetching individual message details. Fastest option for getting just message IDs and thread IDs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `label_ids`          | array   |          | `"INBOX"`                           | Filter by label IDs; only messages with all specified labels are returned (AND logic). Optional - omit or use empty list to fetch all messages without label filtering. System label IDs: 'INBOX', 'SPAM', 'TRASH', 'UNREAD', 'STARRED', 'IMPORTANT', 'CATEGORY\_PRIMARY' (alias 'CATEGORY\_PERSONAL'), 'CATEGORY\_SOCIAL', 'CATEGORY\_PROMOTIONS', 'CATEGORY\_UPDATES', 'CATEGORY\_FORUMS'. For custom/user-created labels, you MUST use the label ID (e.g., 'Label\_123456'), NOT the display name. Use the 'listLabels' action to find label IDs for custom labels. Combining label\_ids with label: in query applies AND logic across both, which can silently over-restrict results; use one strategy consistently.                                                                          |
| `page_token`         | string  |          | —                                   | Token for retrieving a specific page, obtained from a previous response's `nextPageToken`. Must be a valid opaque token string from a previous API response. Do not pass arbitrary values. Omit for the first page. Loop calls using nextPageToken until it is absent to avoid silently missing messages. resultSizeEstimate is approximate — do not use as a stopping condition.                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `max_results`        | integer |          | `"10"`                              | Maximum number of messages to retrieve per page. Default of 1 retrieves only a single message; set higher for practical use. Hard cap is 500 per page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `include_payload`    | boolean |          | `true`                              | Set to true to include full message payload (headers, body, attachments); false for metadata only. payload may still be null even when true; use GMAIL\_FETCH\_MESSAGE\_BY\_MESSAGE\_ID for guaranteed complete content. When payload is present, bodies are base64url-encoded in payload.parts; replace '-'→'+' and '\_'→'/' and fix padding before decoding, and check both text/plain and text/html parts.                                                                                                                                                                                                                                                                                                                                                                                     |
| `include_spam_trash` | boolean |          | `true`                              | Set to true to include messages from 'SPAM' and 'TRASH'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

***

### Gmail Fetch Message By Message Id

Integration name: **GMAIL\_FETCH\_MESSAGE\_BY\_MESSAGE\_ID**

Fetches a specific email message by its ID, provided the `message_id` exists and is accessible to the authenticated `user_id`. Spam/trash messages are excluded unless upstream list/search calls used `include_spam_trash=true`. Use `internalDate` (milliseconds since epoch) rather than header `Date` for recency checks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------ | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `format`     | string |          | `"metadata"`         | Format for message content. 'minimal': lightest (ID, thread ID, labels only). 'metadata': headers and message metadata without body content - ideal for summarization, analysis, or when you only need subject/sender/timestamp (recommended for most use cases). 'full': complete MIME structure with 50+ headers, nested parts, and base64url-encoded body data - heavy payload, only use when you need the complete raw MIME structure for parsing attachments or body content. 'raw': entire RFC 2822 formatted message as base64url string. |
| `user_id`    | string |          | `"user@example.com"` | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `message_id` | string |     ✅    | `"19b11732c1b578fd"` | The Gmail API message ID (hexadecimal string, typically 15-16 characters like '19b11732c1b578fd'). Must be obtained from Gmail API responses (e.g., List Messages, Search Messages). Do NOT use email subjects, dates, sender names, or custom identifiers. Do NOT use `threadId` (use GMAIL\_FETCH\_MESSAGE\_BY\_THREAD\_ID for threads), the Message-ID email header, or any fabricated value — only IDs from Gmail API list/search responses.                                                                                                 |

***

### Gmail Fetch Message By Thread Id

Integration name: **GMAIL\_FETCH\_MESSAGE\_BY\_THREAD\_ID**

Retrieves messages from a Gmail thread using its `thread_id`, where the thread must be accessible by the specified `user_id`. Returns a `messages` array; `thread_id` is not echoed in the response. Message order is not guaranteed — sort by `internalDate` to find oldest/newest. Check `labelIds` per message to filter drafts. Concurrent bulk calls may trigger 403 `userRateLimitExceeded` or 429; cap concurrency \~10 and use exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------ | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`    | string |          | `"me"`                                | The email address of the user.                                                                                                                                                                                                                                                                                                                                                                                                   |
| `thread_id`  | string |     ✅    | `"19bf77729bcb3a44"`                  | Hexadecimal thread ID from Gmail API (e.g., '19bf77729bcb3a44'). Obtain from GMAIL\_LIST\_THREADS or GMAIL\_FETCH\_EMAILS. Prefixes like 'msg-f:' or 'thread-f:' are auto-stripped. Legacy Gmail web UI IDs (e.g., 'FMfcgzQfBZdVqKZcSVBhqwWLKWCtDdWQ') are NOT supported - use the API thread ID instead. Deduplicate thread\_ids before calling when multiple listed messages share the same threadId to avoid redundant calls. |
| `page_token` | string |          | `"CiAKGhIKJdealEffectivelyPageToken"` | Opaque page token for fetching a specific page of messages if results are paginated. Iterate calls by passing the returned `nextPageToken` until it is absent; stopping early will miss messages in long threads.                                                                                                                                                                                                                |

***

### Gmail Forward Message

Integration name: **GMAIL\_FORWARD\_MESSAGE**

Forward an existing Gmail message to specified recipients, preserving original body and attachments. Verify recipients and content before forwarding to avoid unintended exposure. Bulk forwarding may trigger 429/5xx rate limits; keep concurrency to 5–10 and apply backoff. Messages near Gmail's size limits may fail; reconstruct a smaller draft if needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                             | Description                                                                                                                                                                      |
| ----------------- | ------ | :------: | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cc`              | array  |          | `["cc1@example.com","cc2@example.com"]`             | List of email addresses to CC.                                                                                                                                                   |
| `bcc`             | array  |          | `["bcc1@example.com","bcc2@example.com"]`           | List of email addresses to BCC.                                                                                                                                                  |
| `user_id`         | string |          | `"me"`                                              | User's email address or 'me' for the authenticated user.                                                                                                                         |
| `message_id`      | string |     ✅    | `"17f45ec49a9c3f1b"`                                | Gmail message ID (hexadecimal string, e.g., '17f45ec49a9c3f1b'). Must contain only hex characters \[0-9a-fA-F]. Obtain this from actions like 'List Messages' or 'Fetch Emails'. |
| `recipients`      | array  |     ✅    | `["john.doe@example.com","jane.smith@example.com"]` | List of email addresses to forward the message to.                                                                                                                               |
| `additional_text` | string |          | `"Please see the forwarded message below."`         | Optional additional text to include before the forwarded content.                                                                                                                |

***

### Gmail Get Attachment

Integration name: **GMAIL\_GET\_ATTACHMENT**

Retrieves a specific attachment by ID from a message in a user's Gmail mailbox, requiring valid message and attachment IDs. Returns base64url-encoded binary data (up to \~25 MB); the downloaded file location is at data.file.s3url (also exposes mimetype and name; no s3key). Attachments exceeding \~25 MB may be exposed as Google Drive links — use GOOGLEDRIVE\_DOWNLOAD\_FILE when a Drive file\_id is present instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| --------------- | ------ | :------: | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`       | string |          | `"me"`                    | User's email address ('me' for authenticated user).                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `file_name`     | string |     ✅    | `"invoice.pdf"`           | Desired filename for the downloaded attachment. This is a required string field - do not pass null.                                                                                                                                                                                                                                                                                                                                                                                                         |
| `message_id`    | string |     ✅    | `"18exampleMessageId7f9"` | Immutable ID of the message containing the attachment. This is a required string field - do not pass null. Obtain the message\_id from Gmail API responses (e.g., fetchEmails, listThreads).                                                                                                                                                                                                                                                                                                                |
| `attachment_id` | string |     ✅    | `"ANGjdJ8sZ7example1234"` | The internal Gmail attachment ID (NOT the filename). This is a system-generated token string like 'ANGjdJ8s...'. Obtain this ID from the 'attachmentId' field in the 'attachmentList' array returned by fetchEmails or fetchMessageByMessageId actions. Do NOT pass the filename (e.g., 'report.pdf'). Requires a fully hydrated message payload: call GMAIL\_FETCH\_MESSAGE\_BY\_MESSAGE\_ID with format='full' to obtain valid attachment IDs — lightweight fetch modes may omit attachmentList entirely. |

***

### Gmail Get Auto Forwarding

Integration name: **GMAIL\_GET\_AUTO\_FORWARDING**

Tool to get the auto-forwarding setting for the specified account. Use when you need to retrieve the current auto-forwarding configuration including enabled status, forwarding email address, and message disposition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's email address. The special value 'me' can be used to indicate the authenticated user. |

***

### Gmail Get Contacts

Integration name: **GMAIL\_GET\_CONTACTS**

Fetches contacts (connections) for the authenticated Google account, allowing selection of specific data fields and pagination. Only covers saved contacts and 'Other Contacts'; email-header-only senders are out of scope. Contact records may have sparse data — handle missing fields gracefully. People API shares a per-user QPS quota; HTTP 429 requires exponential backoff (1s, 2s, 4s).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------ | ------- | :------: | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_token`             | string  |          | —             | Token to retrieve a specific page of results, obtained from 'nextPageToken' in a previous response. Repeat calls with each successive `nextPageToken` until it is absent — stopping early silently omits contacts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `person_fields`          | string  |          | `"addresses"` | Comma-separated person fields to retrieve for each contact (e.g., 'names,emailAddresses').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `resource_name`          | string  |          | —             | Identifier for the person resource whose connections are listed; use 'people/me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `include_other_contacts` | boolean |          | —             | Include 'Other Contacts' (interacted with but not explicitly saved) in addition to regular contacts. WARNING: 'Other Contacts' often have incomplete data - they may lack names, phone numbers, and other fields even when requested. These auto-generated contacts are created from email interactions and typically only have email addresses. Set to False if you need contacts with complete name information. When True, each contact will have a 'contactSource' field indicating its origin. When True, `person_fields` is restricted to `emailAddresses`, `names`, `phoneNumbers`, and `metadata` only — requesting other fields (e.g., `organizations`, `birthdays`) causes validation errors or silent omissions. |

***

### Gmail Get Draft

Integration name: **GMAIL\_GET\_DRAFT**

Retrieves a single Gmail draft by its ID. Use this to fetch and inspect draft content before sending via GMAIL\_SEND\_DRAFT. The format parameter controls the level of detail returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                | Description                                                                                                                                                                           |
| ---------- | ------ | :------: | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `format`   | string |          | `"full"`               | Format for the draft message: 'minimal' (ID/labels only), 'full' (complete data with parsed payload), 'raw' (base64url-encoded RFC 2822 format), 'metadata' (ID/labels/headers only). |
| `user_id`  | string |          | `"me"`                 | The user's email address. The special value `me` can be used to indicate the authenticated user.                                                                                      |
| `draft_id` | string |     ✅    | `"r99885592323229922"` | The ID of the draft to retrieve. Draft IDs are typically alphanumeric strings (e.g., 'r99885592323229922'). Use GMAIL\_LIST\_DRAFTS to retrieve valid draft IDs.                      |

***

### Gmail Get Filter

Integration name: **GMAIL\_GET\_FILTER**

Tool to retrieve a specific Gmail filter by its ID. Use when you need to inspect the criteria and actions of an existing filter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                    | Description                                                                            |
| --------- | ------ | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"ANe1BmjnwmKdVlXGMLeKsv98UJGFe82pUGCsVQ"` | The ID of the filter to be fetched.                                                    |
| `user_id` | string |          | `"me"`                                     | The user's email address or the special value 'me' to indicate the authenticated user. |

***

### Gmail Get Label

Integration name: **GMAIL\_GET\_LABEL**

Gets details for a specified Gmail label. Use this to retrieve label information including name, type, visibility settings, message/thread counts, and color.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                                                                                                                                             |
| --------- | ------ | :------: | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"INBOX"` | The ID of the label to retrieve. Can be a system label (e.g., INBOX, SENT, DRAFT, UNREAD, STARRED, SPAM, TRASH) or a user-created label ID (e.g., Label\_1, Label\_42). |
| `user_id` | string |          | `"me"`    | The user's email address. The special value 'me' can be used to indicate the authenticated user.                                                                        |

***

### Gmail Get Language Settings

Integration name: **GMAIL\_GET\_LANGUAGE\_SETTINGS**

Tool to retrieve the language settings for a Gmail user. Use when you need to determine the display language preference for the authenticated user or a specific Gmail account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                              |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The email address of the Gmail user whose language settings are to be retrieved, or the special value 'me' to indicate the currently authenticated user. |

***

### Gmail Get People

Integration name: **GMAIL\_GET\_PEOPLE**

Retrieves either a specific person's details (using `resource_name`) or lists 'Other Contacts' (if `other_contacts` is true), with `person_fields` specifying the data to return. Scope is limited to the authenticated user's own contacts and 'Other Contacts' history only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ---------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sources`        | array   |          | —                        | Source types to include when retrieving other contacts. READ\_SOURCE\_TYPE\_CONTACT supports basic fields (emailAddresses, metadata, names, phoneNumbers, photos). READ\_SOURCE\_TYPE\_PROFILE supports extended fields (birthdays, genders, organizations, etc.) but requires READ\_SOURCE\_TYPE\_CONTACT to also be included. Applicable only when `other_contacts` is true.                                                                                                                              |
| `page_size`      | integer |          | —                        | The number of 'Other Contacts' to return per page. Applicable only when `other_contacts` is true.                                                                                                                                                                                                                                                                                                                                                                                                           |
| `page_token`     | string  |          | —                        | An opaque token from a previous response to retrieve the next page of 'Other Contacts' results. Applicable only when `other_contacts` is true and paginating.                                                                                                                                                                                                                                                                                                                                               |
| `sync_token`     | string  |          | —                        | A token from a previous 'Other Contacts' list call to retrieve only changes since the last sync; leave empty for an initial full sync. Applicable only when `other_contacts` is true.                                                                                                                                                                                                                                                                                                                       |
| `person_fields`  | string  |          | `"names,emailAddresses"` | A comma-separated field mask to restrict which fields on the person (or persons) are returned. Consult the Google People API documentation for a comprehensive list of valid fields. Omitted fields are silently absent from the response — no error is raised. When `other_contacts` is true, only a restricted subset is valid (`emailAddresses`, `names`, `phoneNumbers`, `metadata`); extended fields like `organizations` or `birthdays` may cause validation errors or silent omissions in that mode. |
| `resource_name`  | string  |          | `"people/me"`            | Resource name identifying the person for whom to retrieve information (like the authenticated user or a specific contact). Used only when `other_contacts` is false. Deleted or stale resource\_names may return partial records with missing `emailAddresses`, `names`, or other fields.                                                                                                                                                                                                                   |
| `other_contacts` | boolean |          | —                        | If true, retrieves 'Other Contacts' (people interacted with but not explicitly saved), ignoring `resource_name` and enabling pagination/sync. If false, retrieves information for the single person specified by `resource_name`.                                                                                                                                                                                                                                                                           |

***

### Gmail Get Profile

Integration name: **GMAIL\_GET\_PROFILE**

Retrieves Gmail profile information (email address, aggregate messagesTotal/threadsTotal, historyId) for a user. messagesTotal counts individual emails; threadsTotal counts conversations; neither is per-label — use GMAIL\_FETCH\_EMAILS with label filters for label-specific counts. The returned historyId seeds incremental sync via GMAIL\_LIST\_HISTORY; if historyIdTooOld is returned, rescan with GMAIL\_FETCH\_EMAILS before resuming. Response may be wrapped under a top-level data field; unwrap before reading fields. A successful call confirms mailbox connectivity but not full mailbox access if granted scopes are narrow. Use the returned email address to dynamically identify the authenticated account rather than hard-coding it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                        |
| --------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"user@example.com"` | The email address of the Gmail user whose profile is to be retrieved, or the special value 'me' to indicate the currently authenticated user. Prefer 'me' unless explicitly targeting another account; passing a raw email address that does not match the connected account may fail or access the wrong mailbox. |

***

### Gmail Get Vacation Settings

Integration name: **GMAIL\_GET\_VACATION\_SETTINGS**

Tool to retrieve vacation responder settings for a Gmail user. Use when you need to check if out-of-office auto-replies are configured and view their content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                              |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The email address of the Gmail user whose vacation settings are to be retrieved, or the special value 'me' to indicate the currently authenticated user. |

***

### Gmail Import Message

Integration name: **GMAIL\_IMPORT\_MESSAGE**

Tool to import a message into the user's mailbox with standard email delivery scanning and classification. Use when you need to add an existing email to a Gmail account without sending it through SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                                                                                                                                                          | Description                                                                                                                                           |
| ---------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `raw`                  | string  |     ✅    | `"RnJvbTogdGVzdEBleGFtcGxlLmNvbQ0KVG86IHJlY2lwaWVudEBleGFtcGxlLmNvbQ0KU3ViamVjdDogVGVzdCBJbXBvcnQgTWVzc2FnZQ0KDQpUaGlzIGlzIGEgdGVzdCBlbWFpbCBtZXNzYWdlIGZvciBpbXBvcnRpbmcgdmlhIEdtYWlsIEFQSS4="` | The entire email message in RFC 2822 format, base64url-encoded. This is the raw email message to import into the mailbox.                             |
| `deleted`              | boolean |          | —                                                                                                                                                                                                | Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for Google Workspace accounts. |
| `user_id`              | string  |          | `"me"`                                                                                                                                                                                           | The user's email address. The special value 'me' can be used to indicate the authenticated user.                                                      |
| `never_mark_spam`      | boolean |          | —                                                                                                                                                                                                | Ignore the Gmail spam classifier decision and never mark this email as SPAM in the mailbox.                                                           |
| `internal_date_source` | string  |          | `"receivedTime"`                                                                                                                                                                                 | Source for Gmail's internal date of the message.                                                                                                      |
| `process_for_calendar` | boolean |          | —                                                                                                                                                                                                | Process calendar invites in the email and add any extracted meetings to the Google Calendar for this user.                                            |

***

### Gmail Insert Message

Integration name: **GMAIL\_INSERT\_MESSAGE**

Tool to insert a message into the user's mailbox similar to IMAP APPEND. Use when you need to add an email directly to a mailbox bypassing most scanning and classification. This does not send a message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                                                                                                                                                                                                      | Description                                                                                                                                           |
| -------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `raw`                | string  |     ✅    | `"RnJvbTogdGVzdEBleGFtcGxlLmNvbQ0KVG86IHRlc3RAZXhhbXBsZS5jb20NCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0idXRmLTgiDQpNSU1FLVZlcnNpb246IDEuMA0KU3ViamVjdDogVGVzdCBNZXNzYWdlDQoNCkhpLCB0aGlzIGlzIGEgdGVzdCBtZXNzYWdlLg=="` | The entire email message in RFC 2822 formatted and base64url encoded string. This is the raw message content that will be inserted into the mailbox.  |
| `deleted`            | boolean |          | —                                                                                                                                                                                                                            | Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for Google Workspace accounts. |
| `user_id`            | string  |          | `"me"`                                                                                                                                                                                                                       | The user's email address. The special value `me` can be used to indicate the authenticated user.                                                      |
| `internalDateSource` | string  |          | —                                                                                                                                                                                                                            | Source for Gmail's internal date of the message.                                                                                                      |

***

### Gmail List Cse Identities

Integration name: **GMAIL\_LIST\_CSE\_IDENTITIES**

Tool to list client-side encrypted identities for an authenticated user. Use when you need to retrieve CSE identity configurations including key pair associations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example          | Description                                                                                    |
| ------------ | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------------- |
| `user_id`    | string  |          | `"me"`           | The requester's primary email address. Use 'me' to indicate the authenticated user.            |
| `page_size`  | integer |          | `20`             | The number of identities to return. If not provided, the page size will default to 20 entries. |
| `page_token` | string  |          | `"ABCDEF123456"` | Pagination token indicating which page of identities to return.                                |

***

### Gmail List Cse Keypairs

Integration name: **GMAIL\_LIST\_CSE\_KEYPAIRS**

Tool to list client-side encryption key pairs for an authenticated user. Use when you need to retrieve CSE keypair configurations including public keys and enablement states. Supports pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example          | Description                                                                                            |
| ------------ | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------ |
| `user_id`    | string  |          | `"me"`           | The requester's primary email address. Use 'me' to indicate the authenticated user.                    |
| `page_size`  | integer |          | `20`             | The number of key pairs to return per page. If not provided, the page size will default to 20 entries. |
| `page_token` | string  |          | `"ABCDEF123456"` | Pagination token indicating which page of key pairs to return. Omit to return the first page.          |

***

### Gmail List Drafts

Integration name: **GMAIL\_LIST\_DRAFTS**

Retrieves a paginated list of email drafts from a user's Gmail account. Use verbose=true to get full draft details including subject, body, sender, and timestamp. Draft ordering is non-guaranteed; iterate using page\_token until it is absent to retrieve all drafts. Newly created drafts may not appear immediately. Rapid calls may trigger 403 userRateLimitExceeded or 429 errors; apply exponential backoff (1s, 2s, 4s) before retrying.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                              |
| ------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id`     | string  |          | `"me"`                                       | User's mailbox ID; use 'me' for the authenticated user.                                                                                                                                                                                                                                                                  |
| `verbose`     | boolean |          | `true`                                       | If true, fetches full draft details including subject, sender, recipient, body, and timestamp. If false, returns only draft IDs (faster). Increases response payload size; tune max\_results accordingly. Use verbose=true before destructive operations to confirm draft identity by subject, recipient, and timestamp. |
| `page_token`  | string  |          | `"CiaKJDhWSE5UURE9PSIsImMiOiJhYmMxMjMifQ=="` | Token from a previous response to retrieve a specific page of drafts. Ordering is non-guaranteed; continue paginating until page\_token is absent in the response to retrieve all drafts.                                                                                                                                |
| `max_results` | integer |          | `10`                                         | Maximum number of drafts to return per page.                                                                                                                                                                                                                                                                             |

***

### Gmail List Filters

Integration name: **GMAIL\_LIST\_FILTERS**

Tool to list all Gmail filters (rules) in the mailbox. Use for security audits to detect malicious filter rules or before creating new filters to avoid duplicates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                            |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The user's email address or the special value 'me' to indicate the authenticated user whose filters will be retrieved. |

***

### Gmail List Forwarding Addresses

Integration name: **GMAIL\_LIST\_FORWARDING\_ADDRESSES**

Tool to list all forwarding addresses for the specified Gmail account. Use when you need to retrieve the email addresses that are allowed to be used for forwarding messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                         |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The user's email address or the special value 'me' to indicate the authenticated user whose forwarding addresses will be retrieved. |

***

### Gmail List History

Integration name: **GMAIL\_LIST\_HISTORY**

Tool to list Gmail mailbox change history since a known startHistoryId. Use for incremental mailbox syncs. Persist the latest historyId as a checkpoint across sessions; without it, incremental sync is unreliable. An empty history list in the response is valid and means no new changes occurred.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                           | Description                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id`          | string  |          | `"me"`                            | The user's email address. Use 'me' to specify the authenticated user.                                                                                                                                                                                                                                                                                                                |
| `label_id`         | string  |          | `"INBOX"`                         | Only return history records involving messages with this label ID.                                                                                                                                                                                                                                                                                                                   |
| `page_token`       | string  |          | `"ABCDEF123456"`                  | Token to retrieve a specific page of results. If the response includes nextPageToken, loop requests using this parameter until no nextPageToken is returned; failing to paginate will silently miss changes.                                                                                                                                                                         |
| `max_results`      | integer |          | `100`                             | Maximum number of history records to return. Default is 100; max is 500.                                                                                                                                                                                                                                                                                                             |
| `history_types`    | array   |          | `["messageAdded","labelRemoved"]` | Filter by specific history types. Allowed values: messageAdded, messageDeleted, labelAdded, labelRemoved.                                                                                                                                                                                                                                                                            |
| `start_history_id` | string  |     ✅    | `"1234567890"`                    | Required. Returns history records after this ID. If the ID is invalid or too old, the API returns 404. Perform a full sync in that case. Should be a numeric string. On 404 (historyIdTooOld) or 400 (invalidArgument), recover by fetching a fresh historyId via GMAIL\_GET\_PROFILE, then perform a one-time full sync via GMAIL\_FETCH\_EMAILS before resuming incremental calls. |

***

### Gmail List Labels

Integration name: **GMAIL\_LIST\_LABELS**

Retrieves all system and user-created labels for a Gmail account in a single unpaginated response. Primary use: obtain internal label IDs (e.g., 'Label\_123') required by other Gmail tools — display names cannot be used as label identifiers and cause silent failures or errors. System labels (INBOX, UNREAD, SPAM, TRASH, etc.) are case-sensitive and must be used exactly as returned; INBOX, SPAM, and TRASH are read-only and cannot be added/removed via label modification tools. The Gmail search 'label:' operator accepts display names, but label\_ids parameters in tools like GMAIL\_FETCH\_EMAILS require internal IDs from this tool — mixing conventions yields zero results silently. Do not hardcode label IDs across sessions; refresh via this tool on conflict errors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                           |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`         | string  |          | `"me"`  | Identifies the Gmail account (owner's email or 'me' for authenticated user) for which labels will be listed.                                                                                                                                                                                                                                                                                          |
| `include_details` | boolean |          | `true`  | If true, fetches detailed info for each label including message/thread counts (messagesTotal, messagesUnread, threadsTotal, threadsUnread). This requires additional API calls and may be slower for accounts with many labels. If false (default), returns basic label info (id, name, type) which is faster. Counts are eventually consistent and may lag real-time mailbox state by a few seconds. |

***

### Gmail List Messages

Integration name: **GMAIL\_LIST\_MESSAGES**

DEPRECATED: Use GMAIL\_FETCH\_EMAILS instead. Lists the messages in the user's mailbox. Use when you need to retrieve a list of email messages with optional filtering by labels or search query.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example              | Description                                                                                                                                                                                                                            |
| -------------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                  | string  |          | `"is:unread"`        | Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, 'from:<someuser@example.com> is:unread'. Cannot be used when accessing the API using the gmail.metadata scope. |
| `user_id`            | string  |          | `"me"`               | The user's email address or 'me' to specify the authenticated user.                                                                                                                                                                    |
| `label_ids`          | array   |          | `["INBOX"]`          | Only return messages with labels that match all of the specified label IDs. Messages in a thread might have labels that other messages in the same thread don't have.                                                                  |
| `page_token`         | string  |          | `"NextPageToken123"` | Page token to retrieve a specific page of results in the list.                                                                                                                                                                         |
| `max_results`        | integer |          | `10`                 | Maximum number of messages to return. Defaults to 100. The maximum allowed value is 500.                                                                                                                                               |
| `include_spam_trash` | boolean |          | `true`               | Include messages from SPAM and TRASH in the results. Default is false.                                                                                                                                                                 |

***

### Gmail List Send As

Integration name: **GMAIL\_LIST\_SEND\_AS**

Lists the send-as aliases for a Gmail account, including the primary address and custom 'from' aliases. Use when you need to retrieve available sending addresses for composing emails.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                    |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's email address or the special value 'me' to indicate the authenticated user whose send-as aliases will be retrieved. |

***

### Gmail List Smime Info

Integration name: **GMAIL\_LIST\_SMIME\_INFO**

Lists S/MIME configs for the specified send-as alias. Use when you need to retrieve all S/MIME certificate configurations associated with a specific send-as email address.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example               | Description                                                                                      |
| --------------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------ |
| `user_id`       | string |          | `"me"`                | The user's email address. The special value 'me' can be used to indicate the authenticated user. |
| `send_as_email` | string |     ✅    | `"alias@example.com"` | The email address that appears in the 'From:' header for mail sent using this alias.             |

***

### Gmail List Threads

Integration name: **GMAIL\_LIST\_THREADS**

Retrieves a list of email threads from a Gmail account, identified by `user_id` (email address or 'me'), supporting filtering and pagination. Spam and trash are excluded by default unless explicitly targeted via `label:spam` or `label:trash` in the query.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example             | Description                                                                                                                                                                                                                                                                                                                                                      |
| ------------- | ------- | :------: | ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`       | string  |          | `"is:unread"`       | Filter for threads, using Gmail search query syntax (e.g., 'from:<user@example.com> is:unread'). Supported operators include `from:`, `to:`, `subject:`, `label:`, `is:unread`, `has:attachment`, `after:`, `before:`. Dates must use `YYYY/MM/DD` format; date operators are UTC-based. Exact subject phrases require quotes (e.g., `subject:'meeting notes'`). |
| `user_id`     | string  |          | `"me"`              | The user's email address or 'me' to specify the authenticated Gmail account.                                                                                                                                                                                                                                                                                     |
| `verbose`     | boolean |          | `true`              | If false, returns threads with basic fields (id, snippet, historyId). If true, returns threads with complete message details including headers, body, attachments, and metadata for each message in the thread. Combining `verbose=true` with large `max_results` produces very large responses; keep `max_results` modest when verbose is enabled.              |
| `page_token`  | string  |          | `"abcPageToken123"` | Token from a previous response to retrieve a specific page of results; omit for the first page.                                                                                                                                                                                                                                                                  |
| `max_results` | integer |          | `"10"`              | Maximum number of threads to return. Hard cap is \~500 per call. For full mailbox coverage, loop using `nextPageToken` via `page_token` until absent.                                                                                                                                                                                                            |

***

### Gmail Modify Thread Labels

Integration name: **GMAIL\_MODIFY\_THREAD\_LABELS**

Adds or removes specified existing label IDs from a Gmail thread, affecting all its messages; ensure the thread ID is valid. To modify a single message only, use a message-level tool instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------ | ------ | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`          | string |          | `"user@example.com"` | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `thread_id`        | string |     ✅    | `"18ea7715b619f09c"` | Immutable ID of the thread to modify.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `add_label_ids`    | array  |          | `"STARRED"`          | List of label IDs to add to the thread. Must be valid label IDs that exist in the user's account. System labels use uppercase names (e.g., 'INBOX', 'STARRED', 'IMPORTANT', 'UNREAD', 'SPAM', 'TRASH', 'SENT', 'DRAFT', 'CATEGORY\_PERSONAL', 'CATEGORY\_SOCIAL', 'CATEGORY\_PROMOTIONS', 'CATEGORY\_UPDATES', 'CATEGORY\_FORUMS'). Custom labels use the format 'Label\_N' (e.g., 'Label\_1', 'Label\_42'). Use GMAIL\_LIST\_LABELS to discover available label IDs. Accepts either a list or a JSON-encoded string. Note: If a label appears in both add\_label\_ids and remove\_label\_ids, the add operation takes priority. Use GMAIL\_CREATE\_LABEL first if the label does not yet exist, then supply its returned ID here. |
| `remove_label_ids` | array  |          | `"IMPORTANT"`        | List of label IDs to remove from the thread. Must be valid label IDs that exist in the user's account. System labels use uppercase names (e.g., 'INBOX', 'STARRED', 'IMPORTANT', 'UNREAD', 'SPAM', 'TRASH', 'SENT', 'DRAFT', 'CATEGORY\_PERSONAL', 'CATEGORY\_SOCIAL', 'CATEGORY\_PROMOTIONS', 'CATEGORY\_UPDATES', 'CATEGORY\_FORUMS'). Custom labels use the format 'Label\_N' (e.g., 'Label\_1', 'Label\_42'). Use GMAIL\_LIST\_LABELS to discover available label IDs. Accepts either a list or a JSON-encoded string. Note: Labels that appear in both add\_label\_ids and remove\_label\_ids will be automatically removed from this list (add takes priority).                                                              |

***

### Gmail Move Thread To Trash

Integration name: **GMAIL\_MOVE\_THREAD\_TO\_TRASH**

Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example              | Description                                                                                      |
| ----------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------ |
| `user_id`   | string |          | `"me"`               | The user's email address. The special value 'me' can be used to indicate the authenticated user. |
| `thread_id` | string |     ✅    | `"19c8e0f136c69508"` | Required. The ID of the thread to trash. This moves all messages in the thread to trash.         |

***

### Gmail Move To Trash

Integration name: **GMAIL\_MOVE\_TO\_TRASH**

Moves an existing, non-deleted email message to the trash for the specified user. Trashed messages are recoverable and still count toward storage quota until purged. Prefer this over GMAIL\_BATCH\_DELETE\_MESSAGES when recovery may be needed. For bulk operations, use GMAIL\_BATCH\_MODIFY\_MESSAGES or GMAIL\_BATCH\_DELETE\_MESSAGES instead of repeated calls to this tool.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                                                                                                                                                                                                          |
| ------------ | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`    | string |          | `"user@example.com"` | User's email address or 'me' for the authenticated user.                                                                                                                                                                                                             |
| `message_id` | string |     ✅    | `"1875f42779f726f2"` | Required. The unique identifier of the email message to move to trash. This is a hexadecimal string that can be obtained from listing or fetching emails. Verify the correct message via subject/snippet before trashing to avoid affecting unrelated conversations. |

***

### Gmail Patch Label

Integration name: **GMAIL\_PATCH\_LABEL**

Patches the specified user-created label. System labels (e.g., INBOX, SENT, SPAM) cannot be modified and will be rejected.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                    |
| ----------------------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                    | string |     ✅    | `"LABEL_123"`        | The ID of the label to update.                                                                                                                                                                                                                                                                                                                                                                                 |
| `name`                  | string |          | `"My Updated Label"` | The display name of the label. At least one of 'name', 'messageListVisibility', 'labelListVisibility', or 'color' must be provided. Must be non-empty, unique among user labels, and must not contain `,`, `/`, or `.`.                                                                                                                                                                                        |
| `color`                 | object |          | —                    | The color to assign to the label. Color is only available for labels that have their `type` set to `user`. At least one of 'name', 'messageListVisibility', 'labelListVisibility', or 'color' must be provided. Must include both `backgroundColor` and `textColor` subfields; both values must come from Gmail's predefined color palette — arbitrary hex values or omitting either field causes a 400 error. |
| `userId`                | string |     ✅    | `"me"`               | The user's email address. The special value `me` can be used to indicate the authenticated user.                                                                                                                                                                                                                                                                                                               |
| `labelListVisibility`   | string |          | `"labelShow"`        | The visibility of the label in the label list in the Gmail web interface. At least one of 'name', 'messageListVisibility', 'labelListVisibility', or 'color' must be provided.                                                                                                                                                                                                                                 |
| `messageListVisibility` | string |          | `"show"`             | The visibility of messages with this label in the message list in the Gmail web interface. At least one of 'name', 'messageListVisibility', 'labelListVisibility', or 'color' must be provided.                                                                                                                                                                                                                |

***

### Gmail Patch Send As

Integration name: **GMAIL\_PATCH\_SEND\_AS**

Tool to patch the specified send-as alias for a Gmail user. Use when you need to update properties of an existing send-as email address such as display name, reply-to address, signature, default status, or SMTP configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                              | Description                                                                                                                                                                                                                                                                                                           |
| ------------------ | ------- | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`          | string  |          | `"me"`                               | The user's email address or the special value 'me' to indicate the authenticated user.                                                                                                                                                                                                                                |
| `smtp_msa`         | object  |          | —                                    | Configuration for SMTP relay service.                                                                                                                                                                                                                                                                                 |
| `signature`        | string  |          | `"<p>Best regards,<br>John Doe</p>"` | An optional HTML signature that is included in messages composed with this alias in the Gmail web UI. This signature is added to new emails only.                                                                                                                                                                     |
| `is_default`       | boolean |          | `true`                               | Whether this address is selected as the default 'From:' address in situations such as composing a new message or sending a vacation auto-reply. Setting this to true will make other send-as addresses non-default. Only true can be written to this field.                                                           |
| `display_name`     | string  |          | `"Composio Partnerships"`            | A name that appears in the 'From:' header for mail sent using this alias. For custom 'from' addresses, when empty, Gmail will populate the 'From:' header with the name used for the primary address. If the admin has disabled name updates, requests to update this field for the primary login will silently fail. |
| `send_as_email`    | string  |     ✅    | `"alias@example.com"`                | The send-as alias email address to update. This is the email address that appears in the 'From:' header.                                                                                                                                                                                                              |
| `treat_as_alias`   | boolean |          | `true`                               | Whether Gmail should treat this address as an alias for the user's primary email address. This setting only applies to custom 'from' aliases.                                                                                                                                                                         |
| `reply_to_address` | string  |          | `"noreply@example.com"`              | An optional email address that is included in a 'Reply-To:' header for mail sent using this alias. If empty, Gmail will not generate a 'Reply-To:' header.                                                                                                                                                            |

***

### Gmail Remove Label

Integration name: **GMAIL\_REMOVE\_LABEL**

DEPRECATED: Use GMAIL\_DELETE\_LABEL instead. Permanently deletes a specific, existing user-created Gmail label by its ID for a user; cannot delete system labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example       | Description                                                                                   |
| ---------- | ------ | :------: | ------------- | --------------------------------------------------------------------------------------------- |
| `user_id`  | string |          | `"me"`        | User's email address or 'me' for the authenticated user.                                      |
| `label_id` | string |     ✅    | `"Label_123"` | ID of the user-created label to be permanently deleted; must exist and not be a system label. |

***

### Gmail Reply To Thread

Integration name: **GMAIL\_REPLY\_TO\_THREAD**

Sends a reply within a specific Gmail thread using the original thread's subject; do not provide a custom subject as it will start a new conversation instead of replying in-thread. Requires a valid `thread_id` and at least one of `recipient_email`, `cc`, or `bcc`. Supports attachments via the `attachment` parameter with `name`, `mimetype`, and `s3key` fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------ | ------- | :------: | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `cc`               | array   |          | `["cc.recipient1@example.com","cc.recipient2@example.com"]`                       | Carbon Copy (CC) recipients' email addresses in format '<user@domain.com>'. Each address must include both username and domain separated by '@'. At least one of cc, bcc, or recipient\_email must be provided.                                                                                                                                                                                                                                                                                                                                  |
| `bcc`              | array   |          | `["bcc.recipient@example.com"]`                                                   | Blind Carbon Copy (BCC) recipients' email addresses in format '<user@domain.com>'. Each address must include both username and domain separated by '@'. At least one of cc, bcc, or recipient\_email must be provided.                                                                                                                                                                                                                                                                                                                           |
| `is_html`          | boolean |          | `true`                                                                            | Indicates if `message_body` is HTML; if True, body must be valid HTML, if False, body should not contain HTML tags. Mismatch causes recipients to see raw HTML tags as plain text.                                                                                                                                                                                                                                                                                                                                                               |
| `user_id`          | string  |          | `"me"`                                                                            | Identifier for the user sending the reply; 'me' refers to the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `thread_id`        | string  |     ✅    | `"169eefc8138e68ca"`                                                              | Identifier of the Gmail thread for the reply. Must be a valid hexadecimal string, typically 15-16 characters long (e.g., '169eefc8138e68ca'). Prefixes like 'msg-f:' or 'thread-f:' are automatically stripped. Note: Format validation only checks the ID structure; the thread must also exist and be accessible in your Gmail account. Use GMAIL\_LIST\_THREADS or GMAIL\_FETCH\_EMAILS to retrieve valid thread IDs. Must be a threadId, not a messageId; passing a messageId can cause the reply to fail or start an unintended new thread. |
| `attachment`       | —       |          | `{"name":"report.pdf","s3key":"uploads/abc123.pdf","mimetype":"application/pdf"}` | File(s) to attach to the reply. Accepts a single file or a list of files. Requires `name`, `mimetype`, and `s3key` fields; `s3key` must come from a prior upload/download response. Total message size including attachments must stay under 25 MB (400 badRequest if exceeded); use Drive links for large files.                                                                                                                                                                                                                                |
| `message_body`     | string  |          | `"Dear Sir, Nice talking to you. Yours respectfully, John"`                       | Content of the reply message, either plain text or HTML.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `recipient_email`  | string  |          | `"john@doe.com"`                                                                  | Primary recipient's email address in format '<user@domain.com>'. Must include both username and domain separated by '@'. Required if cc and bcc is not provided, else can be optional. Use extra\_recipients if you want to send to multiple recipients.                                                                                                                                                                                                                                                                                         |
| `extra_recipients` | array   |          | `["jane.doe@example.com","another.person@example.com"]`                           | Additional 'To' recipients' email addresses in format '<user@domain.com>' (not Cc or Bcc). Each address must include both username and domain separated by '@'. Should only be used if recipient\_email is also provided.                                                                                                                                                                                                                                                                                                                        |

***

### Gmail Search People

Integration name: **GMAIL\_SEARCH\_PEOPLE**

Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'Other Contacts'. Only searches the authenticated user's contact directory — people existing solely in message headers won't appear; use GMAIL\_FETCH\_EMAILS for those. Results may be zero or multiple; never auto-select from ambiguous results. Results paginate via next\_page\_token; follow until empty and deduplicate by email. Many records lack emailAddresses or names even when requested — handle missing keys. Directory/organization policies may suppress entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example       | Description                                                                                                                                                                                                                                                                                                                                   |
| ---------------- | ------- | :------: | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`          | string  |     ✅    | —             | Matches contact names, nicknames, email addresses, phone numbers, and organization fields.                                                                                                                                                                                                                                                    |
| `page_size`      | integer |          | —             | Maximum results to return; values >30 are capped to 30 by the API.                                                                                                                                                                                                                                                                            |
| `person_fields`  | string  |          | `"addresses"` | Comma-separated fields to return (e.g., 'names,emailAddresses'). When 'other\_contacts' is true, only 'emailAddresses', 'metadata', 'names', 'phoneNumbers' are allowed. For full field access including 'organizations', set 'other\_contacts' to false.                                                                                     |
| `other_contacts` | boolean |          | —             | When True, searches both saved contacts and 'Other Contacts' (people you've interacted with but not explicitly saved). Note: This restricts person\_fields to only 'emailAddresses', 'metadata', 'names', 'phoneNumbers'. When False, searches only saved contacts but allows all person\_fields including 'organizations', 'addresses', etc. |

***

### Gmail Send Draft

Integration name: **GMAIL\_SEND\_DRAFT**

Sends an existing draft email AS-IS to recipients already defined within the draft. IMPORTANT: This action does NOT accept recipient parameters (to, cc, bcc). The Gmail API's drafts/send endpoint sends drafts to whatever recipients are already set in the draft's To, Cc, and Bcc headers - it cannot add or override recipients. If the draft has no recipients, you must either: 1. Create a new draft with recipients using GMAIL\_CREATE\_EMAIL\_DRAFT, then send it 2. Use GMAIL\_SEND\_EMAIL to send a new email directly with recipients. Send is immediate and irreversible — confirm recipients and content before calling. No scheduling support; trigger at the desired UTC time externally. Gmail enforces \~25 MB message size limit and daily send caps (\~500 recipients/day personal, \~2,000/day Workspace).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ---------- | ------ | :------: | ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`  | string |          | `"me"`                 | The user's email address. The special value `me` can be used to indicate the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `draft_id` | string |     ✅    | `"r99885592323229922"` | The ID of the draft to send. Draft IDs are typically alphanumeric strings (e.g., 'r99885592323229922'). Important: Do not confuse draft\_id with message\_id - they are different identifiers. Use GMAIL\_LIST\_DRAFTS to retrieve valid draft IDs, or GMAIL\_CREATE\_EMAIL\_DRAFT to create a new draft and get its ID. IMPORTANT: The draft MUST already have recipients (To, Cc, or Bcc) set - this action cannot add or override recipients. If the draft has no recipients, first create a new draft with recipients using GMAIL\_CREATE\_EMAIL\_DRAFT, or use GMAIL\_SEND\_EMAIL to send a new email directly. |

***

### Gmail Send Email

Integration name: **GMAIL\_SEND\_EMAIL**

Sends an email via Gmail API using the authenticated user's Google profile display name. Sends immediately and is irreversible — confirm recipients, subject, body, and attachments before calling. At least one of 'to' (or 'recipient\_email'), 'cc', or 'bcc' must be provided. At least one of subject or body must be provided. Requires `is_html=True` if the body contains HTML. All common file types including PNG, JPG, PDF, MP4, etc. are supported as attachments. Gmail API limits total message size to \~25 MB after base64 encoding. To reply in an existing thread, use GMAIL\_REPLY\_TO\_THREAD instead. No scheduled send support; enforce timing externally.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------ | ------- | :------: | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cc`               | array   |          | `["manager@example.com","teamlead@example.com"]`                                  | Carbon Copy (CC) recipients' email addresses. At least one of 'to'/'recipient\_email', 'cc', or 'bcc' must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `bcc`              | array   |          | `["auditor@example.com"]`                                                         | Blind Carbon Copy (BCC) recipients' email addresses. At least one of 'to'/'recipient\_email', 'cc', or 'bcc' must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `body`             | string  |          | `"Hello team, let's discuss the project updates tomorrow."`                       | Email content (plain text or HTML). Either subject or body must be provided for the email to be sent. If HTML, `is_html` must be `True`.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `is_html`          | boolean |          | —                                                                                 | Set to `True` if the email body contains HTML tags.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `subject`          | string  |          | `"Project Update Meeting"`                                                        | Subject line of the email. Either subject or body must be provided for the email to be sent.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `user_id`          | string  |          | `"user@example.com"`                                                              | User's email address; the literal 'me' refers to the authenticated user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `attachment`       | —       |          | `{"name":"report.pdf","s3key":"uploads/abc123.pdf","mimetype":"application/pdf"}` | File(s) to attach. Accepts a single file or a list of files. IMPORTANT: mimetype MUST contain a '/' separator - single words like 'pdf' or 'new' are invalid. Gmail API limits: total message size must not exceed \~25 MB after base64 encoding. Omit or set to null for no attachment. Empty attachment objects (with all fields empty/whitespace) are treated as no attachment. Must include valid name, mimetype (e.g., 'application/pdf'), and s3key obtained from a prior upload/download response — local paths or guessed keys cause 404 HeadObject errors. |
| `from_email`       | string  |          | `"alias@example.com"`                                                             | Sender email address for the 'From' header. Use this to send from a verified alias configured in Gmail's 'Send mail as' settings. When not provided, the authenticated user's primary email address is used. The alias must be verified in Gmail settings before use.                                                                                                                                                                                                                                                                                               |
| `recipient_email`  | string  |          | `"john@doe.com"`                                                                  | Primary recipient's email address. You can also use 'to' as an alias for this parameter. At least one of 'to'/'recipient\_email', 'cc', or 'bcc' must be provided. Use extra\_recipients if you want to send to multiple recipients. Use the special value 'me' to send to your own authenticated email address. Must be a full user\@domain address; 'me' is not valid here and will fail.                                                                                                                                                                         |
| `extra_recipients` | array   |          | `["jane.doe@example.com","support@example.com"]`                                  | Additional 'To' recipients' email addresses (not Cc or Bcc). Should only be used if recipient\_email is also provided.                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### Gmail Settings Get Imap

Integration name: **GMAIL\_SETTINGS\_GET\_IMAP**

Retrieves the IMAP settings for a Gmail user account, including whether IMAP is enabled, auto-expunge behavior, expunge behavior, and maximum folder size.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                            |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The user's email address or the special value 'me' to indicate the authenticated user. |

***

### Gmail Settings Get Pop

Integration name: **GMAIL\_SETTINGS\_GET\_POP**

Tool to retrieve POP settings for a Gmail account. Use when you need to check the current POP configuration including access window and message disposition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's email address. The special value 'me' can be used to indicate the authenticated user. |

***

### Gmail Settings Send As Get

Integration name: **GMAIL\_SETTINGS\_SEND\_AS\_GET**

Tool to retrieve a specific send-as alias configuration for a Gmail user. Use when you need to get details about a send-as email address including display name, signature, SMTP settings, and verification status. Fails with HTTP 404 if the specified address is not a member of the send-as collection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example               | Description                                                                                                                        |
| --------------- | ------ | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`       | string |          | `"me"`                | The email address of the Gmail user whose send-as alias to retrieve, or the special value 'me' to indicate the authenticated user. |
| `send_as_email` | string |     ✅    | `"alias@example.com"` | The send-as alias email address to retrieve. This is the email address that appears in the 'From:' header.                         |

***

### Gmail Stop Watch

Integration name: **GMAIL\_STOP\_WATCH**

Tool to stop receiving push notifications for a Gmail mailbox. Use when you need to disable watch notifications previously set up via the watch endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's email address. The special value 'me' can be used to indicate the authenticated user. |

***

### Gmail Untrash Message

Integration name: **GMAIL\_UNTRASH\_MESSAGE**

Tool to remove a message from trash in Gmail. Use when you need to restore a previously trashed email message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                                                                                                   |
| ------------ | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`    | string |          | `"user@example.com"` | User's email address or 'me' for the authenticated user.                                                                                                      |
| `message_id` | string |     ✅    | `"1875f42779f726f2"` | Required. The unique identifier of the email message to remove from trash. This is a hexadecimal string that can be obtained from listing or fetching emails. |

***

### Gmail Untrash Thread

Integration name: **GMAIL\_UNTRASH\_THREAD**

Tool to remove a thread from trash in Gmail. Use when you need to restore a deleted thread and its messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example              | Description                                                                                      |
| ----------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------ |
| `user_id`   | string |          | `"me"`               | The user's email address. The special value 'me' can be used to indicate the authenticated user. |
| `thread_id` | string |     ✅    | `"19c8e0e93a7aa8ba"` | The ID of the thread to remove from trash.                                                       |

***

### Gmail Update Draft

Integration name: **GMAIL\_UPDATE\_DRAFT**

Updates (replaces) an existing Gmail draft's content in-place by draft ID. This action replaces the entire draft content with the new message - it does not patch individual fields. All fields are optional; if not provided, you should provide complete draft content to avoid data loss.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                           | Description                                                                                                                                                                                                                |
| ------------------ | ------- | :------: | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `cc`               | array   |          | `["cc.recipient1@example.com","CC User <cc.recipient2@example.com>"]`             | Carbon Copy (CC) recipients' email addresses. Each must be a valid email address or display name format.                                                                                                                   |
| `bcc`              | array   |          | `["bcc.recipient@example.com","BCC User <bcc.user@example.com>"]`                 | Blind Carbon Copy (BCC) recipients' email addresses. Each must be a valid email address or display name format.                                                                                                            |
| `body`             | string  |          | `"Hello Team,\n\nPlease find the attached report.\n\nBest regards"`               | Email body content (plain text or HTML); is\_html must be True if HTML. If not provided, previous body is preserved. Can also be provided as 'message\_body'.                                                              |
| `is_html`          | boolean |          | `true`                                                                            | <p>Set to True if body is already formatted HTML. When False, plain text newlines are auto-converted to<br>tags.</p>                                                                                                       |
| `subject`          | string  |          | `"Project Update Q3"`                                                             | Email subject line. If not provided, previous subject is preserved.                                                                                                                                                        |
| `user_id`          | string  |          | `"me"`                                                                            | User's email address or 'me' for the authenticated user.                                                                                                                                                                   |
| `draft_id`         | string  |     ✅    | `"r-8388446164079304564"`                                                         | The ID of the draft to update. Must be a valid draft ID from GMAIL\_LIST\_DRAFTS or GMAIL\_CREATE\_EMAIL\_DRAFT.                                                                                                           |
| `thread_id`        | string  |          | `"17f45ec49a9c3f1b"`                                                              | ID of an existing Gmail thread. If provided, the draft will be part of this thread.                                                                                                                                        |
| `attachment`       | —       |          | `{"name":"report.pdf","s3key":"uploads/abc123.pdf","mimetype":"application/pdf"}` | File(s) to attach to the draft. Accepts a single file or a list of files. Replaces any existing attachments.                                                                                                               |
| `recipient_email`  | string  |          | `"john.doe@example.com"`                                                          | Primary recipient's email address. Must be a valid email address (e.g., '<user@example.com>') or display name format (e.g., 'John Doe <user@example.com>'). Optional - if not provided, previous recipients are preserved. |
| `extra_recipients` | array   |          | `["jane.doe@example.com","Jane Doe <jane.doe@example.com>"]`                      | Additional 'To' recipients' email addresses. Each must be a valid email address or display name format. Should only be used if recipient\_email is also provided.                                                          |

***

### Gmail Update Imap Settings

Integration name: **GMAIL\_UPDATE\_IMAP\_SETTINGS**

Tool to update IMAP settings for a Gmail account. Use when you need to modify IMAP configuration such as enabling/disabling IMAP, setting auto-expunge behavior, or configuring folder size limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                               |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enabled`         | boolean |          | —       | Whether IMAP is enabled for the account.                                                                                                                                                                                                                                                                                                                                                  |
| `user_id`         | string  |          | `"me"`  | The user's email address. The special value 'me' can be used to indicate the authenticated user.                                                                                                                                                                                                                                                                                          |
| `autoExpunge`     | boolean |          | —       | If this value is true, Gmail will immediately expunge a message when it is marked as deleted in IMAP. Otherwise, Gmail will wait for an update from the client before expunging messages marked as deleted.                                                                                                                                                                               |
| `maxFolderSize`   | integer |          | —       | An optional limit on the number of messages that an IMAP folder may contain. Legal values are 0, 1000, 2000, 5000 or 10000. A value of zero is interpreted to mean that there is no limit.                                                                                                                                                                                                |
| `expungeBehavior` | string  |          | —       | The action that will be executed on a message when it is marked as deleted and expunged from the last visible IMAP folder. Possible values: 'expungeBehaviorUnspecified' (Unspecified behavior), 'archive' (Archive messages marked as deleted), 'trash' (Move messages marked as deleted to the trash), 'deleteForever' (Immediately and permanently delete messages marked as deleted). |

***

### Gmail Update Label

Integration name: **GMAIL\_UPDATE\_LABEL**

Tool to update the properties of an existing Gmail label. Use when you need to modify label name, visibility settings, or color.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                | Description                                                                                      |
| ----------------------- | ------ | :------: | ---------------------- | ------------------------------------------------------------------------------------------------ |
| `id`                    | string |     ✅    | `"Label_10"`           | The ID of the label to update.                                                                   |
| `name`                  | string |          | `"Updated Label Name"` | The display name of the label.                                                                   |
| `color`                 | object |          | —                      | Color settings for the label. Both backgroundColor and textColor must be provided together.      |
| `userId`                | string |          | `"me"`                 | The user's email address. The special value `me` can be used to indicate the authenticated user. |
| `labelListVisibility`   | string |          | `"labelShow"`          | Visibility of the label in the label list (Gmail sidebar).                                       |
| `messageListVisibility` | string |          | `"show"`               | Visibility of messages with this label in the message list.                                      |

***

### Gmail Update Language Settings

Integration name: **GMAIL\_UPDATE\_LANGUAGE\_SETTINGS**

Tool to update the language settings for a Gmail user. Use when you need to change the display language preference for the authenticated user or a specific Gmail account. The returned displayLanguage may differ from the requested value if Gmail selects a close variant.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`          | string |          | `"me"`  | The email address of the Gmail user whose language settings are to be updated, or the special value 'me' to indicate the currently authenticated user.                                                                                                                                                                                                                                                                                                                    |
| `display_language` | string |     ✅    | `"en"`  | The language to display Gmail in, formatted as an RFC 3066 Language Tag (e.g., 'en-GB' for British English, 'fr' for French, 'ja' for Japanese, 'es' for Spanish, 'de' for German, 'en' for English). The set of languages supported by Gmail evolves over time. Note: Gmail may save a close variant if the requested language is not directly supported. For example, if you request a regional variant that's not available, Gmail may save the base language instead. |

***

### Gmail Update Pop Settings

Integration name: **GMAIL\_UPDATE\_POP\_SETTINGS**

Tool to update POP settings for a Gmail account. Use when you need to configure POP access window or message disposition behavior.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example          | Description                                                                                      |
| --------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------ |
| `user_id`       | string |          | `"me"`           | The user's email address. The special value 'me' can be used to indicate the authenticated user. |
| `disposition`   | string |          | `"leaveInInbox"` | The action that will be executed on a message after it has been fetched via POP.                 |
| `access_window` | string |          | `"allMail"`      | The range of messages which are accessible via POP.                                              |

***

### Gmail Update Send As

Integration name: **GMAIL\_UPDATE\_SEND\_AS**

Tool to update a send-as alias for a Gmail user. Use when you need to modify display name, signature, reply-to address, or SMTP settings for a send-as email address. Gmail sanitizes HTML signatures before saving. Addresses other than the primary can only be updated by service accounts with domain-wide authority.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example               | Description                                                                                                                                                                              |
| ------------------ | ------- | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`          | string  |          | `"me"`                | The email address of the Gmail user whose send-as alias to update, or the special value 'me' to indicate the authenticated user.                                                         |
| `smtp_msa`         | object  |          | —                     | SMTP relay configuration for the send-as alias.                                                                                                                                          |
| `signature`        | string  |          | —                     | Optional HTML signature for messages composed with this alias in Gmail web UI. Gmail sanitizes HTML before saving. Only added to new emails.                                             |
| `is_default`       | boolean |          | —                     | Set to true to make this the default 'From:' address for composing messages and vacation auto-replies. Setting true makes the previous default false. Only legal writable value is true. |
| `display_name`     | string  |          | —                     | Name to appear in 'From:' header. For custom from addresses, Gmail populates with primary account name if empty. Admin restrictions may silently fail updates to primary login name.     |
| `send_as_email`    | string  |     ✅    | `"alias@example.com"` | The send-as alias email address to update. This is the email address that appears in the 'From:' header.                                                                                 |
| `treat_as_alias`   | boolean |          | —                     | Whether Gmail treats this address as an alias for the user's primary email. Only applies to custom from aliases.                                                                         |
| `reply_to_address` | string  |          | —                     | Optional email address for 'Reply-To:' header. Gmail omits header if empty.                                                                                                              |

***

### Gmail Update User Attributes Values

Integration name: **GMAIL\_UPDATE\_USER\_ATTRIBUTES\_VALUES**

Update user attribute values for a resource. Use this action to set or update custom attributes for a user within an organization or project. When setting a value for an attribute key that also exists in SAML, the Sanity value will take precedence and shadow the SAML value.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                           | Description                                                                                                                                                                              |
| -------------- | ------ | :------: | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`       | string |     ✅    | `"test-user-456"`                                 | The unique identifier of the user whose attributes to update.                                                                                                                            |
| `attributes`   | object |     ✅    | `{"role":"developer","department":"engineering"}` | A dictionary of attribute key-value pairs to set for the user. Values can be strings, numbers, booleans, arrays, or nested objects. These will shadow any SAML values for the same keys. |
| `resourceId`   | string |     ✅    | `"test-org-123"`                                  | The unique identifier of the resource. For organizations, this is the organization ID.                                                                                                   |
| `resourceType` | string |     ✅    | `"organization"`                                  | The type of resource that scopes the user attributes (e.g., 'organization' or 'project').                                                                                                |

***

### Gmail Update Vacation Settings

Integration name: **GMAIL\_UPDATE\_VACATION\_SETTINGS**

Tool to update vacation responder settings for a Gmail user. Use when you need to configure out-of-office auto-replies.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                                                                                                                                                             |
| ----------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`                | string  |          | `"me"`  | The user's email address. The special value 'me' can be used to indicate the authenticated user.                                                                                                                                                        |
| `endTime`               | string  |          | —       | An optional end time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives before the end time. If both startTime and endTime are specified, startTime must precede endTime.    |
| `startTime`             | string  |          | —       | An optional start time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives after the start time. If both startTime and endTime are specified, startTime must precede endTime. |
| `enableAutoReply`       | boolean |          | —       | Flag that controls whether Gmail automatically replies to messages.                                                                                                                                                                                     |
| `responseSubject`       | string  |          | —       | Optional text to prepend to the subject line in vacation responses. In order to enable auto-replies, either the response subject or the response body must be nonempty.                                                                                 |
| `responseBodyHtml`      | string  |          | —       | Response body in HTML format. Gmail will sanitize the HTML before storing it. If both response\_body\_plain\_text and response\_body\_html are specified, response\_body\_html will be used.                                                            |
| `restrictToDomain`      | boolean |          | —       | Flag that determines whether responses are sent to recipients who are outside of the user's domain. This feature is only available for Google Workspace users.                                                                                          |
| `restrictToContacts`    | boolean |          | —       | Flag that determines whether responses are sent to recipients who are not in the user's list of contacts.                                                                                                                                               |
| `responseBodyPlainText` | string  |          | —       | Response body in plain text format. If both response\_body\_plain\_text and response\_body\_html are specified, response\_body\_html will be used.                                                                                                      |


# Google Ads

Your Toolhouse AI Worker can connect to Google Ads using 9 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](https://toolhouse.app/auth-connections?authkit_slugs=googleads).

## Tools (9)

### `Google Ads Add Or Remove To Customer List`

Integration name: **GOOGLEADS\_ADD\_OR\_REMOVE\_TO\_CUSTOMER\_LIST**

AddOrRemoveToCustomerList Tool will add a contact to a customer list in Google Ads. Note: It takes 6 to 12 hours for changes to be reflected in the customer list. Email addresses must comply with Google Ads policies and applicable privacy/consent laws.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                                                                              |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `emails`        | array  |     ✅    | —       | Array of emails of the contacts to be added to the customer list. Emails must be valid, normalized strings (lowercase, trimmed); malformed addresses reduce match rates. |
| `operation`     | string |          | —       | Operation to be performed on the customer list. Either create or remove.                                                                                                 |
| `resource_name` | string |     ✅    | —       | Resource name of the customer list. For example: customers/1234567890/userLists/1234567890                                                                               |

***

### `Google Ads Create Customer List`

Integration name: **GOOGLEADS\_CREATE\_CUSTOMER\_LIST**

Creates a customer list in Google Ads. Note: Requires an authenticated Google Ads connection with customer\_id configured. Email-based lists must comply with Google Ads policies and applicable privacy/consent laws. Membership updates can take many hours to propagate; targeting eligibility is not immediate after creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                       |
| ------------- | ------ | :------: | ------- | --------------------------------- |
| `name`        | string |     ✅    | —       | Name of the customer list.        |
| `description` | string |          | —       | Description of the customer list. |

***

### `Google Ads Get Campaign By Id`

Integration name: **GOOGLEADS\_GET\_CAMPAIGN\_BY\_ID**

GetCampaignById Tool returns details of a campaign in Google Ads. Requires an active Google Ads OAuth connection with the correct customer\_id configured; missing or mismatched customer\_id will cause empty results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                |
| --------- | ------ | :------: | ------- | ------------------------------------------ |
| `id`      | string |     ✅    | —       | id of the campaign to search on GoogleAds. |

***

### `Google Ads Get Campaign By Name`

Integration name: **GOOGLEADS\_GET\_CAMPAIGN\_BY\_NAME**

Queries Google Ads via SQL to retrieve a campaign by its exact name. Requires an active Google Ads connection with valid customer\_id and appropriate OAuth scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                      |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`    | string |     ✅    | —       | name of the campaign to search on GoogleAds. Matched using exact SQL equality; paused or inactive campaigns may return no results — an empty result means no matching active campaign was found. |

***

### `Google Ads Get Customer Lists`

Integration name: **GOOGLEADS\_GET\_CUSTOMER\_LISTS**

GetCustomerLists Tool lists all customer lists (audience/remarketing lists) in Google Ads. These are user segments for targeting, not Google Ads accounts — list IDs are distinct from account IDs. When multiple lists share similar names, review all returned results before selecting one for downstream operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Google Ads List Accessible Customers`

Integration name: **GOOGLEADS\_LIST\_ACCESSIBLE\_CUSTOMERS**

ListAccessibleCustomers retrieves all Google Ads customer accounts accessible to the authenticated user. Returns resource names of customers (e.g., customers/1234567890) that can be accessed with the current OAuth credentials. Use this action to discover which customer IDs are available before making other API calls. Use this action when you need to determine which customer accounts the authenticated user has access to, or when you want to populate a dropdown of available accounts for the user to select from.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Google Ads Mutate Ad Groups`

Integration name: **GOOGLEADS\_MUTATE\_AD\_GROUPS**

Create, update, or remove ad groups within Google Ads campaigns. Supports batch operations with multiple ad group changes in a single request. Use when you need to manage ad groups programmatically, such as creating new ad groups for campaigns, updating ad group settings or status, or removing ad groups that are no longer needed. This action is irreversible for remove operations — deleted ad groups cannot be recovered once removed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                        |
| ----------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------- |
| `operations`      | array   |     ✅    | —       | List of ad group operations (create, update, or remove). At least one operation is required.       |
| `validate_only`   | boolean |          | —       | If true, validates the request without executing. Useful for testing before making actual changes. |
| `partial_failure` | boolean |          | —       | If true, valid operations succeed even if other operations fail. Defaults to false.                |

***

### `Google Ads Mutate Campaigns`

Integration name: **GOOGLEADS\_MUTATE\_CAMPAIGNS**

Create, update, or remove Google Ads campaigns in batch. Supports multiple operations (create, update, remove) in a single request. Use when managing campaign lifecycle, applying bulk changes, or automating campaign management workflows. This action is irreversible for remove operations — deleted campaigns cannot be recovered. Plan accordingly and consider using validate\_only=true to test changes before applying them.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example | Description                                                                                                                  |
| ----------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `operations`            | array   |     ✅    | —       | List of campaign operations to perform. Each operation can be create, update, or remove. At least one operation is required. |
| `validate_only`         | boolean |          | —       | If true, validates the request without executing. Useful for testing before making actual changes.                           |
| `partial_failure`       | boolean |          | —       | If true, valid operations succeed even if others fail. Partial failures will be reported in the response.                    |
| `response_content_type` | string  |          | —       | Whether to return full resource or just resource name. Options: 'RESOURCE\_NAME\_ONLY' or 'MUTABLE\_RESOURCE'.               |

***

### `Google Ads Search Stream Gaql`

Integration name: **GOOGLEADS\_SEARCH\_STREAM\_GAQL**

Execute a Google Ads Query Language (GAQL) query and stream all results in a single response. This method is more efficient than paginated search for bulk data retrieval of campaigns, ad groups, and performance metrics (clicks, impressions, cost). Use this action when you need the entire result set without pagination. Results are returned as a single response containing all matching rows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                                                                                                | Description                                                                                                                                                                                                          |
| --------------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`               | string |     ✅    | `"SELECT campaign.name, campaign.id, metrics.clicks, metrics.impressions, metrics.cost_micros FROM campaign LIMIT 50"` | The Google Ads Query Language (GAQL) query string. Must follow SELECT ... FROM ... WHERE ... format. Example: SELECT campaign.name, campaign.id, metrics.impressions FROM campaign WHERE campaign.status = 'ENABLED' |
| `summary_row_setting` | string |          | `"UNSPECIFIED"`                                                                                                        | Whether to include a summary row with aggregated metrics. Use 'UNSPECIFIED' for default, 'DONOT\_POST' to skip summary, or 'GENERATE' to include it.                                                                 |


# Google Analytics

Your Toolhouse AI Worker can connect to Google Analytics using 69 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](https://toolhouse.app/auth-connections?authkit_slugs=google_analytics).

## Tools (69)

### `Google Analytics Archive Custom Dimension`

Integration name: **GOOGLE\_ANALYTICS\_ARCHIVE\_CUSTOM\_DIMENSION**

Tool to archive a CustomDimension on a property. Use when you need to remove a custom dimension from active use without permanently deleting it. Archived dimensions cannot be used in new reports.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| --------- | ------ | :------: | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/customDimensions/13661259421"` | Required. The resource name of the CustomDimension to archive. Must be in the exact format: properties/{property\_id}/customDimensions/{dimension\_id} where property\_id and dimension\_id are numeric identifiers. IMPORTANT: Must start with 'properties/' prefix, contain '/customDimensions/' in the middle, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273/customDimensions/13661259421'. Invalid examples: '489591273/13661259421' (missing prefix), 'properties/489591273/customDimensions/13661259421/' (trailing slash), 'properties/489591273/customDimensions/13661259421/extra' (extra segments) |

***

### `Google Analytics Batch Run Pivot Reports`

Integration name: **GOOGLE\_ANALYTICS\_BATCH\_RUN\_PIVOT\_REPORTS**

Tool to return multiple pivot reports in a batch for a GA4 property. Use when you need to fetch multiple pivot table reports with multi-dimensional analysis in a single request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------- | ------ | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `property` | string |     ✅    | `"properties/123456789"` | Required. The GA4 property resource name. Format: properties/{property\_id}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `requests` | array  |     ✅    | —                        | Required. Up to 5 individual RunPivotReportRequest objects. Each request can have dimensions, metrics, dateRanges, pivots, dimensionFilter, metricFilter, currencyCode, cohortSpec, keepEmptyRows, returnPropertyQuota, and comparisons fields. CRITICAL CONSTRAINT: Every dimension defined in 'dimensions' MUST be used in at least one of: pivots (fieldNames), dimensionFilter, or orderBys. Dimensions not used anywhere will cause a 400 error. The only exception is 'dateRange' dimensions. Additionally, all fieldNames in pivots must reference dimensions defined in the request's 'dimensions' array, and no two pivots can share the same dimension. |

***

### `Google Analytics Batch Run Reports`

Integration name: **GOOGLE\_ANALYTICS\_BATCH\_RUN\_REPORTS**

Tool to return multiple analytics data reports in a batch. Use when you need to fetch multiple reports for one GA4 property in a single request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `property`          | string |     ✅    | `"properties/123456789"`                                                                                                                    | Required. The property resource name. Format: properties/{property\_id}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `requests`          | array  |     ✅    | `[{"metrics":[{"name":"activeUsers"}],"dateRanges":[{"endDate":"2024-01-31","startDate":"2024-01-01"}],"dimensions":[{"name":"country"}]}]` | Required. Up to 5 individual RunReportRequest objects (minimum 1, maximum 5). CRITICAL: Non-cohort requests MUST contain 'dateRanges' (list of {startDate, endDate}); cohort requests (containing 'cohortSpec') must NOT include 'dateRanges'. Key fields per request: dateRanges, dimensions (list of {name}), metrics (list of {name}), dimensionFilter/metricFilter (FilterExpression: use andGroup/orGroup/notExpression/filter at top level), cohortSpec, offset, limit, orderBys, keepEmptyRows. NOTE: Do NOT include 'pivots' field - use batchRunPivotReports action for pivot reports. |
| `unwrapped_filters` | array  |          | —                                                                                                                                           | Internal field to track which filters were unwrapped during validation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

***

### `Google Analytics Check Compatibility`

Integration name: **GOOGLE\_ANALYTICS\_CHECK\_COMPATIBILITY**

Tool to list dimensions and metrics compatible with a GA4 report request. Use when you need to validate compatibility of chosen dimensions or metrics before running a report.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example             | Description                                                                                                                                                                                                                               |
| --------------------- | ------ | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `metrics`             | array  |          | —                   | Optional. List of metrics to check compatibility for. Maximum of 10 metrics allowed per request.                                                                                                                                          |
| `property`            | string |     ✅    | `"properties/1234"` | Required. GA4 property resource name. Format: properties/{property\_id}.                                                                                                                                                                  |
| `dimensions`          | array  |          | —                   | Optional. List of dimensions to check compatibility for.                                                                                                                                                                                  |
| `metricFilter`        | object |          | —                   | Optional. A FilterExpression for metrics; must follow GA4 FilterExpression JSON schema.                                                                                                                                                   |
| `dimensionFilter`     | object |          | —                   | Optional. A FilterExpression for dimensions; must follow GA4 FilterExpression JSON schema.                                                                                                                                                |
| `compatibilityFilter` | string |          | —                   | Compatibility status for dimensions or metrics per Google Analytics Data API v1beta. Valid values: COMPATIBILITY\_UNSPECIFIED, COMPATIBLE, INCOMPATIBLE. Note: Values like 'REPORT\_COMPATIBLE' are NOT valid - use 'COMPATIBLE' instead. |

***

### `Google Analytics Create Audience Export`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_AUDIENCE\_EXPORT**

Tool to create an audience export for Google Analytics. Use when you need to export a snapshot of users in an audience at a specific point in time. This initiates a long-running asynchronous request that returns an operation resource name immediately. The export begins in CREATING state with rowCount=0; the operation must complete before export data is accessible for querying.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                        | Description                                                                                                            |
| ------------ | ------ | :------: | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `parent`     | string |     ✅    | `"properties/489591273"`                       | Parent property resource name where the audience export will be created. Format: properties/{property\_id}.            |
| `audience`   | string |     ✅    | `"properties/489591273/audiences/11228260226"` | Audience resource name identifying the audience to export. Format: properties/{property\_id}/audiences/{audience\_id}. |
| `dimensions` | array  |          | —                                              | Optional list of dimensions requested and displayed in the export. Each dimension is specified by dimensionName.       |

***

### `Google Analytics Create Audience List`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_AUDIENCE\_LIST**

Tool to create an audience list for later retrieval by initiating a long-running asynchronous request. Use when you need to create a snapshot of users currently in an audience. The method returns quickly with an Operation resource while processing occurs in the background.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------------------- | ------ | :------: | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`              | string |     ✅    | `"properties/489591273"`                       | Required. The parent property resource name. Format: 'properties/{property\_id}'. Example: 'properties/489591273'                                                                                                                                                                                                                                                                                                        |
| `audience`            | string |     ✅    | `"properties/489591273/audiences/11228260226"` | Required. The audience resource name identifying the audience being listed. Format: 'properties/{property\_id}/audiences/{audience\_id}'. Example: 'properties/489591273/audiences/11228260226'                                                                                                                                                                                                                          |
| `dimensions`          | array  |     ✅    | —                                              | Required. The dimensions requested and displayed in the query response. At least one dimension is required. Each entry must be an object with a `dimensionName` key (e.g., `[{'dimensionName': 'deviceId'}]`). Only dimensions supported for audience lists on that property are valid; unsupported values return a 400 INVALID\_ARGUMENT error. Use GOOGLE\_ANALYTICS\_GET\_METADATA to retrieve valid dimension names. |
| `webhookNotification` | object |          | —                                              | Webhook notification configuration for audience list operation updates.                                                                                                                                                                                                                                                                                                                                                  |

***

### `Google Analytics Create Custom Dimension`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_CUSTOM\_DIMENSION**

Tool to create a CustomDimension for a Google Analytics property. Use when you need to add a new custom dimension to track specific user properties, event parameters, or eCommerce item parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`                      | string  |     ✅    | `"EVENT"`                                   | Required. Immutable. The scope of this dimension. Must be one of: EVENT, USER, or ITEM                                                                                                                                                                                                                                                                                                                                                                                    |
| `parent`                     | string  |     ✅    | `"properties/489591273"`                    | Required. The property in which to create the CustomDimension. Format: properties/{property\_id}                                                                                                                                                                                                                                                                                                                                                                          |
| `description`                | string  |          | `"Custom dimension to track user segments"` | Optional. Description for this custom dimension. Max length of 150 characters                                                                                                                                                                                                                                                                                                                                                                                             |
| `displayName`                | string  |     ✅    | `"User Segment"`                            | Required. Display name for this custom dimension as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter                                                                                                                                                                                                                                                                                                 |
| `parameterName`              | string  |     ✅    | `"user_segment"`                            | Required. Immutable. Tagging parameter name for this custom dimension. For user-scoped dimensions, this is the user property name. For event-scoped dimensions, this is the event parameter name. For item-scoped dimensions, this is the parameter name in the eCommerce items array. May only contain alphanumeric and underscore characters, starting with a letter. Max length of 24 characters for user-scoped dimensions, 40 characters for event-scoped dimensions |
| `disallowAdsPersonalization` | boolean |          | —                                           | Optional. If set to true, sets this dimension as NPA and excludes it from ads personalization. This is currently only supported by user-scoped custom dimensions                                                                                                                                                                                                                                                                                                          |

***

### `Google Analytics Create Custom Metric`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_CUSTOM\_METRIC**

Tool to create a custom metric in Google Analytics. Use when you need to define a new custom metric for tracking specific event parameters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                | Description                                                                                                                                                                                                                                                                |
| ---------------------- | ------ | :------: | -------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scope`                | string |     ✅    | `"EVENT"`                              | Required. Immutable. The scope of this custom metric.                                                                                                                                                                                                                      |
| `parent`               | string |     ✅    | `"properties/489591273"`               | Required. The property where the custom metric will be created. Format: properties/{property\_id}                                                                                                                                                                          |
| `description`          | string |          | `"Test custom metric created via API"` | Optional. Description for this custom metric. Max length of 150 characters.                                                                                                                                                                                                |
| `displayName`          | string |     ✅    | `"Test Custom Metric"`                 | Required. Display name for this custom metric as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter.                                                                                                    |
| `parameterName`        | string |     ✅    | `"test_custom_metric"`                 | Required. Immutable. Tagging name for this custom metric. If this is an event-scoped metric, then this is the event parameter name. May only contain alphanumeric and underscore characters, starting with a letter. Max length of 40 characters for event-scoped metrics. |
| `measurementUnit`      | string |     ✅    | `"STANDARD"`                           | Required. The type for the custom metric's value.                                                                                                                                                                                                                          |
| `restrictedMetricType` | array  |          | —                                      | Optional. Types of restricted data that this metric may contain. Required for metrics with CURRENCY measurement unit. Must be empty for metrics with a non-CURRENCY measurement unit.                                                                                      |

***

### `Google Analytics Create Expanded Data Set`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_EXPANDED\_DATA\_SET**

Tool to create an expanded data set for a property. Use when you need to combine specific dimensions and metrics into a custom dataset after property creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                  | Description                                                    |
| ----------------- | ------ | :------: | ------------------------ | -------------------------------------------------------------- |
| `parent`          | string |     ✅    | `"properties/123456789"` | Parent property resource name. Format: properties/{propertyId} |
| `expandedDataSet` | object |     ✅    | —                        | Definition of the ExpandedDataSet to create.                   |

***

### `Google Analytics Create Recurring Audience List`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_RECURRING\_AUDIENCE\_LIST**

Tool to create a recurring audience list that automatically generates new audience lists daily based on the latest data. Use when you need to automate audience list creation and reduce quota token consumption.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                        | Description                                                                                                                         |
| --------------------- | ------- | :------: | ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `parent`              | string  |     ✅    | `"properties/489591273"`                       | Parent property resource name where the recurring audience list will be created. Format: properties/{property\_id}.                 |
| `audience`            | string  |     ✅    | `"properties/489591273/audiences/11228260226"` | Audience resource name identifying the audience being listed. Format: properties/{property\_id}/audiences/{audience\_id}.           |
| `dimensions`          | array   |     ✅    | —                                              | List of dimensions requested and displayed in the audience list response.                                                           |
| `activeDaysRemaining` | integer |          | —                                              | Counter decreasing daily. Defaults to 180 days for Analytics 360 properties (max 365) and 14 days for standard properties (max 30). |
| `webhookNotification` | object  |          | —                                              | Configuration for receiving webhook notifications about recurring audience list status.                                             |

***

### `Google Analytics Create Report Task`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_REPORT\_TASK**

Tool to create a report task as a long-running asynchronous request for customized Google Analytics event data reports. Use when you need to generate large or complex reports that process asynchronously.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                  | Description                                                                                                                           |
| ------------------ | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`           | string |     ✅    | `"properties/489591273"` | Required. Property identifier in format 'properties/{propertyId}'. The Google Analytics property for which to create the report task. |
| `reportDefinition` | object |          | —                        | Defines how the report executes.                                                                                                      |

***

### `Google Analytics Create Rollup Property`

Integration name: **GOOGLE\_ANALYTICS\_CREATE\_ROLLUP\_PROPERTY**

Tool to create a roll-up property. Use when consolidating multiple GA4 properties into one aggregated view.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                  |
| ------------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------- |
| `account`          | string |     ✅    | —       | Required. Parent account resource. Format: accounts/{account\_id}                            |
| `timeZone`         | string |     ✅    | —       | Required. IANA time zone for the roll-up property.                                           |
| `displayName`      | string |     ✅    | —       | Required. Display name for the roll-up property.                                             |
| `sourceProperties` | array  |          | —       | Optional. List of source property resource names to link. Format: properties/{property\_id}. |

***

### `Google Analytics Get Account`

Integration name: **GOOGLE\_ANALYTICS\_GET\_ACCOUNT**

Tool to retrieve a single Account by its resource name. Use when you need detailed account info after confirming the account resource name (e.g., accounts/100).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| --------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"accounts/100"` | Required. The resource name of the Account to retrieve. Must be in the exact format: accounts/{account\_id} where account\_id is a numeric identifier. IMPORTANT: Must start with 'accounts/' prefix, contain no forward slashes in the account\_id, have no trailing slashes, and no additional path segments. Valid example: 'accounts/100'. Invalid examples: '100' (missing prefix), 'accounts/100/' (trailing slash), 'accounts/100/extra' (extra segments) |

***

### `Google Analytics Get Attribution Settings`

Integration name: **GOOGLE\_ANALYTICS\_GET\_ATTRIBUTION\_SETTINGS**

Tool to retrieve attribution configuration for a Google Analytics property. Use when you need to check attribution models, lookback windows, and conversion export settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/attributionSettings"` | Required. The resource name of the attribution settings to retrieve. Must be in the exact format: properties/{property\_id}/attributionSettings where property\_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property\_id, have no trailing slashes, and must end with '/attributionSettings'. Valid example: 'properties/489591273/attributionSettings'. Invalid examples: '489591273' (missing prefix), 'properties/489591273' (missing suffix), 'properties/489591273/attributionSettings/' (trailing slash) |

***

### `Google Analytics Get Audience`

Integration name: **GOOGLE\_ANALYTICS\_GET\_AUDIENCE**

Tool to retrieve a single Audience configuration from a Google Analytics property. Use when you need detailed audience information including membership criteria and filter clauses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example         | Description                                                                                                                                                             |
| ------------ | ------ | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `audienceId` | string |     ✅    | `"11228260226"` | Required. The audience identifier to retrieve. Provide the numeric audience ID (e.g., '11228260226').                                                                   |
| `propertyId` | string |     ✅    | `"123456789"`   | Required. The Google Analytics property identifier. Can be provided as just the numeric ID (e.g., '123456789') or as full resource name (e.g., 'properties/123456789'). |

***

### `Google Analytics Get Audience Export`

Integration name: **GOOGLE\_ANALYTICS\_GET\_AUDIENCE\_EXPORT**

Tool to get configuration metadata about a specific audience export. Use when you need to understand an audience export after it has been created or check its status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                                                           |
| --------- | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/audienceExports/19298228"` | Required. The audience export resource name. Format: properties/{property}/audienceExports/{audience\_export}. Example: properties/489591273/audienceExports/19298228 |

***

### `Google Analytics Get Audience List`

Integration name: **GOOGLE\_ANALYTICS\_GET\_AUDIENCE\_LIST**

Tool to get configuration metadata about a specific audience list. Use after confirming the audience list resource name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                | Description                                                                                                               |
| --------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/1234/audienceLists/5678"` | Required. The resource name of the Audience List to retrieve. Format: properties/{property}/audienceLists/{audienceList}. |

***

### `Google Analytics Get Custom Dimension`

Integration name: **GOOGLE\_ANALYTICS\_GET\_CUSTOM\_DIMENSION**

Tool to retrieve a single CustomDimension by its resource name. Use when you need detailed information about a specific custom dimension including its display name, scope, and parameter name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ------ | :------: | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/customDimensions/13661238280"` | Required. The resource name of the CustomDimension to retrieve. Must be in the exact format: properties/{property\_id}/customDimensions/{customDimension\_id} where both property\_id and customDimension\_id are numeric identifiers. IMPORTANT: Must start with 'properties/' prefix, contain exactly one '/customDimensions/' segment, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273/customDimensions/13661238280'. Invalid examples: '489591273/13661238280' (missing prefix), 'properties/489591273/customDimensions/13661238280/' (trailing slash), 'properties/489591273/customDimensions/13661238280/extra' (extra segments) |

***

### `Google Analytics Get Data Retention Settings`

Integration name: **GOOGLE\_ANALYTICS\_GET\_DATA\_RETENTION\_SETTINGS**

Tool to retrieve data retention configuration for a Google Analytics property. Use when you need to check event-level and user-level data retention durations and reset settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/dataRetentionSettings"` | Required. The resource name of the data retention settings to retrieve. Must be in the exact format: properties/{property\_id}/dataRetentionSettings where property\_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property\_id, have no trailing slashes, and must end with '/dataRetentionSettings'. Valid example: 'properties/489591273/dataRetentionSettings'. Invalid examples: '489591273' (missing prefix), 'properties/489591273' (missing suffix), 'properties/489591273/dataRetentionSettings/' (trailing slash) |

***

### `Google Analytics Get Data Sharing Settings`

Integration name: **GOOGLE\_ANALYTICS\_GET\_DATA\_SHARING\_SETTINGS**

Tool to retrieve data sharing configuration for a Google Analytics account. Use when you need to check which data sharing settings are enabled for an account, including sharing with Google support, sales teams, products, and benchmarking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ------ | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"accounts/1000/dataSharingSettings"` | Required. The resource name of the data sharing settings to retrieve. Must be in the exact format: accounts/{account\_id}/dataSharingSettings where account\_id is a numeric identifier. IMPORTANT: Must start with 'accounts/' prefix, contain no forward slashes in the account\_id, have no trailing slashes, and must end with '/dataSharingSettings'. Valid example: 'accounts/1000/dataSharingSettings'. Invalid examples: '1000' (missing prefix), 'accounts/1000' (missing suffix), 'accounts/1000/dataSharingSettings/' (trailing slash) |

***

### `Google Analytics Get Google Signals Settings`

Integration name: **GOOGLE\_ANALYTICS\_GET\_GOOGLE\_SIGNALS\_SETTINGS**

Tool to retrieve Google Signals configuration settings for a GA4 property. Use when you need to check whether Google Signals is enabled and the consent status for a property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`    | string |     ✅    | `"properties/1000/googleSignalsSettings"` | Required. The resource name of the Google Signals settings to retrieve. Must be in the exact format: properties/{property\_id}/googleSignalsSettings where property\_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property\_id, have no trailing slashes, and must end with '/googleSignalsSettings'. Valid example: 'properties/1000/googleSignalsSettings'. Invalid examples: '1000' (missing prefix), 'properties/1000' (missing suffix), 'properties/1000/googleSignalsSettings/' (trailing slash) |

***

### `Google Analytics Get Key Event`

Integration name: **GOOGLE\_ANALYTICS\_GET\_KEY\_EVENT**

Tool to retrieve a Key Event. Use after confirming the key event resource name. Read-only; create, update, or delete operations require the Google Analytics UI.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                          | Description                                                                                               |
| --------- | ------ | :------: | -------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/123/keyEvents/456"` | Required. Resource name of the Key Event to retrieve. Format: properties/{property}/keyEvents/{keyEvent}. |

***

### `Google Analytics Get Metadata`

Integration name: **GOOGLE\_ANALYTICS\_GET\_METADATA**

Tool to get metadata for dimensions, metrics, and comparisons for a GA4 property. Use to discover available fields before building a report — always derive dimension/metric apiNames from this output rather than hardcoding from GA4 UI labels, which differ. Available fields vary per property; skip validation and downstream report tools like GOOGLE\_ANALYTICS\_RUN\_REPORT return 400 INVALID\_ARGUMENT on incompatible or invalid field combinations. Response can contain hundreds of fields; filter to relevant subset before passing to downstream logic.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                           | Description                                                                                                                                               |
| --------- | ------ | :------: | --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/123456789/metadata"` | Resource name of the metadata to retrieve. Format: properties/{property\_id}/metadata. Use property\_id=0 to return only universal (non-custom) metadata. |

***

### `Google Analytics Get Property`

Integration name: **GOOGLE\_ANALYTICS\_GET\_PROPERTY**

Tool to retrieve a single GA4 Property by its resource name. Use when you need detailed property configuration including display name, time zone, currency, and other settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`    | string |     ✅    | `"properties/489591273"` | Required. The resource name of the Property to retrieve. Must be in the exact format: properties/{property\_id} where property\_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property\_id, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273'. Invalid examples: '489591273' (missing prefix), 'properties/489591273/' (trailing slash), 'properties/489591273/extra' (extra segments) |

***

### `Google Analytics Get Property Quotas Snapshot`

Integration name: **GOOGLE\_ANALYTICS\_GET\_PROPERTY\_QUOTAS\_SNAPSHOT**

Tool to retrieve all property quotas organized by category (corePropertyQuota, funnelPropertyQuota, realtimePropertyQuota) for a given GA4 property. Use when you need to check current quota usage. Snapshot data can lag real consumption by several minutes; treat reported values as approximate and avoid scheduling high-volume jobs at full apparent capacity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example             | Description                                                         |
| ---------- | ------ | :------: | ------------------- | ------------------------------------------------------------------- |
| `property` | string |     ✅    | `"properties/1234"` | Required. The property resource. Format: properties/{property\_id}. |

***

### `Google Analytics Get Recurring Audience List`

Integration name: **GOOGLE\_ANALYTICS\_GET\_RECURRING\_AUDIENCE\_LIST**

Tool to get configuration metadata about a specific recurring audience list. Use when you need to understand a recurring audience list's state after it has been created or to get the resource name of the most recent audience list instance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                  | Description                                                                                                                           |
| --------- | ------ | :------: | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/recurringAudienceLists/16375634"` | Required. The recurring audience list resource name. Format: properties/{property}/recurringAudienceLists/{recurring\_audience\_list} |

***

### `Google Analytics Get Report Task`

Integration name: **GOOGLE\_ANALYTICS\_GET\_REPORT\_TASK**

Tool to get report metadata about a specific report task. Use after creating a report task to check its processing state or inspect its report definition.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                      | Description                                                                                     |
| --------- | ------ | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"properties/489591273/reportTasks/7995923"` | Required. The report task resource name. Format: properties/{property}/reportTasks/{reportTask} |

***

### `Google Analytics List Accounts`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_ACCOUNTS**

DEPRECATED: Use ListAccountsV1Beta instead. Tool to list all Accounts accessible by the caller. Use when you need to enumerate all Google Analytics accounts your credentials can access. Empty or partial results may indicate a permissions issue rather than no resources existing. Returned resource names follow the format accounts/{account\_id}; use these in subsequent calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                   |
| ------------- | ------- | :------: | ------------ | ------------------------------------------------------------- |
| `pageSize`    | integer |          | `100`        | Optional. Maximum number of accounts to return. Must be ≥1.   |
| `pageToken`   | string  |          | `"token123"` | Optional. Token for retrieving the next page of results.      |
| `showDeleted` | boolean |          | —            | Optional. Whether to include soft-deleted (trashed) Accounts. |

***

### `Google Analytics List Account Summaries`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_ACCOUNT\_SUMMARIES**

Tool to retrieve summaries of all Google Analytics accounts accessible by the caller. Use when you need a high-level overview of accounts and their properties without fetching full account details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                                                                                                           |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageSize`  | integer |          | `50`         | Maximum number of account summaries to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. Maximum value is 200; higher values will be coerced to the maximum.               |
| `pageToken` | string  |          | `"token123"` | Page token received from a previous ListAccountSummaries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAccountSummaries must match the call that provided the page token. |

***

### `Google Analytics List Accounts V1 Beta`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_ACCOUNTS\_V1\_BETA**

Tool to list all Google Analytics accounts accessible by the caller using v1beta API. Use when you need to enumerate accounts. Note that these accounts might not have GA properties yet. Soft-deleted accounts are excluded by default.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example      | Description                                                                                                                                                                                                                                                 |
| ------------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageSize`    | integer |          | `50`         | The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken`   | string  |          | `"token123"` | A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token.                                |
| `showDeleted` | boolean |          | —            | Whether to include soft-deleted (ie: 'trashed') Accounts in the results. Accounts can be inspected to determine whether they are deleted or not. Defaults to false (soft-deleted accounts are excluded).                                                    |

***

### `Google Analytics List Adsense Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_ADSENSE\_LINKS**

Tool to list all AdSenseLinks on a property. Use when you need to fetch all AdSense links for a given Google Analytics property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example             | Description                                                                                       |
| ----------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/1234"` | Required. Resource name of the property. Format: properties/{propertyId} (e.g., properties/1234). |
| `pageSize`  | integer |          | `50`                | Optional. Maximum number of results to return. Must be between 1 and 200. Defaults to 50.         |
| `pageToken` | string  |          | `"token123"`        | Optional. Token for retrieving the next page of results.                                          |

***

### `Google Analytics List Audience Exports`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_AUDIENCE\_EXPORTS**

Tool to list all audience exports for a property. Use when you need to find and reuse existing audience exports rather than creating new ones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                        |
| ----------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/489591273' |
| `pageSize`  | integer |          | `200`                    | Optional. Maximum number of audience exports to return. Default: 200, Maximum: 1000                |
| `pageToken` | string  |          | `"token123"`             | Optional. Token from a previous response for pagination to retrieve the next page of results       |

***

### `Google Analytics List Audience Lists`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_AUDIENCE\_LISTS**

Tool to list all audience lists for a specified property to help find and reuse existing lists. Use when you need to retrieve a property's configured audience lists after confirming the property ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example             | Description                                                                                                |
| ----------- | ------- | :------: | ------------------- | ---------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/1234"` | Required. Resource name of the parent property. Format: properties/{property\_id}                          |
| `pageSize`  | integer |          | `200`               | Optional. Maximum number of audience lists to return. Defaults to 200; maximum is 1000.                    |
| `pageToken` | string  |          | `"token123"`        | Optional. Token for retrieving the next page of results. All other parameters must match original request. |

***

### `Google Analytics List Audiences`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_AUDIENCES**

Tool to list Audiences on a property. Use when you need to retrieve audience configurations for a Google Analytics property. Audiences created before 2020 may not be supported.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                     |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The property for which to list Audiences. Format: properties/{propertyId} Scoped to a single property per call; invoke separately for each property to list audiences across multiple GA4 properties. |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200                                                                            |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListAudiences call. Provide this to retrieve the subsequent page                                                                                                |

***

### `Google Analytics List Bigquery Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_BIGQUERY\_LINKS**

Tool to list BigQuery Links on a property. Use when you need to retrieve BigQuery link resources associated with a Google Analytics property. Results support pagination for large datasets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                                                 |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The name of the property to list BigQuery links under. Format: properties/{property\_id} (e.g., properties/1234).                                                                                                                 |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum.               |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListBigQueryLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListBigQueryLinks must match the call that provided the page token. |

***

### `Google Analytics List Calculated Metrics`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_CALCULATED\_METRICS**

List Calculated Metrics

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                   |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/1234' |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of results to return per request. Default: 50, Maximum: 200          |
| `pageToken` | string  |          | `"token123"`             | Optional. Token from a previous response for pagination to retrieve the next page of results  |

***

### `Google Analytics List Channel Groups`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_CHANNEL\_GROUPS**

Tool to list ChannelGroups on a property. Use when you need to retrieve channel groups that categorize traffic sources in Analytics reports.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                          |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The property for which to list ChannelGroups. Format: properties/{property\_id}                                            |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListChannelGroups call. Provide this to retrieve the subsequent page                 |

***

### `Google Analytics List Conversion Events`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_CONVERSION\_EVENTS**

Tool to list conversion events on a property. Use when you need to retrieve conversion events configured for a given property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                          |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The resource name of the parent property. Format: 'properties/{propertyId}'                                                |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListConversionEvents call. Provide this to retrieve the subsequent page              |

***

### `Google Analytics List Custom Dimensions`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_CUSTOM\_DIMENSIONS**

List Custom Dimensions

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                          |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The property for which to list CustomDimensions. Format: properties/{property\_id}                                         |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListCustomDimensions call. Provide this to retrieve the subsequent page              |

***

### `Google Analytics List Custom Metrics`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_CUSTOM\_METRICS**

Tool to list CustomMetrics on a property. Use when you need to retrieve all custom metrics configured for a given property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                  |
| ----------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/1234'                                |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. Maximum value is 200 |
| `pageToken` | string  |          | `"token123"`             | Optional. Token from a previous ListCustomMetrics call for pagination to retrieve the next page of results                   |

***

### `Google Analytics List Data Streams`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_DATA\_STREAMS**

Tool to list DataStreams on a property. Use when you need to retrieve data stream configurations for a Google Analytics property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                         |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The Google Analytics property identifier. Must be in format 'properties/NUMERIC\_ID' where NUMERIC\_ID is your actual property ID (e.g., 'properties/489591273'). Do NOT use placeholder syntax like 'properties/{propertyId}' - replace the placeholder with a real numeric property ID. |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200                                                                                                                                                                    |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListDataStreams call. Provide this to retrieve the subsequent page                                                                                                                                                                                  |

***

### `Google Analytics List Dv360 Ad Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_DV360\_AD\_LINKS**

Tool to list Display & Video 360 advertiser links on a property. Use when you need to retrieve DisplayVideo360AdvertiserLink resources associated with a Google Analytics property. Results support pagination for large datasets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                                             |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The name of the property to list DisplayVideo360AdvertiserLinks under. Format: properties/{property\_id} (e.g., properties/1234).                                                                                             |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum.           |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListDisplayVideo360AdvertiserLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided must match the call that provided the page token. |

***

### `Google Analytics List Dv360 Link Proposals`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_DV360\_LINK\_PROPOSALS**

Tool to list DisplayVideo360AdvertiserLinkProposals on a property. Use when you need to retrieve Display & Video 360 advertiser link proposals associated with a Google Analytics property. Results support pagination for large datasets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                                            |
| ----------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The name of the property to list DisplayVideo360AdvertiserLinkProposals under. Format: properties/{property\_id} (e.g., properties/489591273).                                                                               |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum.                                                        |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListDisplayVideo360AdvertiserLinkProposals call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token. |

***

### `Google Analytics List Event Create Rules`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_EVENT\_CREATE\_RULES**

Tool to list EventCreateRules configured on a web data stream. Use when you need to retrieve event create rules for a specific GA4 property data stream.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                     | Description                                                                                                    |
| ----------- | ------- | :------: | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273/dataStreams/456789"` | Required. Resource name of the parent data stream. Format: properties/{propertyId}/dataStreams/{dataStreamId}. |
| `pageSize`  | integer |          | `50`                                        | Optional. Maximum number of event create rules to return. Default is 50, maximum allowed is 200.               |
| `pageToken` | string  |          | `"token123"`                                | Optional. A page token received from a previous list call. Provide this to retrieve the next page of results.  |

***

### `Google Analytics List Expanded Data Sets`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_EXPANDED\_DATA\_SETS**

Tool to list ExpandedDataSets on a property. Use when you need to retrieve expanded data set configurations for a Google Analytics 360 property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                          |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The name of the property to list ExpandedDataSets for. Format: properties/{property\_id}                                   |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListExpandedDataSets call. Provide this to retrieve the subsequent page              |

***

### `Google Analytics List Firebase Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_FIREBASE\_LINKS**

Tool to list FirebaseLinks on a property. Use when you need to retrieve Firebase connections associated with a Google Analytics property. Each property can have at most one FirebaseLink.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                       |
| ----------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The property for which to list FirebaseLinks. Format: properties/{property\_id} (e.g., properties/1234).                                                                                                                                                |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListFirebaseLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListFirebaseLinks must match the call that provided the page token.                       |

***

### `Google Analytics List Google Ads Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_GOOGLE\_ADS\_LINKS**

Tool to list GoogleAdsLinks on a property. Use when you need to retrieve Google Ads account links configured for a Google Analytics property. Supports pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                                                                                    |
| ----------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. The property resource name. Format: properties/{propertyId} (e.g., properties/1234).                                                                                                                 |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum.                                |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListGoogleAdsLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token. |

***

### `Google Analytics List Key Events`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_KEY\_EVENTS**

Tool to list Key Events. Use when you need to retrieve all key event definitions for a given property. Key events are read-only via API; creation, updates, and deletion require the Google Analytics UI. An empty results list means no key events are configured, not a failure. Do not infer key-event status from report data (e.g., eventCount); use this tool to confirm.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example            | Description                                                                                                                          |
| ----------- | ------- | :------: | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/123"` | Required. Resource name of the parent property. Format: properties/{property\_id}.                                                   |
| `pageSize`  | integer |          | `50`               | Optional. Maximum number of results to return. Must be between 1 and 200. If not specified or 0, the API uses its default page size. |
| `pageToken` | string  |          | `"token123"`       | Optional. Token for retrieving the next page of results.                                                                             |

***

### `Google Analytics List Measurement Protocol Secrets`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_MEASUREMENT\_PROTOCOL\_SECRETS**

Tool to list MeasurementProtocolSecrets under a data stream. Use when you need to retrieve measurement protocol secrets for server-side event tracking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                         | Description                                                                                                                       |
| ----------- | ------- | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273/dataStreams/1234567890"` | Required. The resource name of the parent data stream. Format: properties/{property}/dataStreams/{dataStream}                     |
| `pageSize`  | integer |          | `10`                                            | Optional. Maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10   |
| `pageToken` | string  |          | `"token123"`                                    | Optional. A page token received from a previous ListMeasurementProtocolSecrets call. Provide this to retrieve the subsequent page |

***

### `Google Analytics List Properties`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_PROPERTIES**

DEPRECATED: Use ListPropertiesV1Beta instead. Tool to list GA4 properties under a specific account. Use after obtaining an account ID; supports pagination and including soft-deleted properties. Results may include legacy Universal Analytics properties; verify property type before use.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                | Description                                                                                                                                                                                                                                                                                                                                              |
| ------------- | ------- | :------: | ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `account`     | string  |     ✅    | `"accounts/123456789"` | Required. Google Analytics account resource name in format accounts/{account\_id} where account\_id is a Google Analytics account ID (typically 6-10 digits). Use GOOGLE\_ANALYTICS\_LIST\_ACCOUNTS to get valid account IDs. Note: Do not use Google Account IDs (long numeric IDs from OAuth user info) - only Google Analytics account IDs are valid. |
| `pageSize`    | integer |          | `100`                  | Optional. Maximum number of properties to return; must be between 1 and 200.                                                                                                                                                                                                                                                                             |
| `pageToken`   | string  |          | `"token123"`           | Optional. Token returned from a previous call to retrieve the next page of results.                                                                                                                                                                                                                                                                      |
| `showDeleted` | boolean |          | —                      | Optional. Whether to include soft-deleted (trashed) properties.                                                                                                                                                                                                                                                                                          |

***

### `Google Analytics List Properties Filtered`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_PROPERTIES\_FILTERED**

Tool to list GA4 properties based on filter criteria. Use when you need to find properties under a specific parent account or with specific firebase projects. Supports pagination and including soft-deleted properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------- | ------- | :------: | ----------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`      | string  |     ✅    | `"parent:accounts/123456789"` | Required. Expression for filtering the results. Fields eligible for filtering: `parent:` (resource name of parent account/property), `ancestor:` (resource name of parent account), or `firebase_project:` (id or number of linked firebase project). Examples: 'parent:accounts/123' (account with id 123), 'parent:properties/123' (property with id 123), 'ancestor:accounts/123' (account with id 123), 'firebase\_project:project-id' (firebase project with id project-id), 'firebase\_project:123' (firebase project with number 123). |
| `pageSize`    | integer |          | `50`                          | Optional. Maximum number of properties to return (1-200). Default is 50.                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `pageToken`   | string  |          | `"token123"`                  | Optional. Token from previous ListProperties call to retrieve the next page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `showDeleted` | boolean |          | —                             | Optional. Whether to include soft-deleted (trashed) properties. Default is false.                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Google Analytics List Recurring Audience Lists`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_RECURRING\_AUDIENCE\_LISTS**

Tool to list all recurring audience lists for a GA4 property. Use when you need to find and reuse existing recurring audience lists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                       |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Resource name of the parent property. Format: properties/{property\_id}                 |
| `pageSize`  | integer |          | `200`                    | Optional. Maximum number of recurring audience lists to return. Defaults to 200; maximum is 1000. |
| `pageToken` | string  |          | `"token123"`             | Optional. Token for retrieving the next page of results.                                          |

***

### `Google Analytics List Reporting Data Annotations`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_REPORTING\_DATA\_ANNOTATIONS**

Tool to list all Reporting Data Annotations for a specific property. Use when you need to retrieve annotations that document important events or periods in GA4 reporting data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                       |
| ----------- | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`    | string  |          | `"color = RED AND title =~ 'campaign'"` | Optional. Expression to refine results. Supported fields: name, title, description, annotationDate, annotationDateRange, color. Helper functions: annotation\_duration(), is\_annotation\_in\_range(). Operators: =, !=, <, >, <=, >=, :, =~~, !~~, NOT, AND, OR. |
| `parent`    | string  |     ✅    | `"properties/123456789"`                | Required. Resource name of the property. Format: properties/{property\_id}. Example: properties/123456789                                                                                                                                                         |
| `pageSize`  | integer |          | `50`                                    | Optional. Maximum number of resources per response. Default: 50, Max: 200.                                                                                                                                                                                        |
| `pageToken` | string  |          | `"abc123"`                              | Optional. Pagination token from previous response to retrieve next page.                                                                                                                                                                                          |

***

### `Google Analytics List Report Tasks`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_REPORT\_TASKS**

Tool to list all report tasks for a Google Analytics property. Use when you need to retrieve report task definitions and their execution status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                           |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Property identifier in format 'properties/{propertyId}'. The Google Analytics property whose report tasks should be listed. |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of report tasks to return per page. If unspecified, server determines page size.                             |
| `pageToken` | string  |          | `"token123"`             | Optional. Pagination token from previous list response for retrieving next page of results. Omit for first page.                      |

***

### `Google Analytics List Search Ads360 Links`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_SEARCH\_ADS360\_LINKS**

Tool to list all SearchAds360Links on a property. Use when you need to retrieve all Search Ads 360 links for a given Google Analytics property. Supports pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example             | Description                                                                                                                                          |
| ----------- | ------- | :------: | ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/1234"` | Required. The property resource name. Format: properties/{propertyId} (e.g., properties/1234).                                                       |
| `pageSize`  | integer |          | `50`                | Optional. Maximum number of resources to return. Default is 50, maximum is 200. Values exceeding 200 are capped at maximum.                          |
| `pageToken` | string  |          | `"token123"`        | Optional. A page token received from a previous list call. Use this to retrieve the next page. All other parameters must match the original request. |

***

### `Google Analytics List Sk Ad Network Conversion Value Schemas`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_SK\_AD\_NETWORK\_CONVERSION\_VALUE\_SCHEMAS**

Tool to list SKAdNetworkConversionValueSchema configurations for an iOS data stream. Use when you need to retrieve conversion value schemas for iOS app tracking. Maximum one schema per property is supported.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                         | Description                                                                                                                                                               |
| ----------- | ------- | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/123456789/dataStreams/1234567890"` | Required. The DataStream resource to list schemas for. Format: properties/{property\_id}/dataStreams/{dataStream}. Example: 'properties/123456789/dataStreams/1234567890' |
| `pageSize`  | integer |          | `50`                                            | Optional. Maximum number of resources per response. Default: 50, Maximum: 200.                                                                                            |
| `pageToken` | string  |          | `"token123"`                                    | Optional. Token from previous call for pagination to retrieve next page of results.                                                                                       |

***

### `Google Analytics List Subproperty Event Filters`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_SUBPROPERTY\_EVENT\_FILTERS**

Tool to list all subproperty event filters on a property. Use when you need to retrieve event filters that route events to subproperties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                          |
| ----------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------ |
| `parent`    | string  |     ✅    | `"properties/489591273"` | Required. Resource name of the ordinary property. Format: properties/{property\_id}  |
| `pageSize`  | integer |          | `50`                     | Optional. Maximum number of resources to return; at most 50 by default, maximum 200. |
| `pageToken` | string  |          | `"token123"`             | Optional. Page token received from a previous call to retrieve the next page.        |

***

### `Google Analytics List Subproperty Sync Configs`

Integration name: **GOOGLE\_ANALYTICS\_LIST\_SUBPROPERTY\_SYNC\_CONFIGS**

Tool to list SubpropertySyncConfig resources for managing subproperty synchronization configurations. Use when you need to fetch subproperty sync configs for a GA4 property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                  | Description                                                                                                                                         |
| ----------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`    | string  |     ✅    | `"properties/123456789"` | Required. Resource name of the property. Format: properties/{property\_id}. Example: properties/123                                                 |
| `pageSize`  | integer |          | `50`                     | Optional. The maximum number of resources to return. May return fewer. If unspecified, at most 50 resources will be returned. Maximum value is 200. |
| `pageToken` | string  |          | `"token123"`             | Optional. A page token received from a previous ListSubpropertySyncConfig call. Provide this to retrieve the subsequent page.                       |

***

### `Google Analytics Provision Account Ticket`

Integration name: **GOOGLE\_ANALYTICS\_PROVISION\_ACCOUNT\_TICKET**

Tool to request a ticket for creating a Google Analytics account. Use when you need to initiate the account creation flow that requires user acceptance of Terms of Service.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                          | Description                                                                                                                                 |
| ------------- | ------ | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `account`     | object |     ✅    | —                                | Required. Account details including display name and region code.                                                                           |
| `redirectUri` | string |     ✅    | `"https://example.com/redirect"` | Required. Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in Cloud Console as a Redirect URI. |

***

### `Google Analytics Query Audience Export`

Integration name: **GOOGLE\_ANALYTICS\_QUERY\_AUDIENCE\_EXPORT**

Tool to query a completed audience export. Use when you need to fetch user rows with pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                             |
| --------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string  |     ✅    | `"properties/1234/audienceExports/5678"` | Required. Resource name of the audience export. Format: properties/{property}/audienceExports/{audienceExport}, where {property} and {audienceExport} must be integers. |
| `limit`   | integer |          | `1000`                                   | Optional. Number of rows to return. Must be between 1 and 250000. Defaults to 10000.                                                                                    |
| `offset`  | integer |          | `0`                                      | Optional. Zero-based start row index for pagination. Defaults to 0.                                                                                                     |

***

### `Google Analytics Query Audience List`

Integration name: **GOOGLE\_ANALYTICS\_QUERY\_AUDIENCE\_LIST**

Tool to query an audience list. Use when you need to retrieve user rows from a GA4 audience list with pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                     | Description                                                                                            |
| --------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `name`    | string  |     ✅    | `"properties/1234/audienceLists/abcd-5678"` | Required. Audience list resource to query. Format: properties/{property}/audienceLists/{audienceList}. |
| `limit`   | integer |          | `1000`                                      | Optional. Number of rows to return; default 10,000; maximum 250,000.                                   |
| `offset`  | integer |          | `0`                                         | Optional. Zero-based row offset for pagination.                                                        |

***

### `Google Analytics Query Report Task`

Integration name: **GOOGLE\_ANALYTICS\_QUERY\_REPORT\_TASK**

Tool to retrieve a report task's content. Use this after creating a report task with CreateReportTask and confirming it is in ACTIVE state. This method returns an error if the report task's state is not ACTIVE.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                     | Description                                                                                                                                          |
| --------- | ------- | :------: | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string  |     ✅    | `"properties/489591273/reportTasks/173003"` | Required. Report task name in format 'properties/{propertyId}/reportTasks/{reportTaskId}'. The report task must be in ACTIVE state.                  |
| `limit`   | integer |          | `100`                                       | Optional. Number of rows to return (max 250,000). If unspecified, 10,000 rows are returned. Must be positive. Limited by the ReportTask's own limit. |
| `offset`  | integer |          | `0`                                         | Optional. Row offset for pagination (0-indexed). First request omits offset or sets to 0. For subsequent pages, set to the previous limit value.     |

***

### `Google Analytics Run Funnel Report`

Integration name: **GOOGLE\_ANALYTICS\_RUN\_FUNNEL\_REPORT**

Tool to run a GA4 funnel report. Use when you need a customized funnel analysis report for a given property. Funnel step sequence is determined by step attributes in the response, not row order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`                   | integer |          | —                   | Number of rows to return. Default 10000; max 250000.                                                                                                                                                                                                                                                                                                                                                                                                         |
| `funnel`                  | object  |     ✅    | —                   | Funnel configuration object. Must include a 'steps' key with at least one step. Each step requires a 'name' and optionally a 'filterExpression'. Use 'funnelEventFilter' for event filters and 'funnelFieldFilter' for field filters. Filter expressions with 'fieldName' + 'stringFilter' are auto-wrapped in 'funnelFieldFilter'. Example: {"steps": \[{"name": "First visit", "filterExpression": {"funnelEventFilter": {"eventName": "first\_visit"}}}]} |
| `property`                | string  |     ✅    | `"properties/1234"` | GA4 property resource name, format: properties/{property\_id}.                                                                                                                                                                                                                                                                                                                                                                                               |
| `segments`                | array   |          | —                   | Up to 4 segments; each yields its own row in the report.                                                                                                                                                                                                                                                                                                                                                                                                     |
| `dateRanges`              | array   |          | —                   | List of date ranges to read; overlapping ranges duplicate days across ranges.                                                                                                                                                                                                                                                                                                                                                                                |
| `dimensionFilter`         | object  |          | —                   | Dimension-only filter expression.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `funnelBreakdown`         | object  |          | —                   | Breakdown dimension configuration for the funnel table sub-report.                                                                                                                                                                                                                                                                                                                                                                                           |
| `funnelNextAction`        | object  |          | —                   | Next-action dimension configuration for the funnel visualization sub-report.                                                                                                                                                                                                                                                                                                                                                                                 |
| `returnPropertyQuota`     | boolean |          | —                   | If true, includes the property's current quota state.                                                                                                                                                                                                                                                                                                                                                                                                        |
| `funnelVisualizationType` | string  |          | —                   | Visualization type: STANDARD\_FUNNEL (default) or TRENDED\_FUNNEL.                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Google Analytics Run Pivot Report`

Integration name: **GOOGLE\_ANALYTICS\_RUN\_PIVOT\_REPORT**

Tool to run a customized pivot report of Google Analytics event data. Use when you need a pivot table view with advanced segmentation and multi-dimensional analysis of GA4 data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                               | Description                                                                                                                                                                             |
| --------------------- | ------- | :------: | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pivots`              | array   |          | `[{"limit":5,"fieldNames":["country"]}]`              | Optional. Visual format configuration for dimensions. Each pivot has 'fieldNames' (required string array), 'limit' (required), optional 'orderBys', 'offset', and 'metricAggregations'. |
| `metrics`             | array   |     ✅    | `[{"name":"activeUsers"},{"name":"sessions"}]`        | Required. At least one metric is required. Each metric has a 'name' field, optional 'expression', and optional 'invisible' boolean.                                                     |
| `property`            | string  |     ✅    | `"properties/123456789"`                              | Required. The GA4 property resource name. Format: properties/{property\_id}                                                                                                             |
| `cohortSpec`          | object  |          | —                                                     | Optional. Cohort configuration with 'cohorts' (required), optional 'cohortsRange' and 'cohortReportSettings'.                                                                           |
| `dateRanges`          | array   |          | `[{"endDate":"2024-12-09","startDate":"2024-12-01"}]` | Optional. Date ranges for event data retrieval. Each range has 'startDate' and 'endDate' (YYYY-MM-DD format or relative like 'NdaysAgo', 'yesterday', 'today'), and optional 'name'.    |
| `dimensions`          | array   |          | `[{"name":"country"},{"name":"deviceCategory"}]`      | Optional. Dimensions to request. Each dimension has a 'name' field and optional 'dimensionExpression'. Dimensions must be used in pivots, filters, or orderBys.                         |
| `comparisons`         | array   |          | —                                                     | Optional. Comparison configurations. Each comparison has optional 'name' and required 'dimensionFilter' or 'comparison'.                                                                |
| `currencyCode`        | string  |          | `"USD"`                                               | Optional. ISO4217 currency code (e.g., 'USD', 'EUR').                                                                                                                                   |
| `metricFilter`        | object  |          | —                                                     | Optional. Post-aggregation filter (SQL HAVING clause equivalent).                                                                                                                       |
| `keepEmptyRows`       | boolean |          | —                                                     | Optional. If true, includes rows where all metrics equal 0.                                                                                                                             |
| `dimensionFilter`     | object  |          | —                                                     | Optional. Filter clause for dimensions only. Can use andGroup, orGroup, notExpression, or filter.                                                                                       |
| `returnPropertyQuota` | boolean |          | —                                                     | Optional. If true, returns current quota state in PropertyQuota.                                                                                                                        |

***

### `Google Analytics Run Realtime Report`

Integration name: **GOOGLE\_ANALYTICS\_RUN\_REALTIME\_REPORT**

Tool to run a customized realtime report of Google Analytics event data. Use when you need realtime data (last 30-60 minutes) with dimensions and metrics for a GA4 property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                               | Description                                                                                                                                                                                                                                                                                    |
| --------------------- | ------- | :------: | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`               | integer |          | `50`                                                                  | Max rows to return (default 10000, max 250000).                                                                                                                                                                                                                                                |
| `metrics`             | array   |          | `[{"name":"activeUsers"},{"name":"screenPageViews"}]`                 | Metrics to measure (max 10). At least one dimension or metric is required. Valid names: activeUsers, eventCount, keyEvents, screenPageViews.                                                                                                                                                   |
| `orderBys`            | array   |          | —                                                                     | Sorting specification. Example: \[{'metric': {'metricName': 'activeUsers'}, 'desc': true}] or \[{'dimension': {'dimensionName': 'country'}}].                                                                                                                                                  |
| `property`            | string  |     ✅    | `"properties/123456789"`                                              | Required. The GA4 property resource name. Format: properties/{property\_id}. Get property IDs from GOOGLE\_ANALYTICS\_LIST\_PROPERTIES.                                                                                                                                                        |
| `dimensions`          | array   |          | `[{"name":"country"},{"name":"city"}]`                                | Dimensions to group by (max 9). At least one dimension or metric is required. Valid names: appVersion, audienceId, audienceName, city, cityId, country, countryId, deviceCategory, eventName, minutesAgo, platform, streamId, streamName, unifiedScreenName. Custom: 'customUser:param\_name'. |
| `metricFilter`        | object  |          | —                                                                     | Post-aggregation filter on metric values. Applied after row aggregation.                                                                                                                                                                                                                       |
| `minuteRanges`        | array   |          | `[{"name":"last_30_minutes","endMinutesAgo":0,"startMinutesAgo":29}]` | Time ranges to report on. Default is last 30 minutes. Each range has startMinutesAgo (default 29) and endMinutesAgo (default 0).                                                                                                                                                               |
| `dimensionFilter`     | object  |          | —                                                                     | Filter to restrict data by dimension values. Structure: {'filter': {'fieldName': 'country', 'stringFilter': {'value': 'United States'}}} or use andGroup/orGroup/notExpression for complex filters.                                                                                            |
| `metricAggregations`  | array   |          | `["TOTAL"]`                                                           | Request aggregated metric values. Values: 'TOTAL', 'MINIMUM', 'MAXIMUM', 'COUNT'.                                                                                                                                                                                                              |
| `returnPropertyQuota` | boolean |          | —                                                                     | If true, includes API quota usage info in the response.                                                                                                                                                                                                                                        |

***

### `Google Analytics Run Report`

Integration name: **GOOGLE\_ANALYTICS\_RUN\_REPORT**

Tool to run a customized GA4 data report. Use when you need event data after specifying dimensions, metrics, and date ranges. IMPORTANT - DIMENSION/METRIC COMPATIBILITY: The Google Analytics Data API has strict compatibility rules between dimensions and metrics. Not all combinations are valid. If you receive a 400 error with a message about incompatible dimensions/metrics, use the GOOGLE\_ANALYTICS\_CHECK\_COMPATIBILITY action first to validate your dimension/metric combinations before running reports. Common incompatibilities include: - Demographic dimensions (userAgeBracket, userGender) with session-scoped dimensions/filters (sessionCampaignName, sessionSource) - Certain user-scoped dimensions with event-scoped metrics For complex queries, consider starting with simpler dimension/metric combinations or use CHECK\_COMPATIBILITY to pre-validate your request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ----------------------------- | ------- | :------: | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `limit`                       | integer |          | `1000`                                                | Optional. Number of rows to return. Must be between 1 and 250000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `offset`                      | integer |          | `0`                                                   | Optional. 0-based start row for pagination. Must be >= 0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `metrics`                     | array   |          | `{"name":"activeUsers"}`                              | Optional. The metrics to request and display. Maximum 10 metrics per request. Each metric MUST be an object with a required non-empty 'name' field. Common valid metric names: activeUsers, totalUsers, newUsers, sessions, engagedSessions, screenPageViews, eventCount, conversions, userEngagementDuration, engagementRate, bounceRate, averageSessionDuration, sessionsPerUser, screenPageViewsPerSession, purchaseRevenue, totalRevenue, transactions, ecommercePurchases, publisherAdClicks, publisherAdImpressions, totalAdRevenue. Custom metrics use format 'customEvent:parameter\_name'. CRITICAL: 'averageEngagementTime' is NOT a valid metric - use 'userEngagementDuration' or 'averageSessionDuration' instead. 'exits' is NOT a valid metric in GA4.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `orderBys`                    | array   |          | `{"desc":true,"metric":{"metricName":"activeUsers"}}` | Optional. Specify how rows are ordered. Each OrderBy object must have 'desc' (boolean) at the top level and exactly one of: 'metric' (with 'metricName' string), 'dimension' (with 'dimensionName' or 'name' string and optional 'orderType': 'ALPHANUMERIC', 'CASE\_INSENSITIVE\_ALPHANUMERIC', or 'NUMERIC'), or 'pivot'. Note: For dimension ordering, you can use either 'dimensionName' or 'name' field - both are accepted and normalized. Example for metric ordering: {'desc': true, 'metric': {'metricName': 'activeUsers'}}. Example for dimension ordering: {'desc': false, 'dimension': {'dimensionName': 'country', 'orderType': 'ALPHANUMERIC'}}.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `property`                    | string  |     ✅    | `"properties/123456789"`                              | Required. The property resource on which to run the report. Format: properties/{property\_id} where property\_id must be a numeric ID (e.g., 'properties/123456789').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `cohortSpec`                  | object  |          | —                                                     | Optional. Cohort specification. Requires requesting the cohort dimension.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `dateRanges`                  | array   |          | `{"endDate":"2023-01-31","startDate":"2023-01-01"}`   | The date ranges to read. Required for standard reports. Each range MUST be an object with required 'startDate' and 'endDate' fields (both must be non-empty). Dates can be in YYYY-MM-DD format or special values like 'today', 'yesterday', '7daysAgo', '30daysAgo'. IMPORTANT: For cohort requests (when cohortSpec is provided), dateRanges must be omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `dimensions`                  | array   |          | `{"name":"city"}`                                     | Optional. The dimensions to request and display. Maximum 9 dimensions per request. Each dimension MUST be an object with a required non-empty 'name' field. Common valid dimension names: date, dateHour, dateHourMinute, year, month, week, day, dayOfWeek, hour, city, cityId, country, countryId, continent, continentId, region, subContinent, deviceCategory, browser, operatingSystem, platform, platformDeviceCategory, screenResolution, sessionSource, sessionMedium, sessionSourceMedium, sessionCampaignName, sessionDefaultChannelGroup, firstUserSource, firstUserMedium, firstUserCampaignName, firstUserDefaultChannelGroup, pagePath, pagePathPlusQueryString, pageTitle, landingPage, hostname, eventName, streamName, userAgeBracket, userGender, language, newVsReturning. Custom dimensions: 'customEvent:parameter\_name' or 'customUser:parameter\_name'. 'dateRange' is NOT a valid dimension — use date dimensions (date, dateHour, year, month, etc.) instead. 'exits' is NOT a valid dimension in GA4. COMPATIBILITY: Not all dimensions can be combined with each other or with certain metrics/filters. If you receive a compatibility error, use GOOGLE\_ANALYTICS\_CHECK\_COMPATIBILITY to validate combinations, or see <https://developers.google.com/analytics/devguides/reporting/data/v1/compatibility> |
| `comparisons`                 | array   |          | —                                                     | Optional. The comparison configuration. Adds a comparison column to the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `currencyCode`                | string  |          | `"USD"`                                               | Optional. The currency code to apply, in ISO 4217 format. Defaults to property currency.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `metricFilter`                | object  |          | —                                                     | Optional. Filter expression to restrict rows by metric values. Applied after aggregation. IMPORTANT: Only use metric field names here (e.g., 'activeUsers', 'sessions', 'ecommercePurchases', 'purchaseRevenue'). Do NOT use dimension names in metricFilter - if you need to filter by a dimension (e.g., 'country', 'city', 'pagePath'), use dimensionFilter instead. The action validates that only metric names are used in metricFilter and will reject dimension names with a clear error. Structure: {'filter': {'fieldName': '\<metric\_name>', 'numericFilter': {'operation': 'GREATER\_THAN', 'value': {'int64Value': '0'}}}} or use 'andGroup'/'orGroup' for multiple conditions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `keepEmptyRows`               | boolean |          | —                                                     | Optional. If true, rows with all zero metrics will be returned; otherwise omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `dimensionFilter`             | object  |          | —                                                     | Optional. Filter expression to restrict rows by dimension values. IMPORTANT: Only use dimension field names here (e.g., 'country', 'city', 'date', 'deviceCategory', 'pagePath'). Do NOT use metric names in dimensionFilter - if you need to filter by a metric (e.g., 'activeUsers', 'sessions', 'ecommercePurchases'), use metricFilter instead. Structure: {'filter': {'fieldName': '\<dimension\_name>', 'stringFilter': {...}}} or use 'andGroup'/'orGroup' for multiple conditions. COMPATIBILITY WARNING: Dimension filters must be compatible with the dimensions in your request. For example, filtering on 'sessionCampaignName' while using demographic dimensions (userAgeBracket, userGender) will fail. The filter field creates an implicit dimension that must be compatible with all other dimensions and metrics. Use GOOGLE\_ANALYTICS\_CHECK\_COMPATIBILITY to verify your filter dimensions work with your requested dimensions/metrics.                                                                                                                                                                                                                                                                                                                                                                             |
| `metricAggregations`          | array   |          | `"TOTAL"`                                             | Optional. Aggregation types to include over metrics, e.g., 'TOTAL', 'MINIMUM', 'MAXIMUM'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `returnPropertyQuota`         | boolean |          | —                                                     | Optional. If true, include the property's current quota state in the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `removed_dimensions_internal` | array   |          | —                                                     | Internal field to store filtered dimension names for execution message. Not sent to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Google Analytics Send Events`

Integration name: **GOOGLE\_ANALYTICS\_SEND\_EVENTS**

Tool to send event data to Google Analytics 4 using the Measurement Protocol. Use when you need to track server-side events that supplement client-side gtag.js or Firebase tracking. The Measurement Protocol allows sending event data directly to GA4 from servers, applications, or other devices. Events are processed asynchronously and typically appear in reports within 24-48 hours. For validation, use the validation server endpoint first (mp/collect/validate).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                          | Description                                                                                                                                                              |
| ------------------ | ------- | :------: | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `events`           | array   |     ✅    | `[{"name":"purchase","params":{"value":42.5,"currency":"USD"}}]` | Required. Array of event objects to send. Maximum 25 events per request. Each event must have a 'name' and can optionally include 'params'.                              |
| `consent`          | object  |          | `{"ad_user_data":"GRANTED","ad_personalization":"DENIED"}`       | Consent settings for Google Analytics 4.                                                                                                                                 |
| `user_id`          | string  |          | `"user_12345"`                                                   | Optional. A unique identifier for a logged-in user. This should be a non-PII identifier that you use internally to identify a user. Maximum 256 characters.              |
| `client_id`        | string  |     ✅    | `"test_client_123"`                                              | Required. A unique identifier for a user/client. This should be a UUID or similar unique string that identifies a specific user across sessions. Maximum 256 characters. |
| `api_secret`       | string  |     ✅    | `"abcd1234xyz"`                                                  | Required. The API secret generated in the Google Analytics UI under Admin > Data Streams > Measurement Protocol API secrets. Used to authenticate requests.              |
| `measurement_id`   | string  |     ✅    | `"G-XXXXXXXXXX"`                                                 | Required. The measurement ID for the web stream in the format G-XXXXXXX. This is found in the Google Analytics UI under Admin > Data Streams > Web Stream Details.       |
| `user_properties`  | object  |          | `{"subscription_tier":{"value":"premium"}}`                      | Optional. User properties to set for this measurement. Each property must have a 'value' field. User properties persist across events.                                   |
| `timestamp_micros` | integer |          | `1234567890000000`                                               | Optional. Unix timestamp in microseconds for when the event occurred. If not provided, the current time is used. Can be up to 72 hours in the past.                      |

***

### `Google Analytics Update Property`

Integration name: **GOOGLE\_ANALYTICS\_UPDATE\_PROPERTY**

Tool to update an existing GA4 Property. Use when you need to modify property settings such as display name, time zone, currency code, or industry category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------ | ------ | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string |     ✅    | `"properties/525798648"` | Required. The resource name of the Property to update. Must be in the exact format: properties/{property\_id} where property\_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property\_id, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273'. Invalid examples: '489591273' (missing prefix), 'properties/489591273/' (trailing slash), 'properties/489591273/extra' (extra segments) |
| `parent`           | string |          | `"accounts/100"`         | Immutable. Resource name of this property's logical parent. Format: accounts/{account}, properties/{property}. Example: 'accounts/100', 'properties/101'                                                                                                                                                                                                                                                                                                                                             |
| `timeZone`         | string |          | `"America/Los_Angeles"`  | Required. Reporting Time Zone, used as the day boundary for reports. Format: IANA time zone. Example: 'America/Los\_Angeles'                                                                                                                                                                                                                                                                                                                                                                         |
| `updateMask`       | string |     ✅    | `"displayName"`          | Required. The list of fields to be updated. Field names must be in snake case (e.g., 'display\_name', 'time\_zone', 'currency\_code'). Omitted fields will not be updated. To replace the entire entity, use one path with the string '\*' to match all fields. Common fields: 'display\_name', 'time\_zone', 'currency\_code', 'industry\_category'                                                                                                                                                 |
| `displayName`      | string |          | `"My Updated Property"`  | Human-readable display name for this property. The max allowed display name length is 100 UTF-16 code units.                                                                                                                                                                                                                                                                                                                                                                                         |
| `currencyCode`     | string |          | `"USD"`                  | The currency type used in reports involving monetary values. Format: ISO 4217. Examples: 'USD', 'EUR', 'JPY'                                                                                                                                                                                                                                                                                                                                                                                         |
| `propertyType`     | string |          | —                        | Property type for a property.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `industryCategory` | string |          | —                        | Industry category for a property.                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Google Analytics Validate Events`

Integration name: **GOOGLE\_ANALYTICS\_VALIDATE\_EVENTS**

Tool to validate Measurement Protocol events before sending them to production. Use when you need to verify event structure and parameters are correct before sending real data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                                              | Description                                                                                              |
| ------------------ | ------ | :------: | ------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |
| `events`           | array  |     ✅    | `[{"name":"test_event","params":{"session_id":"123","engagement_time_msec":"100"}}]` | Required. Array of events to validate. Each event must have a 'name' field and optional 'params' object. |
| `consent`          | object |          | —                                                                                    | Optional. The consent state for the user.                                                                |
| `user_id`          | string |          | `"user_123"`                                                                         | Optional. A unique identifier for a user.                                                                |
| `client_id`        | string |     ✅    | `"test_client_123"`                                                                  | Required. Unique client identifier. This uniquely identifies a user instance of a web client.            |
| `api_secret`       | string |     ✅    | `"test_secret"`                                                                      | Required. The API secret from Google Analytics for the Measurement Protocol.                             |
| `measurement_id`   | string |     ✅    | `"G-ABC123XYZ"`                                                                      | Required. The measurement ID for web streams. Format: G-XXXXXXXXXX where X is alphanumeric.              |
| `user_properties`  | object |          | —                                                                                    | Optional. The user properties for the measurement.                                                       |
| `timestamp_micros` | string |          | `"1234567890000000"`                                                                 | Optional. A Unix timestamp (in microseconds) for the time to associate with the event.                   |


# Google Calendar

Your Toolhouse AI Worker can connect to Google Calendar using 48 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](https://toolhouse.app/auth-connections?authkit_slugs=googlecalendar).

## Tools (48)

### `Google Calendar Acl Delete`

Integration name: **GOOGLECALENDAR\_ACL\_DELETE**

Deletes an access control rule from a Google Calendar. Use when you need to remove sharing permissions for a user, group, or domain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                   | Description                                                                                                                                                                             |
| ------------- | ------ | :------: | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rule_id`     | string |     ✅    | `"user:test@example.com"` | ACL rule identifier.                                                                                                                                                                    |
| `calendar_id` | string |     ✅    | `"primary"`               | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword. |

***

### `Google Calendar Acl Get`

Integration name: **GOOGLECALENDAR\_ACL\_GET**

Retrieves a specific access control rule for a calendar. Use when you need to check permissions for a specific user, group, or domain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                   | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------- | ------ | :------: | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rule_id`     | string |     ✅    | `"user:email@domain.com"` | ACL rule identifier. Format: 'scope\_type:scope\_value' or 'default'. Valid scope types: 'user' (email), 'group' (group email), 'domain' (domain name), 'default' (public access). Examples: 'user:<john@example.com>', 'group:<team@example.com>', 'domain:example.com', 'default'. Note: 'me' is NOT valid; use actual email/domain. The rule must exist - use GOOGLECALENDAR\_LIST\_ACL\_RULES to find valid IDs. |
| `calendar_id` | string |     ✅    | `"primary"`               | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                                                                                                                                                                                              |

***

### `Google Calendar Acl Insert`

Integration name: **GOOGLECALENDAR\_ACL\_INSERT**

Creates an access control rule for a calendar. Use when you need to grant sharing permissions to a user, group, or domain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example     | Description                                                                                                                                                                                                                                                                                                   |
| -------------------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`               | string  |     ✅    | `"reader"`  | The role assigned to the scope. Possible values are: "none" - Provides no access; "freeBusyReader" - Provides read access to free/busy information; "reader" - Provides read access to the calendar; "writer" - Provides read and write access to the calendar; "owner" - Provides ownership of the calendar. |
| `scope`              | object  |     ✅    | —           | The extent to which calendar access is granted by this ACL rule. Specifies who gets the access (user, group, domain, or default).                                                                                                                                                                             |
| `calendar_id`        | string  |     ✅    | `"primary"` | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                                                                                       |
| `send_notifications` | boolean |          | `true`      | Whether to send notifications about the calendar sharing change. Optional. The default is true.                                                                                                                                                                                                               |

***

### `Google Calendar Acl List`

Integration name: **GOOGLECALENDAR\_ACL\_LIST**

Retrieves the list of access control rules (ACLs) for a specified calendar, providing the necessary 'rule\_id' values required for updating specific ACL rules.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                  | Description                                                                                                                                                                                                                                         |
| ------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageToken`   | string  |          | `" nextPageToken_value"` | Token specifying which result page to return. Optional.                                                                                                                                                                                             |
| `syncToken`   | string  |          | `"nextSyncToken_value"`  | Token obtained from the nextSyncToken field returned on the last page of a previous list operation. It makes the result of this list operation contain only entries that have changed since then. Optional. The default is to retrieve all entries. |
| `calendarId`  | string  |     ✅    | `"primary"`              | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                             |
| `maxResults`  | integer |          | `10`                     | Maximum number of entries returned on one result page. Optional. The default is 100.                                                                                                                                                                |
| `showDeleted` | boolean |          | `false`                  | Whether to include deleted ACLs in the result. Optional. The default is False.                                                                                                                                                                      |

***

### `Google Calendar Acl Patch`

Integration name: **GOOGLECALENDAR\_ACL\_PATCH**

Updates an existing access control rule for a calendar using patch semantics (partial update). This allows modifying specific fields without affecting other properties. IMPORTANT: The ACL rule must already exist on the calendar. This action cannot create new rules. If you receive a 404 Not Found error, the rule does not exist - use ACL insert to create it first, or use ACL list to verify available rules. Each patch request consumes three quota units. For domain-type ACL rules, if PATCH fails with 500 error, this action will automatically fallback to UPDATE method.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| -------------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`               | string  |          | `"reader"`                     | The role assigned to the scope. Possible values are: "none" - Provides no access; "freeBusyReader" - Provides read access to free/busy information; "reader" - Provides read access to the calendar (private events appear but details are hidden); "writer" - Provides read and write access to the calendar (private events and details are visible); "owner" - Provides ownership of the calendar (all permissions of writer plus ability to see and manipulate ACLs). |
| `scope`              | object  |          | —                              | The extent to which calendar access is granted by this ACL rule. Optional for patch operations. Must include `type` (one of: 'user', 'group', 'domain', 'default') and `value` (email address or domain name) for all types except 'default'.                                                                                                                                                                                                                             |
| `rule_id`            | string  |     ✅    | `"user:test.user@example.com"` | ACL rule identifier of an existing rule. IMPORTANT: The rule must already exist on the calendar - this action cannot create new rules, only modify existing ones. Use the ACL list action to find existing rule IDs, or use the ACL insert action to create a new rule first. Format: 'type:value', such as 'user:<email@example.com>' or 'group:<group@example.com>'.                                                                                                    |
| `calendar_id`        | string  |     ✅    | `"primary"`                    | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                                                                                                                                                                                                                                                   |
| `send_notifications` | boolean |          | `true`                         | Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.                                                                                                                                                                                                                                                                                                                   |

***

### `Google Calendar Acl Update`

Integration name: **GOOGLECALENDAR\_ACL\_UPDATE**

Updates an access control rule for the specified calendar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| -------------------- | ------- | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`               | string  |     ✅    | `"reader"`                     | The role assigned to the scope. Possible values are: - "none" - Provides no access. - "freeBusyReader" - Provides read access to free/busy information. - "reader" - Provides read access to the calendar. Private events will appear to users with reader access, but event details will be hidden. - "writer" - Provides read and write access to the calendar. Private events will appear to users with writer access, and event details will be visible. - "owner" - Provides ownership of the calendar. This role has all of the permissions of the writer role with the additional ability to see and manipulate ACLs. |
| `rule_id`            | string  |     ✅    | `"user:test.user@example.com"` | ACL rule identifier.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `calendar_id`        | string  |     ✅    | `"primary"`                    | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `send_notifications` | boolean |          | —                              | Whether to send notifications about the calendar sharing change. Note that there are no notifications on access removal. Optional. The default is True.                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Google Calendar Acl Watch`

Integration name: **GOOGLECALENDAR\_ACL\_WATCH**

Tool to watch for changes to ACL resources. Use when you need to set up real-time notifications for access control list modifications on a calendar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                               | Description                                                                                                                                                                             |
| ------------ | ------ | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"01234567-89ab-cdef-0123456789ab"`   | A UUID or similar unique string that identifies this channel.                                                                                                                           |
| `type`       | string |          | `"web_hook"`                          | The type of delivery mechanism used for this channel. Valid values are "web\_hook" or "webhook".                                                                                        |
| `token`      | string |          | `"target=myApp-myAclChannelDest"`     | An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.                                                                       |
| `params`     | object |          | —                                     | Additional parameters controlling delivery channel behavior. Optional.                                                                                                                  |
| `address`    | string |     ✅    | `"https://example.com/notifications"` | The address where notifications are delivered for this channel.                                                                                                                         |
| `calendarId` | string |     ✅    | `"primary"`                           | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword. |

***

### `Google Calendar Batch Events`

Integration name: **GOOGLECALENDAR\_BATCH\_EVENTS**

Execute up to 1000 event mutations (create/patch/delete) in one Google Calendar HTTP batch request with per-item status/results. Use this to materially reduce round-trips for bulk operations like migrations, cleanup, or large-scale updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                       |
| ------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `fail_fast`  | boolean |          | —       | If true, stop processing after the first batch containing any 4xx error (except 404 on DELETE). Default is false. |
| `operations` | array   |     ✅    | —       | List of batch operations to execute. Maximum 1000 operations per request.                                         |

***

### `Google Calendar Calendar List Delete`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_DELETE**

Tool to remove a calendar from the user's calendar list. Use when you need to unsubscribe from or hide a calendar from the user's list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example     | Description                                                                                                                                                                             |
| ------------- | ------ | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `calendar_id` | string |     ✅    | `"primary"` | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the 'primary' keyword. |

***

### `Google Calendar Calendar List Get`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_GET**

Retrieves metadata for a SINGLE specific calendar from the user's calendar list by its calendar ID. This action requires a calendarId parameter and returns details about that one calendar only. NOTE: This does NOT list all calendars. To list all calendars in the user's calendar list, use GOOGLECALENDAR\_CALENDAR\_LIST\_LIST instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example     | Description                                                                                                                                                                                                                                                                                                           |
| ------------ | ------ | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `calendarId` | string |     ✅    | `"primary"` | Required. The calendar identifier for the single calendar to retrieve. Use 'primary' for the primary calendar of the authenticated user, or provide a specific calendar ID (e.g., an email address or group calendar ID). To find calendar IDs, first use GOOGLECALENDAR\_CALENDAR\_LIST\_LIST to list all calendars. |

***

### `Google Calendar Calendar List Insert`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_INSERT**

Inserts an existing calendar into the user's calendar list, making it visible in the UI. Calendars (e.g., newly created ones) won't appear in the list or UI until explicitly inserted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------- | ------- | :------: | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                   | string  |     ✅    | `"examplecalendar@group.calendar.google.com"` | The identifier of the calendar to insert. Must be a valid calendar ID in email format (e.g., ‘<user@example.com>’ for a user’s calendar or ‘<calendarid@group.calendar.google.com>’ for a shared calendar). Note: The ‘primary’ keyword is not supported for this operation - use the actual email address of the primary calendar instead. The calendar must exist and you must have appropriate access permissions. |
| `hidden`               | boolean |          | —                                             | Whether the calendar has been hidden from the list. Accepts only boolean values: true or false. If not specified, the API defaults to false.                                                                                                                                                                                                                                                                          |
| `colorId`              | string  |          | `"1"`                                         | The color of the calendar. This is an ID referring to an entry in the calendarCore color palette.                                                                                                                                                                                                                                                                                                                     |
| `selected`             | boolean |          | —                                             | Whether the calendar is selected and visible in the calendar list. Accepts only boolean values: true or false. If not specified, the API defaults to false.                                                                                                                                                                                                                                                           |
| `backgroundColor`      | string  |          | `"#000000"`                                   | The background color of the calendar in the Web UI. (Hexadecimal color code)                                                                                                                                                                                                                                                                                                                                          |
| `foregroundColor`      | string  |          | `"#FFFFFF"`                                   | The foreground color of the calendar in the Web UI. (Hexadecimal color code)                                                                                                                                                                                                                                                                                                                                          |
| `summaryOverride`      | string  |          | —                                             | The summary that the authenticated user has set for this calendar.                                                                                                                                                                                                                                                                                                                                                    |
| `color_rgb_format`     | boolean |          | —                                             | Whether to use the foregroundColor and backgroundColor fields to write the calendar colors (RGB). If this feature is used, the index-based colorId field will be set to the best matching option automatically. Optional. The default is False.                                                                                                                                                                       |
| `defaultReminders`     | array   |          | —                                             | The default reminders that the authenticated user has for this calendar.                                                                                                                                                                                                                                                                                                                                              |
| `notificationSettings` | object  |          | —                                             | The notifications that the authenticated user is receiving for this calendar.                                                                                                                                                                                                                                                                                                                                         |

***

### `Google Calendar Calendar List Patch`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_PATCH**

Updates an existing calendar on the user's calendar list using patch semantics. This method allows partial updates, modifying only the specified fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example              | Description                                                                                                                                                 |
| ---------------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `hidden`               | boolean |          | `true`               | Whether calendar is hidden.                                                                                                                                 |
| `colorId`              | string  |          | `"6"`                | ID for calendar color from colors endpoint.                                                                                                                 |
| `selected`             | boolean |          | `true`               | Whether calendar content shows in UI.                                                                                                                       |
| `calendar_id`          | string  |     ✅    | `"primary"`          | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. Use "primary" keyword for the currently logged in user's primary calendar. |
| `colorRgbFormat`       | boolean |          | `true`               | Whether to use RGB for foreground/background colors.                                                                                                        |
| `backgroundColor`      | string  |          | `"#0088aa"`          | Hex color for calendar background.                                                                                                                          |
| `foregroundColor`      | string  |          | `"#ffffff"`          | Hex color for calendar foreground.                                                                                                                          |
| `summaryOverride`      | string  |          | `"My Work Calendar"` | User-set summary for the calendar.                                                                                                                          |
| `defaultReminders`     | array   |          | —                    | List of default reminders.                                                                                                                                  |
| `notificationSettings` | object  |          | —                    | Notification settings for the calendar.                                                                                                                     |

***

### `Google Calendar Calendar List Update`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_UPDATE**

Updates a calendar list entry's display/subscription settings (color, visibility, reminders, selection) for the authenticated user — does not modify the underlying calendar resource (title, timezone, etc.). To modify the calendar itself, use GOOGLECALENDAR\_CALENDARS\_UPDATE.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                       | Description                                                                                                                                                                                                                                                                                            |
| ---------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `hidden`               | boolean |          | `true`                                        | Whether calendar is hidden.                                                                                                                                                                                                                                                                            |
| `colorId`              | string  |          | `"17"`                                        | ID for calendar color from colors endpoint.                                                                                                                                                                                                                                                            |
| `selected`             | boolean |          | `true`                                        | Whether calendar content shows in UI.                                                                                                                                                                                                                                                                  |
| `calendar_id`          | string  |     ✅    | `"examplecalendar@group.calendar.google.com"` | Calendar identifier. Must be an actual calendar ID (e.g., "<examplecalendar@group.calendar.google.com>" or "<c_abc123...@group.calendar.google.com>"). To retrieve valid calendar IDs, use the GOOGLECALENDAR\_LIST\_CALENDARS action first. The "primary" alias is not valid for calendarList.update. |
| `colorRgbFormat`       | boolean |          | `true`                                        | Whether to use RGB for foreground/background colors.                                                                                                                                                                                                                                                   |
| `backgroundColor`      | string  |          | `"#0088aa"`                                   | Hex color for calendar background.                                                                                                                                                                                                                                                                     |
| `foregroundColor`      | string  |          | `"#ffffff"`                                   | Hex color for calendar foreground.                                                                                                                                                                                                                                                                     |
| `summaryOverride`      | string  |          | `"My Work Calendar"`                          | User-set summary for the calendar.                                                                                                                                                                                                                                                                     |
| `defaultReminders`     | array   |          | —                                             | List of default reminders.                                                                                                                                                                                                                                                                             |
| `notificationSettings` | object  |          | —                                             | Notification settings for the calendar.                                                                                                                                                                                                                                                                |

***

### `Google Calendar Calendar List Watch`

Integration name: **GOOGLECALENDAR\_CALENDAR\_LIST\_WATCH**

Watch for changes to CalendarList resources using push notifications. Use this to receive real-time updates when calendar list entries are modified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                             | Description                                                                                                                                            |
| ------------ | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`         | string  |     ✅    | `"01234567-89ab-cdef-0123456789ab"` | A UUID or similar unique string that identifies this channel. Maximum 64 characters.                                                                   |
| `type`       | string  |     ✅    | `"web_hook"`                        | The type of delivery mechanism used for this channel. Must be "web\_hook" or "webhook".                                                                |
| `token`      | string  |          | `"verification-token-123"`          | An arbitrary string delivered to the target address with each notification. Maximum 256 characters. Used for channel verification and message routing. |
| `params`     | object  |          | —                                   | Additional parameters controlling delivery channel behavior.                                                                                           |
| `address`    | string  |     ✅    | `"https://example.com/webhook"`     | The HTTPS URL where notifications are delivered for this channel. Must have a valid SSL certificate.                                                   |
| `expiration` | integer |          | `1735689600000`                     | Unix timestamp in milliseconds indicating when the API should stop sending notifications.                                                              |

***

### `Google Calendar Calendars Delete`

Integration name: **GOOGLECALENDAR\_CALENDARS\_DELETE**

Deletes a secondary calendar that you own or have delete permissions on. Deletion is permanent and irreversible — verify the correct calendar\_id before calling. You cannot delete your primary calendar or calendars you only have read/write access to. Use calendarList.list to find calendars with owner accessRole. For primary calendars, use calendars.clear instead. Parallel calls may trigger userRateLimitExceeded; sequence bulk deletions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                           | Description                                                                                                                                                                                                                                         |
| ------------- | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `calendar_id` | string |     ✅    | `"example_calendar_id@group.calendar.google.com"` | Calendar identifier for a secondary calendar you own or have delete permissions on. Use calendarList.list to find deletable calendar IDs (look for accessRole "owner"). Primary calendars cannot be deleted; use the Clear Calendar action instead. |

***

### `Google Calendar Calendars Update`

Integration name: **GOOGLECALENDAR\_CALENDARS\_UPDATE**

Full PUT-style update that overwrites all calendar metadata fields; unspecified optional fields are cleared. Use GOOGLECALENDAR\_PATCH\_CALENDAR to update only a subset of fields. Mutates the underlying calendar resource (title, description, timeZone, etc.); use GOOGLECALENDAR\_CALENDAR\_LIST\_UPDATE to change per-user display properties like color.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `summary`     | string |     ✅    | —       | Title of the calendar. Must be a non-empty string; passing an empty string clears the calendar title.                                                                                                                                                                                                                                                                                                                                                                                            |
| `location`    | string |          | —       | Geographic location of the calendar as free-form text. Optional.                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `timeZone`    | string |          | —       | The time zone of the calendar. (Formatted as an IANA Time Zone Database name, e.g. "Europe/Zurich".) Optional.                                                                                                                                                                                                                                                                                                                                                                                   |
| `calendarId`  | string |     ✅    | —       | Calendar identifier. Use 'primary' to update the primary calendar of the currently logged in user, or provide a specific calendar ID (typically in email format like '<abc123@group.calendar.google.com>'). To retrieve calendar IDs call the calendarList.list method. IMPORTANT: This is NOT the calendar's display name/title. NOTE: For better performance, prefer providing the actual calendar ID instead of 'primary', as the 'primary' alias requires an additional API call to resolve. |
| `description` | string |          | —       | Description of the calendar. Optional.                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Google Calendar Channels Stop`

Integration name: **GOOGLECALENDAR\_CHANNELS\_STOP**

Tool to stop watching resources through a notification channel. Use when you need to discontinue push notifications for a specific channel subscription.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                       |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"4ba78bf0-6a47-11e2-bcfd-0800200c9a66"` | A UUID or similar unique string that identifies this channel.                                                     |
| `token`      | string |          | —                                        | An arbitrary string delivered to the target address with each notification delivered over this channel. Optional. |
| `resourceId` | string |     ✅    | `"Glz7TVFWTQFgQtbe1Sgnrfno6FM"`          | An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.    |

***

### `Google Calendar Clear Calendar`

Integration name: **GOOGLECALENDAR\_CLEAR\_CALENDAR**

Clears a primary calendar by deleting all events from it. The calendar itself is preserved; only its events are removed. Primary calendars cannot be deleted entirely.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example     | Description                                                                                                                                                                                 |
| ------------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `calendar_id` | string |     ✅    | `"primary"` | Calendar identifier. To retrieve calendar IDs call the `calendarList.list` method. If you want to access the primary calendar of the currently logged in user, use the "`primary`" keyword. |

***

### `Google Calendar Colors Get`

Integration name: **GOOGLECALENDAR\_COLORS\_GET**

Returns the color definitions for calendars and events. Use when you need to retrieve the available color palette for styling calendars or events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Google Calendar Create Event`

Integration name: **GOOGLECALENDAR\_CREATE\_EVENT**

Create a Google Calendar event using start\_datetime plus duration fields. The organizer is added as an attendee unless exclude\_organizer is True. By default adds Google Meet link (works for Workspace, gracefully falls back for personal Gmail). Attendees can be email strings (required) or objects with email and optional fields. No conflict checking is performed; use GOOGLECALENDAR\_FREE\_BUSY\_QUERY to detect overlaps before creating. Returns event id and htmlLink nested under data.response\_data. Example: { "start\_datetime": "2025-01-16T13:00:00", "timezone": "America/New\_York", "event\_duration\_hour": 1, "event\_duration\_minutes": 30, "summary": "Client sync", "attendees": \["<required@example.com>", {"email": "<optional@example.com>", "optional": true}] }

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------------------------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `summary`                   | string  |          | —           | Summary (title) of the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `location`                  | string  |          | —           | Geographic location of the event as free-form text.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `timezone`                  | string  |          | —           | IANA timezone name from the timezone database (e.g., 'America/New\_York', 'Europe/London', 'Asia/Jerusalem', 'UTC'). Required if datetime is naive. For recurring events, start and end must include a timeZone. If not provided, UTC is used. If datetime includes timezone info (Z or offset), this field is optional and defaults to UTC. IMPORTANT: Must be a valid IANA timezone identifier. Values like 'EST', 'PST', 'ISRAEL TIME', or other abbreviations are NOT valid IANA timezone names.                                                                                                                                          |
| `attendees`                 | array   |          | —           | List of attendees. Each attendee can be either: (1) A string email address (e.g., '<user@example.com>'), or (2) An object with 'email' (required), 'optional' (boolean, default false), 'displayName' (string), 'comment' (string), 'additionalGuests' (integer), and 'resource' (boolean). To mark an attendee as optional (not required), use object format: {'email': '<user@example.com>', 'optional': true}. IMPORTANT: Only valid email addresses are accepted. Plain names cannot be used.                                                                                                                                             |
| `eventType`                 | string  |          | —           | Type of the event, immutable post-creation. 'workingLocation' (REQUIRES Google Workspace Enterprise). Note: 'fromGmail' events cannot be created via API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `recurrence`                | array   |          | —           | List of RRULE, EXRULE, RDATE, EXDATE lines for recurring events. Supported frequencies: DAILY, WEEKLY, MONTHLY, YEARLY. For recurring events, start.timeZone and end.timeZone must be present. UNTIL values follow RFC 5545: date-only (YYYYMMDD) for all-day events, or UTC datetime with Z suffix (YYYYMMDDTHHMMSSZ) for timed events. UNTIL values with time but missing Z suffix are auto-corrected. Provide an empty list to remove recurrence so the event becomes non-recurring.                                                                                                                                                       |
| `visibility`                | string  |          | —           | Event visibility: 'default', 'public', 'private', or 'confidential'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `calendar_id`               | string  |          | `"primary"` | Calendar identifier. Use 'primary' (recommended) for the user's main calendar. Alternatively, use a calendar ID from the user's accessible calendar list. Calendar IDs look like email addresses (e.g., '<xyz@group.calendar.google.com>' for shared calendars). Important: Arbitrary email addresses will NOT work - the calendar must exist in the user's calendar list with appropriate access permissions. Use GOOGLECALENDAR\_LIST\_CALENDARS to retrieve valid calendar IDs.                                                                                                                                                            |
| `description`               | string  |          | —           | Description of the event. Can contain HTML. Optional. Must be omitted for 'birthday' event type.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `end_datetime`              | string  |          | —           | Event end time in ISO 8601 format: YYYY-MM-DDTHH:MM:SS. When provided, this parameter takes precedence over event\_duration\_hour and event\_duration\_minutes. If not provided, the end time is calculated using start\_datetime + duration. Must be after start\_datetime. Fractional seconds and timezone info will be automatically stripped if provided. Examples: '2025-01-16T14:30:00', '2025-01-16T14:30'.                                                                                                                                                                                                                            |
| `send_updates`              | string  |          | —           | Options for who should receive notifications about event changes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `transparency`              | string  |          | —           | 'opaque' (busy) or 'transparent' (available).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `start_datetime`            | string  |     ✅    | —           | REQUIRED. Event start time in ISO 8601 format: YYYY-MM-DDTHH:MM:SS. IMPORTANT: Natural language expressions like 'tomorrow', 'next Monday', '2pm tomorrow' are NOT supported and will be rejected. You must provide the exact date and time in ISO format. Fractional seconds (e.g., .000) and timezone info (Z, +, -) will be automatically stripped if provided. Examples: '2025-01-16T13:00:00', '2025-01-16T13:00'.                                                                                                                                                                                                                       |
| `guestsCanModify`           | boolean |          | —           | If True, guests can modify the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `exclude_organizer`         | boolean |          | —           | If True, the organizer will NOT be added as an attendee. Default is False (organizer is included).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `birthdayProperties`        | object  |          | —           | Properties for birthday events.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `create_meeting_room`       | boolean |          | —           | Defaults to True. When True, for CREATE operations creates a Google Meet link; for UPDATE operations preserves existing conference data if present, or adds a new Meet link if none exists. Google Workspace accounts will successfully receive a Meet link. Personal Gmail accounts and other unsupported accounts will gracefully fallback to creating an event without a Meet link when conference creation fails. Set to False to skip Meet link operations (won't create new or modify existing conference data). The fallback ensures event creation succeeds even when conference features are unavailable due to account limitations. |
| `event_duration_hour`       | integer |          | —           | Number of hours for the event duration. Supports multi-day events (e.g., 240 hours = 10 days). For durations under 1 hour, use event\_duration\_minutes instead. Ignored if end\_datetime is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `extended_properties`       | object  |          | —           | Extended properties of the event for storing custom metadata. Contains 'private' (visible only on this calendar) and/or 'shared' (visible to all attendees) dictionaries mapping string keys to string values. Example: {'private': {'key1': 'value1'}, 'shared': {'key2': 'value2'}}                                                                                                                                                                                                                                                                                                                                                         |
| `focusTimeProperties`       | object  |          | —           | Properties for focusTime events. REQUIRES Google Workspace Enterprise account with Focus Time feature enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `guestsCanInviteOthers`     | boolean |          | —           | Whether attendees other than the organizer can invite others to the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `outOfOfficeProperties`     | object  |          | —           | Properties for outOfOffice events.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `event_duration_minutes`    | integer |          | —           | Duration in minutes (0-59 ONLY). NEVER use 60+ minutes - use event\_duration\_hour=1 instead. Maximum value is 59. Combined duration (hours + minutes) must be greater than 0. Ignored if end\_datetime is provided.                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `guestsCanSeeOtherGuests`   | boolean |          | —           | Whether attendees other than the organizer can see who the event's attendees are.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `workingLocationProperties` | object  |          | —           | Properties for workingLocation events. REQUIRES Google Workspace Enterprise. Constraints discovered from testing: - Must set transparency='transparent' and visibility='public' - Description must be omitted - Depending on 'type', include one of 'homeOffice', 'officeLocation', or 'customLocation'                                                                                                                                                                                                                                                                                                                                       |

***

### `Google Calendar Delete Event`

Integration name: **GOOGLECALENDAR\_DELETE\_EVENT**

Deletes a specified event by `event_id` from a Google Calendar (`calendar_id`); idempotent — a 404 for an already-deleted event is a no-op. Bulk deletions may trigger `rateLimitExceeded` or `userRateLimitExceeded`; cap concurrency to 5–10 requests and apply exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| -------------------- | ------- | :------: | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`           | string  |     ✅    | —           | Unique identifier of the event to delete. For standalone events, use the base event ID (e.g., 'abc123def456'). For recurring event instances, use the instance ID format 'baseEventId\_YYYYMMDDTHHMMSSZ' (e.g., 'abc123def456\_20260522T093000Z') where the timestamp suffix represents the instance's original start time in UTC. Instance IDs can be obtained from the EVENTS\_INSTANCES action. To delete ALL occurrences of a recurring event, use the base event ID without the timestamp suffix. Must be the internal API identifier from a prior API response — UI-visible identifiers, URL-encoded variants, or shortened IDs are invalid and cause 404/validation errors. |
| `calendar_id`        | string  |          | `"primary"` | Identifier of the Google Calendar (e.g., email address, specific ID, or 'primary' for the authenticated user's main calendar) from which the event will be deleted. Read-only or subscribed calendars (calendars not owned by the authenticated user) return 403 on deletion attempts.                                                                                                                                                                                                                                                                                                                                                                                             |
| `send_updates`       | string  |          | —           | Options for who should receive notifications about event changes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `send_notifications` | boolean |          | —           | Deprecated. Whether to send notifications about the deletion of the event. Note that some emails might still be sent.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Google Calendar Duplicate Calendar`

Integration name: **GOOGLECALENDAR\_DUPLICATE\_CALENDAR**

Creates a new, empty Google Calendar with the specified title (summary). Newly created calendars default to UTC timezone; use GOOGLECALENDAR\_PATCH\_CALENDAR afterward to set the desired timeZone if needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                 | Description                                                                               |
| --------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------------------------- |
| `summary` | string |     ✅    | `"Project Alpha Tasks"` | Title for the new Google Calendar to be created. Required and must be a non-empty string. |

***

### `Google Calendar Events Get`

Integration name: **GOOGLECALENDAR\_EVENTS\_GET**

Retrieves a SINGLE event by its unique event\_id (REQUIRED). This action does NOT list or search events - it fetches ONE specific event when you already know its ID. If you want to list events within a time range, search for events, or filter by criteria like time\_min/time\_max, use GOOGLECALENDAR\_EVENTS\_LIST instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                              | Description                                                                                                                                                                                                                                                                                                                              |
| --------------- | ------- | :------: | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`      | string  |     ✅    | `"0a9160c4c367855d09a84f8d4350bda2"` | REQUIRED. The unique identifier of the specific event to retrieve. You must already know this ID (e.g., from a previous EVENTS\_LIST call or event creation response). This action fetches ONE event by ID - it cannot list or search events. To find events by time range or search criteria, use GOOGLECALENDAR\_EVENTS\_LIST instead. |
| `time_zone`     | string  |          | `"America/New_York"`                 | Time zone used in the response. If not specified, the calendar's time zone is used.                                                                                                                                                                                                                                                      |
| `calendar_id`   | string  |          | `"primary"`                          | Identifier of the Google Calendar (e.g., email address, specific ID, or 'primary' for the authenticated user's main calendar) from which to retrieve the event.                                                                                                                                                                          |
| `max_attendees` | integer |          | —                                    | Maximum number of attendees to include in the response. If there are more than the specified number, only the participant is returned.                                                                                                                                                                                                   |

***

### `Google Calendar Events Import`

Integration name: **GOOGLECALENDAR\_EVENTS\_IMPORT**

Tool to import an event as a private copy to a calendar. Use when you need to add an existing event to a calendar using its iCalUID. Only events with eventType='default' can be imported.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                                                                   |
| ------------------------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `end`                     | object  |     ✅    | —                                       | The (exclusive) end time of the event. For all-day events, use 'date' field; for timed events, use 'dateTime' and 'timeZone' fields.                                                                                                                                                                          |
| `start`                   | object  |     ✅    | —                                       | The (inclusive) start time of the event. For all-day events, use 'date' field; for timed events, use 'dateTime' and 'timeZone' fields. `dateTime` must be ISO 8601 format (e.g., `'2024-01-15T10:00:00'`); `timeZone` should match the calendar's timezone to avoid shifted times.                            |
| `source`                  | object  |          | —                                       | Source from which the event was created.                                                                                                                                                                                                                                                                      |
| `status`                  | string  |          | `"confirmed"`                           | Status of the event. Possible values: 'confirmed', 'tentative', 'cancelled'.                                                                                                                                                                                                                                  |
| `colorId`                 | string  |          | —                                       | The color of the event. This is an ID referring to an entry in the event colors definition.                                                                                                                                                                                                                   |
| `iCalUID`                 | string  |     ✅    | `"test-event-import-12345@example.com"` | Event unique identifier as defined in RFC5545. This is required to identify the event being imported.                                                                                                                                                                                                         |
| `summary`                 | string  |          | —                                       | Title of the event.                                                                                                                                                                                                                                                                                           |
| `location`                | string  |          | —                                       | Geographic location of the event as free-form text.                                                                                                                                                                                                                                                           |
| `sequence`                | integer |          | —                                       | Sequence number as per iCalendar.                                                                                                                                                                                                                                                                             |
| `attendees`               | array   |          | —                                       | The attendees of the event.                                                                                                                                                                                                                                                                                   |
| `reminders`               | object  |          | —                                       | Information about the event's reminders for the authenticated user.                                                                                                                                                                                                                                           |
| `recurrence`              | array   |          | —                                       | List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as specified in RFC5545. Each string must include the full prefix (e.g., `'RRULE:FREQ=WEEKLY;BYDAY=MO'`); omitting the prefix causes a 400 error.                                                                                        |
| `visibility`              | string  |          | —                                       | Visibility of the event. Possible values: 'default', 'public', 'private', 'confidential'. Default: 'default'.                                                                                                                                                                                                 |
| `attachments`             | array   |          | —                                       | File attachments for the event.                                                                                                                                                                                                                                                                               |
| `calendar_id`             | string  |          | `"primary"`                             | Calendar identifier. Use 'primary' for the logged-in user's primary calendar or the calendar's email address.                                                                                                                                                                                                 |
| `description`             | string  |          | —                                       | Description of the event. Can contain HTML.                                                                                                                                                                                                                                                                   |
| `transparency`            | string  |          | —                                       | Whether the event blocks time on the calendar. Possible values: 'opaque' (blocks time), 'transparent' (does not block time). Default: 'opaque'.                                                                                                                                                               |
| `guestsCanModify`         | boolean |          | —                                       | Whether attendees other than the organizer can modify the event. Default: False.                                                                                                                                                                                                                              |
| `extendedProperties`      | object  |          | —                                       | Extended properties of the event.                                                                                                                                                                                                                                                                             |
| `supportsAttachments`     | boolean |          | —                                       | Whether API client performing operation supports event attachments. Default: False.                                                                                                                                                                                                                           |
| `conferenceDataVersion`   | integer |          | —                                       | Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. Default: 0. |
| `guestsCanInviteOthers`   | boolean |          | —                                       | Whether attendees other than the organizer can invite others to the event. Default: True.                                                                                                                                                                                                                     |
| `guestsCanSeeOtherGuests` | boolean |          | —                                       | Whether attendees other than the organizer can see who the event's attendees are. Default: True.                                                                                                                                                                                                              |

***

### `Google Calendar Events Instances`

Integration name: **GOOGLECALENDAR\_EVENTS\_INSTANCES**

Returns instances of the specified recurring event. Use timeMin/timeMax to constrain the window; omitting bounds can return large result sets and is quota-heavy. On high-volume calls, 403 rateLimitExceeded or 429 too\_many\_requests may occur; apply exponential backoff (1s, 2s, 4s) before retrying.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                        |
| --------------- | ------- | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `eventId`       | string  |     ✅    | `"a1b2c3d4e5f6g7h8i9j0k1l2m3"` | REQUIRED. The ID of the recurring event whose instances you want to retrieve. You must first use GOOGLECALENDAR\_FIND\_EVENT or GOOGLECALENDAR\_EVENTS\_LIST to find recurring events and get their IDs. This action only works with recurring events that have a recurrence rule. |
| `timeMax`       | string  |          | `"2024-07-31T23:59:59Z"`       | Upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset.                                                                                                |
| `timeMin`       | string  |          | `"2024-07-01T00:00:00Z"`       | Lower bound (inclusive) for an event's end time to filter by. Optional. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset.                                                                                                    |
| `timeZone`      | string  |          | `"America/Los_Angeles"`        | Time zone used in the response. Optional. The default is the time zone of the calendar.                                                                                                                                                                                            |
| `pageToken`     | string  |          | —                              | Token specifying which result page to return. Optional.                                                                                                                                                                                                                            |
| `calendarId`    | string  |     ✅    | `"primary"`                    | Calendar identifier. To retrieve calendar IDs call the `calendarList.list` method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.                                                                                          |
| `maxResults`    | integer |          | `100`                          | Maximum number of events returned on one result page. By default the value is 250 events. The page size can never be larger than 2500 events. Optional.                                                                                                                            |
| `showDeleted`   | boolean |          | `true`                         | Whether to include deleted events (with status equals "cancelled") in the result. Cancelled instances of recurring events will still be included if `singleEvents` is False. Optional. The default is False.                                                                       |
| `maxAttendees`  | integer |          | `5`                            | The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional.                                                                                                                  |
| `originalStart` | string  |          | `"2024-07-15T10:00:00Z"`       | The original start time of the instance in the result. Optional.                                                                                                                                                                                                                   |

***

### `Google Calendar Events List`

Integration name: **GOOGLECALENDAR\_EVENTS\_LIST**

Returns events on the specified calendar. TIMEZONE WARNING: When using timeMin/timeMax with UTC timestamps (ending in 'Z'), the time window is interpreted in UTC regardless of the calendar's timezone. For example, querying '2026-01-19T00:00:00Z' to '2026-01-20T00:00:00Z' on a calendar in America/Los\_Angeles (UTC-8) covers 2026-01-18 4pm to 2026-01-19 4pm local time, potentially missing events on the intended local date. To query for a specific local date, use timestamps with the appropriate timezone offset in timeMin/timeMax (e.g., '2026-01-19T00:00:00-08:00' for PST).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type    | Required | Example     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------------------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                             | string  |          | —           | Free text search terms to find events that match these terms in various fields. Optional.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `iCalUID`                       | string  |          | —           | Specifies an event ID in the iCalendar format to be provided in the response. Optional. Use this if you want to search for an event by its iCalendar ID.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `orderBy`                       | string  |          | —           | The order of the events returned in the result. Optional. The default is an unspecified, stable order. Acceptable values are: "startTime", "updated". When set to "startTime", singleEvents must be true. The action automatically sets singleEvents=true when orderBy='startTime'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `timeMax`                       | string  |          | —           | Upper bound (exclusive) for an event's start time to filter by. Optional. If unset, no start-time upper bound is applied. Must be an RFC3339 timestamp with mandatory time zone offset (e.g., 2011-06-03T10:00:00-07:00 or 2011-06-03T10:00:00Z). Milliseconds may be provided but are ignored. If timeMin is set, timeMax must be greater than timeMin. TIMEZONE WARNING: If using UTC times (ending in 'Z') but the calendar is in a different timezone, the time window may not align with local calendar dates. For example, '2026-01-19T00:00:00Z' to '2026-01-20T00:00:00Z' covers 2026-01-18 4pm to 2026-01-19 4pm in America/Los\_Angeles (UTC-8). To query a specific local date, use timestamps with the appropriate local timezone offset (e.g., '2026-01-19T00:00:00-08:00' for PST). NOTE: Natural language expressions like 'today', 'tomorrow', 'next week' are NOT supported. |
| `timeMin`                       | string  |          | —           | Lower bound (exclusive) for an event's end time to filter by. Optional. If unset, no end-time lower bound is applied. Must be an RFC3339 timestamp with mandatory time zone offset (e.g., 2011-06-03T10:00:00-07:00 or 2011-06-03T10:00:00Z). Milliseconds may be provided but are ignored. If timeMax is set, timeMin must be smaller than timeMax. TIMEZONE WARNING: If using UTC times (ending in 'Z') but the calendar is in a different timezone, the time window may not align with local calendar dates. For example, '2026-01-19T00:00:00Z' to '2026-01-20T00:00:00Z' covers 2026-01-18 4pm to 2026-01-19 4pm in America/Los\_Angeles (UTC-8). To query a specific local date, use timestamps with the appropriate local timezone offset (e.g., '2026-01-19T00:00:00-08:00' for PST). NOTE: Natural language expressions like 'today', 'tomorrow', 'next week' are NOT supported.     |
| `timeZone`                      | string  |          | —           | Time zone used in the response for formatting event times. Optional. Use an IANA time zone identifier (e.g., America/Los\_Angeles). Defaults to the user's primary time zone. Offsets (e.g., '-03:00', 'UTC+0') and abbreviations (e.g., 'IST', 'PST') are invalid. NOTE: This parameter only affects how event times are displayed in the response. It does NOT change how timeMin/timeMax filtering is interpreted. To query a specific local date, use timestamps with the appropriate timezone offset directly in timeMin/timeMax (e.g., '2026-01-19T00:00:00-08:00').                                                                                                                                                                                                                                                                                                                    |
| `pageToken`                     | string  |          | —           | Opaque pagination token from a previous response's nextPageToken field. Must be the exact string returned by the API - do not use placeholder values like 'NEXT', 'next', '1', '2', etc. Omit this parameter entirely for the first page of results. Optional.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `syncToken`                     | string  |          | —           | Token from nextSyncToken to return only entries changed since the last list. Cannot be combined with iCalUID, orderBy, privateExtendedProperty, q, sharedExtendedProperty, timeMin, timeMax, or updatedMin. Deletions since the previous list are always included; showDeleted cannot be false in this mode. The action automatically removes conflicting parameters when syncToken is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `calendarId`                    | string  |          | `"primary"` | Calendar identifier. Use "primary" for the user's main calendar, or a calendar ID from the user's accessible calendar list. Arbitrary email addresses will NOT work - the calendar must exist in the user's calendar list. Use GOOGLECALENDAR\_LIST\_CALENDARS to retrieve valid calendar IDs. Defaults to "primary". Empty strings will be treated as "primary". Do NOT use Composio internal IDs like connectedAccountId (which start with "ca\*") - these will be automatically replaced with "primary".                                                                                                                                                                                                                                                                                                                                                                                   |
| `eventTypes`                    | string  |          | —           | Event types to return. Optional. Pass a single value only. If unset, returns all event types. Acceptable values are: "birthday", "default", "focusTime", "fromGmail", "outOfOffice", "workingLocation".                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `maxResults`                    | integer |          | —           | Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query. Incomplete pages can be detected by a non-empty nextPageToken field in the response. By default the value is 250 events. The page size can never be larger than 2500 events. Optional. Must be >= 1 if provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `updatedMin`                    | string  |          | —           | Lower bound for an event's last modification time (RFC3339). When specified, entries deleted since this time are always included regardless of showDeleted. Optional.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `showDeleted`                   | boolean |          | —           | Include cancelled events (status="cancelled"). Optional; default is false. This surfaces cancelled (soft-deleted) events, not items in the Trash. When syncToken or updatedMin is used, deletions since those markers are included regardless of showDeleted. Recurring interaction: if singleEvents=false and showDeleted=false, cancelled instances of a recurring series may still be included; if showDeleted=true and singleEvents=true, only single deleted instances (not parent series) are returned.                                                                                                                                                                                                                                                                                                                                                                                 |
| `maxAttendees`                  | integer |          | —           | The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned. Optional. Must be >= 1 if provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `singleEvents`                  | boolean |          | —           | Whether to expand recurring events into instances and only return single one-off events and instances of recurring events. Optional. The default is False.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `alwaysIncludeEmail`            | boolean |          | —           | Deprecated and ignored.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `showHiddenInvitations`         | boolean |          | —           | Whether to include hidden invitations in the result. Optional. The default is False. Hidden invitations are events where your attendee entry has responseStatus='needsAction' and attendees\[].self==true. When true, such invitations are included.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `sharedExtendedProperty`        | string  |          | —           | Extended properties constraint specified as propertyName=value. Matches only shared properties. This parameter might be repeated multiple times to return events that match all given constraints.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `privateExtendedProperty`       | string  |          | —           | Extended properties constraint specified as propertyName=value. Matches only private properties. This parameter might be repeated multiple times to return events that match all given constraints.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `composio_replaced_calendar_id` | string  |          | —           | Internal field to track if calendarId was replaced                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |

***

### `Google Calendar Events List All Calendars`

Integration name: **GOOGLECALENDAR\_EVENTS\_LIST\_ALL\_CALENDARS**

Return a unified event list across all calendars in the user's calendar list for a given time range. Use when you need a single view of all events across multiple calendars. An inverted or incorrect time range silently returns empty results rather than an error. An empty `items` list means no events matched the filters—adjust `time_min`, `time_max`, or `q` before concluding no events exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example | Description                                                                                                                                                                                                                                                              |
| -------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `q`                        | string  |          | —       | Free text search terms to find events that match these terms in any field, except for extended properties. Optional.                                                                                                                                                     |
| `time_max`                 | string  |     ✅    | —       | Upper bound (exclusive) for an event's start time to filter by. Must be an RFC3339 timestamp with mandatory time zone offset (e.g., 2011-06-03T10:00:00-07:00 or 2011-06-03T10:00:00Z). If timezone offset is missing, UTC (Z) will be automatically appended. Required. |
| `time_min`                 | string  |     ✅    | —       | Lower bound (inclusive) for an event's end time to filter by. Must be an RFC3339 timestamp with mandatory time zone offset (e.g., 2011-06-03T10:00:00-07:00 or 2011-06-03T10:00:00Z). If timezone offset is missing, UTC (Z) will be automatically appended. Required.   |
| `event_types`              | array   |          | —       | Event types to return. Optional.                                                                                                                                                                                                                                         |
| `calendar_ids`             | array   |          | —       | Optional list of specific calendar IDs to query. If not provided, all calendars from the user's calendar list will be queried.                                                                                                                                           |
| `show_deleted`             | boolean |          | —       | Whether to include deleted events (with status equals 'cancelled') in the result. Optional. The default is False.                                                                                                                                                        |
| `single_events`            | boolean |          | —       | Whether to expand recurring events into instances and only return single one-off events and instances of recurring events. Optional. The default is True.                                                                                                                |
| `response_detail`          | string  |          | —       | Level of detail in the response. 'minimal' (default) returns only the compact summary\_view, omitting the large events array to reduce token usage. 'full' returns both summary\_view and the full detailed events array.                                                |
| `max_results_per_calendar` | integer |          | —       | Maximum number of events returned per calendar. Optional. If not provided, defaults to the API's default (250). Results may be paginated; follow `nextPageToken` in the response until absent to retrieve the complete event list.                                       |

***

### `Google Calendar Events Move`

Integration name: **GOOGLECALENDAR\_EVENTS\_MOVE**

Moves an event to another calendar, i.e., changes an event's organizer.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                        | Description                                                                                                                                                                                                         |
| -------------- | ------ | :------: | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`     | string |     ✅    | `"7cbh8j70fer2s71jgm1bmeb0f1"` | Event identifier. To retrieve event identifiers call the events.list method.                                                                                                                                        |
| `calendar_id`  | string |     ✅    | `"primary"`                    | Calendar identifier of the source calendar. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword.      |
| `destination`  | string |     ✅    | `"secondaryCalendarId"`        | Calendar identifier of the destination calendar. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword. |
| `send_updates` | string |          | `"all"`                        | Options for who should receive notifications about event changes.                                                                                                                                                   |

***

### `Google Calendar Events Watch`

Integration name: **GOOGLECALENDAR\_EVENTS\_WATCH**

Watch for changes to Events resources. Watch channels expire; persist the channel `id` per `calendarId` to re-establish watches after expiration or restarts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                | Description                                                                                                                                                                             |
| ------------ | ------- | :------: | -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`         | string  |     ✅    | `"01234567-89ab-cdef-0123456789ab"`    | A UUID or similar unique string that identifies this channel.                                                                                                                           |
| `type`       | string  |          | `"web_hook"`                           | The type of delivery mechanism used for this channel.                                                                                                                                   |
| `token`      | string  |          | `"target=myApp-myCalendarChannelDest"` | An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.                                                                       |
| `params`     | object  |          | —                                      | Additional parameters controlling delivery channel behavior. Optional.                                                                                                                  |
| `address`    | string  |     ✅    | `"https://example.com/notifications"`  | The address where notifications are delivered for this channel. Must be a publicly accessible HTTPS URL; http\:// or localhost URLs will not receive notifications.                     |
| `payload`    | boolean |          | —                                      | A Boolean value to indicate whether payload is wanted. Optional.                                                                                                                        |
| `calendarId` | string  |     ✅    | `"primary"`                            | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the "primary" keyword. |

***

### `Google Calendar Find Event`

Integration name: **GOOGLECALENDAR\_FIND\_EVENT**

Finds events in a specified Google Calendar using text query, time ranges (event start/end, last modification), and event types. Ensure `timeMin` is not chronologically after `timeMax` if both are provided. Results may span multiple pages; always follow `nextPageToken` until absent to avoid silently missing events. Validate the correct match from results by checking summary, start.dateTime, and organizer.email before using event\_id for mutations. An empty `items` array means no events matched — widen filters rather than treating it as an error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`         | string  |          | `"Project Alpha Review"` | Free-text search terms to find events. This query is matched against various event fields including summary, description, location, attendees' details (displayName, email), and organizer's details. Cannot search by event\_id. Performs full-text match (not exact); broad terms may return unrelated events. For person-based matching, prefer attendees\[].email over display names. If results appear incomplete, use GOOGLECALENDAR\_EVENTS\_LIST with client-side filtering.                                                                                                                                                                                  |
| `order_by`      | string  |          | `"startTime"`            | Order of events: 'startTime' (ascending by start time) or 'updated' (ascending by last modification time). Note: 'startTime' requires single\_events=true. Use 'updated' if you need to include recurring masters (e.g., cancelled series).                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `time_max`      | string  |          | `"2024-12-31T23:59:59Z"` | Upper bound (exclusive) for an event's start time to filter by. Only events starting before this time are included. Accepts multiple formats: 1. RFC3339 timestamp (e.g., '2024-12-06T13:00:00Z') 2. Comma-separated date/time parts (e.g., '2024,12,06,13,00,00') 3. Simple datetime string (e.g., '2024-12-06 13:00:00') Set to the first instant after the desired period to avoid missing boundary events, especially all-day events (date-only fields). Overly wide ranges expand many recurring instances, causing large payloads and high latency — constrain to the minimum required window.                                                                  |
| `time_min`      | string  |          | `"2024-01-01T00:00:00Z"` | Lower bound (exclusive) for an event's end time to filter by. Only events ending after this time are included. Accepts multiple formats: 1. RFC3339 timestamp (e.g., '2024-12-06T13:00:00Z') 2. Comma-separated date/time parts (e.g., '2024,12,06,13,00,00') 3. Simple datetime string (e.g., '2024-12-06 13:00:00') RFC3339 timestamps must include explicit timezone offsets; missing or mismatched offsets can silently exclude matching events. To align with the calendar's timezone, retrieve it via GOOGLECALENDAR\_GET\_CALENDAR.                                                                                                                            |
| `page_token`    | string  |          | —                        | Token from a previous response's `nextPageToken` to fetch the subsequent page of results. Always follow every `nextPageToken` until absent; skipping pagination silently omits events on busy calendars.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `calendar_id`   | string  |          | `"primary"`              | Identifier of the Google Calendar to query. IMPORTANT: This must be a valid calendar identifier, NOT a calendar name/title. Valid formats are: 'primary' (the authenticated user's primary calendar), an email address (e.g., '<user@example.com>'), or a calendar ID (e.g., '<abc123xyz@group.calendar.google.com>'). To find the calendar ID for a named calendar, first use the List Calendars action (GOOGLECALENDAR\_LIST\_CALENDARS) to retrieve all available calendars with their IDs. 'primary' searches only the authenticated user's primary calendar; to search all calendars, retrieve each ID via GOOGLECALENDAR\_LIST\_CALENDARS and query separately. |
| `event_types`   | array   |          | `"default"`              | Event types to include. Supported values: 'birthday', 'default', 'focusTime', 'outOfOffice', 'workingLocation'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `max_results`   | integer |          | —                        | Maximum number of events per page (1-2500).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `updated_min`   | string  |          | `"2024-07-01T00:00:00Z"` | Lower bound (exclusive) for an event's last modification time to filter by. Only events updated after this time are included. When specified, events deleted since this time are also included, regardless of the `show_deleted` parameter. Accepts multiple formats: 1. RFC3339 timestamp (e.g., '2024-12-06T13:00:00Z') 2. Comma-separated date/time parts (e.g., '2024,12,06,13,00,00') 3. Simple datetime string (e.g., '2024-12-06 13:00:00')                                                                                                                                                                                                                    |
| `show_deleted`  | boolean |          | —                        | Include events whose status is 'cancelled'. This surfaces cancelled/deleted events, not a separate 'trash' view. Behavior with recurring events: when single\_events=true, only individual cancelled instances are returned (the recurring master is omitted); to include cancelled recurring masters, set single\_events=false. If updated\_min is provided, events deleted since that time are included regardless of this flag.                                                                                                                                                                                                                                    |
| `single_events` | boolean |          | —                        | When true, recurring event series are expanded into their individual instances. When false, only the recurring master events are returned. Note: Ordering by 'startTime' requires singleEvents=true. For large calendars, it is strongly recommended to specify both timeMin and timeMax to limit the expansion window and improve performance.                                                                                                                                                                                                                                                                                                                       |

***

### `Google Calendar Find Free Slots`

Integration name: **GOOGLECALENDAR\_FIND\_FREE\_SLOTS**

Finds both free and busy time slots in Google Calendars for specified calendars within a defined time range. If `time_min` is not provided, defaults to the current timestamp in the specified timezone. If `time_max` is not provided, defaults to 23:59:59 of the day specified in `time_min` (if provided), otherwise defaults to 23:59:59 of the current day in the specified timezone. Returns busy intervals and calculates free slots by finding gaps between busy periods; `time_min` must precede `time_max` if both are provided. This action retrieves free and busy time slots for the specified calendars over a given time period. It analyzes the busy intervals from the calendars and provides calculated free slots based on the gaps in the busy periods. Returned free slots are unfiltered by duration; callers must filter intervals to those fully containing the required meeting length. No event metadata (titles, descriptions, links) is returned; use GOOGLECALENDAR\_EVENTS\_LIST for event details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------ | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `items`                  | array   |          | `["primary"]`            | List of calendar identifiers to query for free/busy information. Pass as a simple list of strings, e.g., \['primary'] or \['primary', '<user@example.com>']. Valid values include: 'primary' (authenticated user's main calendar), calendar IDs from the user's calendar list (typically ending in @group.calendar.google.com), or email addresses of users whose free/busy information you want to query. The FreeBusy API will return error information for any calendars that are not accessible or invalid in the response under the 'errors' key for each calendar. Calendars omitted from `items` or inaccessible are treated as free (not unknown), which can silently produce incorrect availability results. |
| `time_max`               | string  |          | `"2024-12-06T18:00:00Z"` | End datetime for the query interval. Accepts ISO, comma-separated, or simple datetime formats. If provided without an explicit timezone, it is interpreted in the specified `timezone`. If not provided, defaults to 23:59:59 of the day specified in `time_min` (if provided), otherwise defaults to 23:59:59 of the current day in the specified `timezone`. Maximum span between time\_min and time\_max is approximately 90 days per Google Calendar freeBusy API limit. `time_max` is exclusive; to cover a full day, set `time_max` to 00:00:00 of the following day in the target timezone rather than 23:59:59.                                                                                               |
| `time_min`               | string  |          | `"2024-12-06T13:00:00Z"` | Start datetime for the query interval. Accepts ISO, comma-separated, or simple datetime formats. If provided without an explicit timezone, it is interpreted in the specified `timezone`. If not provided, defaults to the current timestamp in the specified `timezone` to ensure only future/bookable slots are returned. Maximum span between time\_min and time\_max is approximately 90 days per Google Calendar freeBusy API limit.                                                                                                                                                                                                                                                                             |
| `timezone`               | string  |          | `"UTC"`                  | IANA timezone identifier (e.g., 'America/New\_York', 'Europe/London', 'Asia/Tokyo'). Determines how naive `time_min`/`time_max` are interpreted and the timezone used in the response for `timeMin`, `timeMax`, busy periods, and calculated free slots. Note: 'local' is not supported; use a specific IANA timezone name.                                                                                                                                                                                                                                                                                                                                                                                           |
| `group_expansion_max`    | integer |          | —                        | Maximum calendar identifiers to return for a single group. Must be between 1 and 100 (inclusive). Values exceeding 100 will be rejected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `calendar_expansion_max` | integer |          | —                        | Maximum calendars for which FreeBusy information is provided. Must be between 1 and 50 (inclusive). Values exceeding 50 will be rejected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Google Calendar Free Busy Query`

Integration name: **GOOGLECALENDAR\_FREE\_BUSY\_QUERY**

DEPRECATED: Use GOOGLECALENDAR\_FIND\_FREE\_SLOTS instead (though this tool provides wider secondary/shared calendar coverage). Returns opaque busy intervals only—no event titles or details; use GOOGLECALENDAR\_EVENTS\_LIST when event details are needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ---------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `items`                | array   |     ✅    | —       | List of calendars and/or groups to query. Accepts either strings (e.g., \['primary', '<user@example.com>']) or objects with an 'id' field (e.g., \[{'id': 'primary'}]). String values are automatically converted to the proper format. Only calendars with at least freeBusyReader-level access are queried; omitting shared/secondary calendars can hide real conflicts. Batch all attendees into one call to avoid 403 rateLimitExceeded or 429 tooManyRequests errors. |
| `timeMax`              | string  |     ✅    | —       | The end of the interval for the query formatted as per RFC3339. Exclusive bound; must be greater than timeMin. Keep the timeMin–timeMax window within \~90 days; larger spans may return empty or degraded results.                                                                                                                                                                                                                                                        |
| `timeMin`              | string  |     ✅    | —       | The start of the interval for the query formatted as per RFC3339. Must be strictly less than timeMax. For full-day windows, use local 00:00 in the target timezone to avoid DST/off-by-one errors.                                                                                                                                                                                                                                                                         |
| `timeZone`             | string  |          | —       | Time zone used in the response. Optional. The default is UTC. Defaults to UTC, which skews working-hours analysis for users in other timezones; always supply a valid IANA timezone (e.g., 'America/New\_York').                                                                                                                                                                                                                                                           |
| `groupExpansionMax`    | integer |          | —       | Maximal number of calendar identifiers to be provided for a single group. Optional. An error is returned for a group with more members than this value. Maximum value is 100.                                                                                                                                                                                                                                                                                              |
| `calendarExpansionMax` | integer |          | —       | Maximal number of calendars for which FreeBusy information is to be provided. Optional. Maximum value is 50.                                                                                                                                                                                                                                                                                                                                                               |

***

### `Google Calendar Get Calendar`

Integration name: **GOOGLECALENDAR\_GET\_CALENDAR**

Retrieves a specific Google Calendar, identified by `calendar_id`, to which the authenticated user has access. Response includes `timeZone` (IANA format, e.g., 'America/Los\_Angeles') — use it directly when constructing `timeMin`/`timeMax` in other tools to avoid DST errors. An empty `defaultReminders` list is valid (no defaults configured). Insufficient `accessRole` may omit fields like `defaultReminders` and `colorId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------- | ------ | :------: | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `calendar_id` | string |          | `"primary"` | Identifier of the Google Calendar to retrieve. Must be 'primary' (the default) for the user's main calendar, or an email-like identifier (e.g., '<user@example.com>' or 'en.usa#<holiday@group.v.calendar.google.com>'). IMPORTANT: Calendar display names/titles (e.g., 'Work', 'Vacation') are NOT valid identifiers and will result in errors. To find a calendar's ID, use the LIST\_CALENDARS action which returns the 'id' field for each calendar. |

***

### `Google Calendar Get Calendar Profile`

Integration name: **GOOGLECALENDAR\_GET\_CALENDAR\_PROFILE**

DEPRECATED: Use CalendarListGet instead. Tool to retrieve the authenticated user's primary calendar profile. Use when you need to get information about the user's main calendar, including timezone, settings, and preferences.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Google Calendar Get Current Date Time`

Integration name: **GOOGLECALENDAR\_GET\_CURRENT\_DATE\_TIME**

Gets the current date and time, allowing for a specific timezone offset. Call this tool first before computing relative dates (e.g., 'tomorrow', 'next Monday') to avoid off-by-one-day errors across timezones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                           |
| ---------- | ---- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `timezone` | —    |          | `"America/New_York"` | Timezone specification. Accepts: (1) IANA timezone identifier (e.g., 'America/New\_York', 'Asia/Kolkata', 'Europe/London') - RECOMMENDED, (2) Common timezone abbreviations (e.g., 'PST', 'EST', 'CST', 'GMT', 'UTC') - will be auto-converted to IANA, or (3) Numeric UTC offset in hours (e.g., -5, 5.5). Use positive values for east of UTC, negative for west. Default 0 is UTC. |

***

### `Google Calendar List Buildings`

Integration name: **GOOGLECALENDAR\_LIST\_BUILDINGS**

Lists all buildings for a Google Workspace customer account with full details including addresses, coordinates, and floor names. Use this action when you need to retrieve the complete list of physical building locations configured in Google Workspace Calendar resources. This is useful for workspace administrators managing conference room and resource scheduling across multiple office buildings. Requires Google Workspace administrator privileges with Directory API access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                   | Description                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `customer`   | string  |          | `"my_customer"`           | The unique ID for the customer's Google Workspace account. Use 'my\_customer' alias to represent your account's customer ID. As an account administrator, this alias represents your account's customer ID. |
| `pageToken`  | string  |          | `"next_page_token_value"` | Token to specify the next page in the list. Obtained from nextPageToken in a previous response. Omit for the first page.                                                                                    |
| `maxResults` | integer |          | `25`                      | Maximum number of buildings to return per page. Defaults to 25 for optimal performance.                                                                                                                     |

***

### `Google Calendar List Calendar Resources`

Integration name: **GOOGLECALENDAR\_LIST\_CALENDAR\_RESOURCES**

Retrieves calendar resources (such as conference rooms) from a Google Workspace domain using the Admin SDK Directory API. Use this action when you need to list available meeting rooms, conference spaces, or other bookable calendar resources in an organization. The action supports filtering by resource category, capacity, building location, and other criteria. IMPORTANT: This requires Admin SDK Directory API access and appropriate admin permissions - it is NOT available for personal Gmail accounts, only Google Workspace domains.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`      | string  |          | `"resourceCategory=CONFERENCE_ROOM"` | Search query to filter calendar resources. Each clause is 'field operator value'. Supported operators: '=' (exact match), '!=' (mismatch), ':' (prefix/HAS match — for prefix match, follow the value with '\*'). Supported logical operators: AND, NOT (in that order of precedence). IMPORTANT: Numeric comparison operators (>, <, >=, <=) are NOT supported by the Google Admin Directory API for this endpoint and will cause a 400 Bad Request — 'capacity' can only be filtered by exact equality (e.g., 'capacity=10'). Supported fields: generatedResourceName, name, buildingId, floor\_name, capacity, featureInstances.feature.name, resourceEmail, resourceCategory. |
| `orderBy`    | string  |          | `"resourceName"`                     | Specifies sorting order for results. Use field names like 'resourceId', 'resourceName', 'capacity', 'buildingId', 'floorName' optionally followed by ' desc' for descending order. Multiple fields can be separated by commas (e.g., 'buildingId, capacity desc').                                                                                                                                                                                                                                                                                                                                                                                                                |
| `customer`   | string  |          | `"my_customer"`                      | The unique ID for the customer's Google Workspace account. Use 'my\_customer' as an alias for the account's customer ID.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `pageToken`  | string  |          | `"nextPageToken123"`                 | Token for retrieving subsequent pages in paginated results. Use the nextPageToken from a previous response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `maxResults` | integer |          | `25`                                 | Maximum number of results to return per page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Google Calendar List Calendars`

Integration name: **GOOGLECALENDAR\_LIST\_CALENDARS**

Retrieves calendars from the user's Google Calendar list, with options for pagination and filtering. Loop through all pages using nextPageToken until absent to avoid missing calendars. Use the primary flag and accessRole field from the response to identify calendars — display names are not valid calendar\_id values. Read access (listing) does not imply write OAuth scopes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example               | Description                                                                                                                                                                                                                                                            |
| ----------------- | ------- | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_token`      | string  |          | `" nextPageToken123"` | Token for the page of results to return, from a previous response.                                                                                                                                                                                                     |
| `sync_token`      | string  |          | `"syncToken123"`      | Sync token from a previous list request to get only changed entries; showDeleted, showHidden, and pageToken are ignored if provided. Also ignores minAccessRole. An HTTP 410 Gone response means the token has expired; perform a full resync by omitting sync\_token. |
| `max_results`     | integer |          | `25`                  | Maximum number of calendars to return per page. Max 250.                                                                                                                                                                                                               |
| `show_hidden`     | boolean |          | `true`                | Include calendars not typically shown in the UI.                                                                                                                                                                                                                       |
| `show_deleted`    | boolean |          | `true`                | Include deleted calendars in the result.                                                                                                                                                                                                                               |
| `min_access_role` | string  |          | `"reader"`            | Minimum access role for calendars returned. Valid values are 'freeBusyReader', 'owner', 'reader', 'writer'. freeBusyReader calendars expose only free/busy slots — no event details and writes fail with 403. Omit this filter to include read-only calendars.         |

***

### `Google Calendar List Settings`

Integration name: **GOOGLECALENDAR\_LIST\_SETTINGS**

DEPRECATED: Use GOOGLECALENDAR\_SETTINGS\_LIST instead. Tool to return all user settings for the authenticated user. Use when you need to retrieve calendar settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                              |
| ------------ | ------- | :------: | ------- | -------------------------------------------------------- |
| `pageToken`  | string  |          | —       | Token for pagination to retrieve subsequent result pages |
| `maxResults` | integer |          | —       | Maximum number of settings to return                     |

***

### `Google Calendar Patch Calendar`

Integration name: **GOOGLECALENDAR\_PATCH\_CALENDAR**

Partially updates (PATCHes) an existing Google Calendar, modifying only the fields provided. At least one of summary, description, location, or timezone must be provided. Empty strings for `description` or `location` clear them.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                                                                                                                                                                                                                                                                                         |
| ------------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `summary`     | string |          | `"Team Meetings"` | New title for the calendar; cannot be an empty string when provided. At least one of summary, description, location, or timezone must be provided.                                                                                                                                                                                  |
| `location`    | string |          | `"Paris, France"` | New geographic location of the calendar (e.g., 'Paris, France').                                                                                                                                                                                                                                                                    |
| `timezone`    | string |          | `"Europe/Zurich"` | New IANA Time Zone Database name for the calendar (e.g., 'Europe/Zurich', 'America/New\_York'). Calendars duplicated via GOOGLECALENDAR\_DUPLICATE\_CALENDAR may default to UTC; set the correct timezone explicitly after duplication.                                                                                             |
| `calendar_id` | string |     ✅    | `"primary"`       | The unique identifier of the Google Calendar to update. Use 'primary' for the main calendar, or a calendar's unique ID (typically in email format like '<abc123@group.calendar.google.com>'). IMPORTANT: This is NOT the calendar's display name/title - use GOOGLECALENDAR\_LIST\_CALENDARS to find the 'id' field for a calendar. |
| `description` | string |          | —                 | New description for the calendar.                                                                                                                                                                                                                                                                                                   |

***

### `Google Calendar Patch Event`

Integration name: **GOOGLECALENDAR\_PATCH\_EVENT**

Update specified fields of an existing event in a Google Calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar_id` and `event_id` are valid and the user has write access to the calendar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ----------------------------- | ------- | :------: | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `source`                      | object  |          | —                                                        | Input model for event source.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `status`                      | string  |          | `"confirmed"`                                            | Status of the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `summary`                     | string  |          | `"Updated Team Meeting"`                                 | New title for the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `color_id`                    | string  |          | `"1"`                                                    | Color ID for the event (1-11). Use GOOGLECALENDAR\_COLORS\_GET to retrieve available colors.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `end_time`                    | string  |          | `"2024-07-01T11:00:00-07:00"`                            | New end time (RFC3339 timestamp, e.g., '2024-07-01T11:00:00-07:00'). Uses `timezone` if provided, otherwise UTC. For all-day events, use YYYY-MM-DD format (exclusive end date). Optional when updating start\_time - the original event duration will be preserved if end\_time is not specified. Must be strictly after `start_time`; mismatched or mixed formats cause HTTP 400 `timeRangeEmpty`.                                                                                                                                                                                                                                                           |
| `event_id`                    | string  |     ✅    | `"pna920peji8r3jj2a18m6bk8ms"`                           | The unique technical identifier of the event to update. IMPORTANT: This is NOT the event title/name. Event IDs are opaque strings typically base32hex encoded (5-1024 characters using lowercase a-v and digits 0-9). For recurring event instances, the ID format is 'baseEventId\_YYYYMMDDTHHMMSSZ' with an underscore separator (e.g., 'abc123def456\_20260115T100000Z'). To get an event ID, first use GOOGLECALENDAR\_FIND\_EVENT or GOOGLECALENDAR\_EVENTS\_LIST to search for events and retrieve their IDs. Use master event ID to update the entire recurring series; use instance ID to update only that occurrence — confirm scope before patching. |
| `location`                    | string  |          | `"Conference Room B"`                                    | New geographic location (physical address or virtual meeting link).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `sequence`                    | integer |          | `0`                                                      | Sequence number as per iCalendar specification. Incremented on each event update.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `timezone`                    | string  |          | `"America/Los_Angeles"`                                  | IANA Time Zone Database name for start/end times (e.g., 'America/Los\_Angeles'). Used if `start_time` and `end_time` are provided and not all-day dates; defaults to UTC if unset. Mismatched or missing timezone with offset timestamps silently shifts event to unintended wall-clock time.                                                                                                                                                                                                                                                                                                                                                                  |
| `attendees`                   | array   |          | `["user1@example.com","user2@example.com"]`              | List of valid email addresses for attendees (e.g., '<user@example.com>'). Replaces existing attendees. Provide an empty list to remove all.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `reminders`                   | object  |          | —                                                        | Input model for reminders.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `recurrence`                  | array   |          | `["RRULE:FREQ=WEEKLY;BYDAY=TU;COUNT=10"]`                | RRULE, EXRULE, RDATE and EXDATE lines per RFC5545 for recurring events. Replaces existing recurrence rules if provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `start_time`                  | string  |          | `"2024-07-01T10:00:00-07:00"`                            | New start time (RFC3339 timestamp, e.g., '2024-07-01T10:00:00-07:00'). Uses `timezone` if provided, otherwise UTC. For all-day events, use YYYY-MM-DD format. When only start\_time is provided without end\_time, the event's original duration is preserved automatically.                                                                                                                                                                                                                                                                                                                                                                                   |
| `visibility`                  | string  |          | `"default"`                                              | Visibility of the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `attachments`                 | array   |          | —                                                        | File attachments (max 25). Each with 'fileUrl' (required) and optional 'title', 'mimeType'. Requires supportsAttachments=true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `calendar_id`                 | string  |     ✅    | `"primary"`                                              | Identifier of the calendar. Use 'primary' for the primary calendar of the logged-in user. To find other calendar IDs, use the `calendarList.list` method. Must be provided in snake\_case format.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `description`                 | string  |          | `"Weekly team sync meeting to discuss project updates."` | New description for the event; can include HTML.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `send_updates`                | string  |          | `"all"`                                                  | Whether to send update notifications to attendees. Uses default user behavior if unspecified. Set explicitly to avoid unintended notifications when removing attendees or making bulk updates.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `transparency`                | string  |          | `"opaque"`                                               | Whether the event blocks time on the calendar. 'opaque' (default) blocks time, 'transparent' does not.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `max_attendees`               | integer |          | `10`                                                     | Maximum attendees in response; does not affect invited count. If more, response includes organizer only. Must be positive.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `rsvp_response`               | string  |          | `"accepted"`                                             | RSVP response status for the authenticated user. Updates only the current user's response status without affecting other attendees. Note: RSVP is only supported for regular calendar events (eventType='default'); attempting to RSVP to focusTime, outOfOffice, birthday, or workingLocation events will result in an error.                                                                                                                                                                                                                                                                                                                                 |
| `conference_data`             | object  |          | —                                                        | Input model for conference data.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `attendees_omitted`           | boolean |          | `true`                                                   | Whether attendees may have been omitted from the event's representation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `guests_can_modify`           | boolean |          | `true`                                                   | Whether attendees other than the organizer can modify the event (default: false).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `anyone_can_add_self`         | boolean |          | `true`                                                   | Whether anyone can invite themselves to the event (default: false).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `extended_properties`         | object  |          | —                                                        | Input model for extended properties.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `supports_attachments`        | boolean |          | `true`                                                   | Client application supports event attachments. Set to `True` if so.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `focus_time_properties`       | object  |          | —                                                        | Input model for focus time properties.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `conference_data_version`     | integer |          | `0`                                                      | API client's conference data support version. Set to 1 to manage conference details (e.g., Google Meet links); 0 (default) ignores conference data. Setting to 1 enables reading/preserving conference data but does not generate a new Meet link — use GOOGLECALENDAR\_UPDATE\_EVENT with `create_meeting_room=true` to create one.                                                                                                                                                                                                                                                                                                                           |
| `guests_can_invite_others`    | boolean |          | `true`                                                   | Whether attendees other than the organizer can invite others (default: true).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `out_of_office_properties`    | object  |          | —                                                        | Input model for out-of-office properties.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `guests_can_see_other_guests` | boolean |          | `true`                                                   | Whether attendees can see who the event's attendees are (default: true).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `working_location_properties` | object  |          | —                                                        | Input model for working location properties.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Google Calendar Quick Add`

Integration name: **GOOGLECALENDAR\_QUICK\_ADD**

Parses natural language text to quickly create a basic Google Calendar event with its title, date, and time, suitable for simple scheduling; does not support direct attendee addition or recurring events, and `calendar_id` must be valid if not 'primary'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                               | Description                                                                                                                             |
| -------------- | ------ | :------: | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `text`         | string |          | `"Appointment at Somewhere on June 3rd 10am-10:25am"` | Natural language input describing the event; Google Calendar parses this for event details like title, date, and time.                  |
| `calendar_id`  | string |          | `"primary"`                                           | Identifier of the calendar for the event. Use 'primary' for the main calendar, or provide a specific calendar ID (e.g., email address). |
| `send_updates` | string |          | —                                                     | Controls whether email notifications about the event creation are sent to attendees.                                                    |

***

### `Google Calendar Remove Attendee`

Integration name: **GOOGLECALENDAR\_REMOVE\_ATTENDEE**

Removes an attendee from a specified event in a Google Calendar; the calendar and event must exist. Concurrent calls on the same event can overwrite attendee lists — apply changes sequentially per event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example            | Description                                                                                                                                                                                        |
| ---------------- | ------ | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `event_id`       | string |     ✅    | —                  | Unique identifier of the event. For recurring events, target the master series ID or a specific instance ID; removing an attendee from one instance does not affect other instances in the series. |
| `calendar_id`    | string |          | —                  | Identifier of the Google Calendar to which the event belongs; 'primary' signifies the user's main calendar.                                                                                        |
| `attendee_email` | string |     ✅    | `"john@gmail.com"` | Email address of the attendee to remove. Must match an attendee email present on the event. If no match is found, the attendee was already removed or was never on the event.                      |

***

### `Google Calendar Settings Get`

Integration name: **GOOGLECALENDAR\_SETTINGS\_GET**

Tool to return a single user setting for the authenticated user. Use when you need to retrieve a specific calendar setting value.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                                                                                                                                                                                                                                                    |
| --------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `setting` | string |     ✅    | `"timezone"` | The identifier of the user setting to retrieve. Valid values include: autoAddHangouts, dateFieldOrder, defaultEventLength, format24HourTime, hideInvitations, hideWeekends, locale, remindOnRespondedEventsOnly, showDeclinedEvents, timezone, useKeyboardShortcuts, weekStart |

***

### `Google Calendar Settings List`

Integration name: **GOOGLECALENDAR\_SETTINGS\_LIST**

Returns all user settings for the authenticated user. Results include multiple settings keyed by id (e.g., `timeZone`); locate a specific setting by its `id` field. `timeZone` values are IANA identifiers (e.g., `America/New_York`) — use directly in datetime and event logic; align with `timeZone` from GOOGLECALENDAR\_GET\_CALENDAR for consistent notification times.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageToken`  | string  |          | —       | Token specifying which result page to return.                                                                                                                                                                                                                                                                                                                                                  |
| `syncToken`  | string  |          | —       | Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then. If the syncToken expires, the server will respond with a 410 GONE response code and the client should clear its storage and perform a full synchronization without any syncToken. |
| `maxResults` | integer |          | —       | Maximum number of entries returned on one result page. By default the value is 100 entries. The page size can never be larger than 250 entries.                                                                                                                                                                                                                                                |

***

### `Google Calendar Settings Watch`

Integration name: **GOOGLECALENDAR\_SETTINGS\_WATCH**

Watch for changes to Settings resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                               | Description                                                                                                |
| ------------ | ------- | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `id`         | string  |     ✅    | `"channel-ID-1"`                      | A UUID or similar unique string that identifies this channel.                                              |
| `type`       | string  |     ✅    | `"web_hook"`                          | The type of delivery mechanism used for this channel. Must be "web\_hook".                                 |
| `token`      | string  |          | `"token-string"`                      | An arbitrary string delivered to the target address with each notification delivered over this channel.    |
| `params`     | object  |          | —                                     | Additional parameters controlling delivery channel behavior.                                               |
| `address`    | string  |     ✅    | `"https://example.com/notifications"` | The address where notifications are delivered for this channel.                                            |
| `expiration` | integer |          | `1426325213000`                       | Unix timestamp in milliseconds specifying when the API should stop sending notifications for this channel. |

***

### `Google Calendar Sync Events`

Integration name: **GOOGLECALENDAR\_SYNC\_EVENTS**

DEPRECATED: Use GOOGLECALENDAR\_EVENTS\_LIST instead. EventsList already handles syncToken with automatic param stripping. Synchronizes Google Calendar events, performing a full sync if no `sync_token` is provided or if a 410 GONE error (due to an expired token) necessitates it, otherwise performs an incremental sync for events changed since the `sync_token` was issued.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                         | Description                                                                                                                                                                                                                                                          |
| --------------- | ------- | :------: | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageToken`     | string  |          | `"RANDOM_PAGE_TOKEN_STRING"`                    | Token for paginating results, from a previous response's `nextPageToken`. Repeat with each returned `nextPageToken` until no `nextPageToken` is returned; stopping early silently omits remaining events.                                                            |
| `sync_token`    | string  |          | `"RANDOM_SYNC_TOKEN_STRING_FROM_PREVIOUS_CALL"` | Token for incremental sync, retrieving only changes since issued. A 410 GONE response indicates an expired token, requiring a full sync. Cannot be combined with `timeMin`, `timeMax`, `orderBy`, `query`, or `updatedMin`; mixing these causes the request to fail. |
| `calendar_id`   | string  |          | `"primary"`                                     | Google Calendar identifier; 'primary' refers to the authenticated user's main calendar.                                                                                                                                                                              |
| `event_types`   | array   |          | `"['default', 'focusTime']"`                    | Filters events by specified types (e.g., 'default', 'focusTime', 'outOfOffice', 'workingLocation'). All types returned if omitted.                                                                                                                                   |
| `max_results`   | integer |          | `"100"`                                         | Max events per page (max 2500); Google Calendar's default is used if unspecified.                                                                                                                                                                                    |
| `single_events` | boolean |          | `true`                                          | If True, expands recurring events into individual instances (excluding master event); otherwise, Google's default handling applies.                                                                                                                                  |

***

### `Google Calendar Update Event`

Integration name: **GOOGLECALENDAR\_UPDATE\_EVENT**

Updates an existing event in Google Calendar. REQUIRES event\_id - you MUST first search for the event using GOOGLECALENDAR\_FIND\_EVENT or GOOGLECALENDAR\_EVENTS\_LIST to obtain the event\_id. This is a full PUT replacement: omitted fields (including attendees, reminders, recurrence, conferencing) are cleared. Always provide the complete desired event state. Use GOOGLECALENDAR\_PATCH\_EVENT instead for partial edits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------------------------- | ------- | :------: | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `summary`                   | string  |          | —                              | Summary (title) of the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `event_id`                  | string  |     ✅    | `"a1b2c3d4e5f6g7h8i9j0k1l2m3"` | REQUIRED. The unique identifier of the event to update. This parameter is MANDATORY - events cannot be updated by title, date, or other criteria. You MUST first retrieve the event\_id by using GOOGLECALENDAR\_FIND\_EVENT or GOOGLECALENDAR\_EVENTS\_LIST to search for the event, then use the returned 'id' field here.                                                                                                                                                                                                                                                                                                                  |
| `location`                  | string  |          | —                              | Geographic location of the event as free-form text.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `timezone`                  | string  |          | —                              | IANA timezone name from the timezone database (e.g., 'America/New\_York', 'Europe/London', 'Asia/Jerusalem', 'UTC'). Required if datetime is naive. For recurring events, start and end must include a timeZone. If not provided, UTC is used. If datetime includes timezone info (Z or offset), this field is optional and defaults to UTC. IMPORTANT: Must be a valid IANA timezone identifier. Values like 'EST', 'PST', 'ISRAEL TIME', or other abbreviations are NOT valid IANA timezone names.                                                                                                                                          |
| `attendees`                 | array   |          | —                              | List of attendees. Each attendee can be either: (1) A string email address (e.g., '<user@example.com>'), or (2) An object with 'email' (required), 'optional' (boolean, default false), 'displayName' (string), 'comment' (string), 'additionalGuests' (integer), and 'resource' (boolean). To mark an attendee as optional (not required), use object format: {'email': '<user@example.com>', 'optional': true}. IMPORTANT: Only valid email addresses are accepted. Plain names cannot be used.                                                                                                                                             |
| `eventType`                 | string  |          | —                              | Type of the event, immutable post-creation. 'workingLocation' (REQUIRES Google Workspace Enterprise). Note: 'fromGmail' events cannot be created via API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `recurrence`                | array   |          | —                              | List of RRULE, EXRULE, RDATE, EXDATE lines for recurring events. Supported frequencies: DAILY, WEEKLY, MONTHLY, YEARLY. For recurring events, start.timeZone and end.timeZone must be present. UNTIL values follow RFC 5545: date-only (YYYYMMDD) for all-day events, or UTC datetime with Z suffix (YYYYMMDDTHHMMSSZ) for timed events. UNTIL values with time but missing Z suffix are auto-corrected. Provide an empty list to remove recurrence so the event becomes non-recurring.                                                                                                                                                       |
| `visibility`                | string  |          | —                              | Event visibility: 'default', 'public', 'private', or 'confidential'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `calendar_id`               | string  |          | `"primary"`                    | Identifier of the Google Calendar where the event resides. The value 'primary' targets the user's primary calendar.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `description`               | string  |          | —                              | Description of the event. Can contain HTML. Optional. Must be omitted for 'birthday' event type.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `end_datetime`              | string  |          | —                              | Event end time in ISO 8601 format: YYYY-MM-DDTHH:MM:SS. When provided, this parameter takes precedence over event\_duration\_hour and event\_duration\_minutes. If not provided, the end time is calculated using start\_datetime + duration. Must be after start\_datetime. Fractional seconds and timezone info will be automatically stripped if provided. Examples: '2025-01-16T14:30:00', '2025-01-16T14:30'.                                                                                                                                                                                                                            |
| `send_updates`              | string  |          | —                              | Options for who should receive notifications about event changes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `transparency`              | string  |          | —                              | 'opaque' (busy) or 'transparent' (available).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `start_datetime`            | string  |     ✅    | —                              | REQUIRED. Event start time in ISO 8601 format: YYYY-MM-DDTHH:MM:SS. IMPORTANT: Natural language expressions like 'tomorrow', 'next Monday', '2pm tomorrow' are NOT supported and will be rejected. You must provide the exact date and time in ISO format. Fractional seconds (e.g., .000) and timezone info (Z, +, -) will be automatically stripped if provided. Examples: '2025-01-16T13:00:00', '2025-01-16T13:00'.                                                                                                                                                                                                                       |
| `guestsCanModify`           | boolean |          | —                              | If True, guests can modify the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `birthdayProperties`        | object  |          | —                              | Properties for birthday events.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `create_meeting_room`       | boolean |          | —                              | Defaults to True. When True, for CREATE operations creates a Google Meet link; for UPDATE operations preserves existing conference data if present, or adds a new Meet link if none exists. Google Workspace accounts will successfully receive a Meet link. Personal Gmail accounts and other unsupported accounts will gracefully fallback to creating an event without a Meet link when conference creation fails. Set to False to skip Meet link operations (won't create new or modify existing conference data). The fallback ensures event creation succeeds even when conference features are unavailable due to account limitations. |
| `event_duration_hour`       | integer |          | —                              | Number of hours for the event duration. Supports multi-day events (e.g., 240 hours = 10 days). For durations under 1 hour, use event\_duration\_minutes instead. Ignored if end\_datetime is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `extended_properties`       | object  |          | —                              | Extended properties of the event for storing custom metadata. Contains 'private' (visible only on this calendar) and/or 'shared' (visible to all attendees) dictionaries mapping string keys to string values. Example: {'private': {'key1': 'value1'}, 'shared': {'key2': 'value2'}}                                                                                                                                                                                                                                                                                                                                                         |
| `focusTimeProperties`       | object  |          | —                              | Properties for focusTime events. REQUIRES Google Workspace Enterprise account with Focus Time feature enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `guestsCanInviteOthers`     | boolean |          | —                              | Whether attendees other than the organizer can invite others to the event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `outOfOfficeProperties`     | object  |          | —                              | Properties for outOfOffice events.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `event_duration_minutes`    | integer |          | —                              | Duration in minutes (0-59 ONLY). NEVER use 60+ minutes - use event\_duration\_hour=1 instead. Maximum value is 59. Combined duration (hours + minutes) must be greater than 0. Ignored if end\_datetime is provided.                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `guestsCanSeeOtherGuests`   | boolean |          | —                              | Whether attendees other than the organizer can see who the event's attendees are.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `workingLocationProperties` | object  |          | —                              | Properties for workingLocation events. REQUIRES Google Workspace Enterprise. Constraints discovered from testing: - Must set transparency='transparent' and visibility='public' - Description must be omitted - Depending on 'type', include one of 'homeOffice', 'officeLocation', or 'customLocation'                                                                                                                                                                                                                                                                                                                                       |

***


# Google Classroom

Your Toolhouse AI Worker can connect to Google Classroom using 62 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](https://toolhouse.app/auth-connections?authkit_slugs=google_classroom).

## Tools (62)

### `Google Classroom Courses Aliases Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ALIASES\_CREATE**

Tool to create an alias for a course. Use when you need to add an alternative identifier to a course after confirming the course ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                     | Description                                                                                                                                                                                                                                       |
| ---------- | ------ | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `alias`    | string |     ✅    | `"p:test_alias_history301"` | The alias to create. Must be unique within its scope and cannot exceed 256 characters. Domain-scoped aliases (prefix 'd:') can only be created by domain administrators. Project-scoped aliases (prefix 'p:') can be created by any project user. |
| `courseId` | string |     ✅    | `"835614853904"`            | Identifier of the course. This may either be the Classroom-assigned identifier or an alias.                                                                                                                                                       |

***

### `Google Classroom Courses Aliases Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ALIASES\_DELETE**

Tool to delete an alias of a course. Use when you need to remove an alias from a course after confirming the course ID and alias name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                                 |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------- |
| `alias`    | string |     ✅    | `"p:test_alias"` | The alias to delete. This may not be the Classroom-assigned identifier.                     |
| `courseId` | string |     ✅    | `"1234567890"`   | Identifier of the course. This may either be the Classroom-assigned identifier or an alias. |

***

### `Google Classroom Courses Aliases List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ALIASES\_LIST**

Tool to list aliases for a course. Use when you need to retrieve all aliases associated with a specific course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                                                |
| ----------- | ------- | :------: | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"835614853904"`                        | Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.                     |
| `pageSize`  | integer |          | `10`                                    | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum.                     |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. |

***

### `Google Classroom Courses Announcements Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_CREATE**

Tool to create an announcement in a course. Use after confirming the course ID is valid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type   | Required | Example                          | Description                                                                 |
| --------------------------- | ------ | :------: | -------------------------------- | --------------------------------------------------------------------------- |
| `text`                      | string |          | `"Welcome to the new semester!"` | The text content of the announcement.                                       |
| `state`                     | string |          | `"DRAFT"`                        | State of the announcement; if omitted defaults to PUBLISHED.                |
| `courseId`                  | string |     ✅    | —                                | Identifier of the course.                                                   |
| `materials`                 | array  |          | —                                | List of materials to attach to the announcement.                            |
| `assigneeMode`              | string |          | `"ALL_STUDENTS"`                 | Mode for assigning the announcement; ALL\_STUDENTS or INDIVIDUAL\_STUDENTS. |
| `scheduledTime`             | string |          | `"2023-10-15T09:00:00Z"`         | RFC3339 timestamp at which to publish the announcement.                     |
| `individualStudentsOptions` | object |          | —                                | Options for INDIVIDUAL\_STUDENTS assignee mode.                             |

***

### `Google Classroom Courses Announcements Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_DELETE**

Tool to delete an announcement. Use after confirming the announcement ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                               |
| ---------- | ------ | :------: | ---------------- | ----------------------------------------- |
| `id`       | string |     ✅    | `"abcdef123456"` | Identifier of the announcement to delete. |
| `courseId` | string |     ✅    | `"1234567890"`   | Identifier of the course.                 |

***

### `Google Classroom Courses Announcements Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_GET**

Tool to get an announcement. Use when you need to fetch an announcement by course and announcement ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example     | Description                                                                                    |
| ---------- | ------ | :------: | ----------- | ---------------------------------------------------------------------------------------------- |
| `id`       | string |     ✅    | `"annc123"` | Identifier of the announcement to retrieve.                                                    |
| `courseId` | string |     ✅    | `"12345"`   | Identifier of the course. This identifier can be either the Classroom-assigned ID or an alias. |

***

### `Google Classroom Courses Announcements Get Add On Context`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_GET\_ADD\_ON\_CONTEXT**

Tool to get metadata for Classroom add-ons in the context of a specific announcement post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                                                                                      |
| -------------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835813743554"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial with the attached add-on.                                                                      |
| `postId`       | string |          | —                | Deprecated. Use itemId instead.                                                                                                                                  |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                                                                        |
| `addOnToken`   | string |          | —                | Optional authorization token passed when redirecting to the add-on's URL. Required unless the add-on has attachments or the requesting project created the post. |
| `attachmentId` | string |          | —                | Optional identifier for the specific attachment. Required for all requests except Attachment Discovery iframe.                                                   |

***

### `Google Classroom Courses Announcements List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_LIST**

Tool to list announcements in a course. Use after you have the course ID to page through announcements.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                          | Description                                                                                                                        |
| ----------- | ------- | :------: | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `orderBy`   | string  |          | `"updateTime asc"`               | How to sort announcements. Use `updateTime desc` (newest first) or `updateTime asc` (oldest first). Defaults to `updateTime desc`. |
| `courseId`  | string  |     ✅    | `"1234567890"`                   | Identifier of the course whose announcements should be listed. Can be the Classroom-assigned identifier or an alias.               |
| `pageSize`  | integer |          | `30`                             | Maximum number of announcements to return. Must be between 1 and 100. Defaults to 30 if not set.                                   |
| `pageToken` | string  |          | `"Cg0KC3ByZXZpb3VzUGFnZVRva2Vu"` | Token specifying the next page of results to return. Obtain from a previous list call's `nextPageToken`.                           |

***

### `Google Classroom Courses Announcements Modify Assignees`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_MODIFY\_ASSIGNEES**

Tool to modify assignee mode and options of an announcement. Use when you need to change who can view an announcement, either making it visible to all students or to specific students only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type   | Required | Example          | Description                                                                                                                                                                                                          |
| --------------------------------- | ------ | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                              | string |     ✅    | `"835813743554"` | Identifier of the announcement.                                                                                                                                                                                      |
| `courseId`                        | string |     ✅    | `"835614853904"` | Identifier of the course. This may be the Classroom-assigned identifier or an alias.                                                                                                                                 |
| `assigneeMode`                    | string |     ✅    | `"ALL_STUDENTS"` | Mode of the announcement describing whether it is accessible by all students or specified individual students. Use ALL\_STUDENTS for all students to see the item, or INDIVIDUAL\_STUDENTS for a subset of students. |
| `modifyIndividualStudentsOptions` | object |          | —                | Options for modifying which students can view the announcement when assigneeMode is INDIVIDUAL\_STUDENTS.                                                                                                            |

***

### `Google Classroom Courses Announcements Patch`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCEMENTS\_PATCH**

Tool to update fields of an announcement. Use when you need to modify specific details of an existing announcement after confirming which fields to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type   | Required | Example                           | Description                                                                 |
| --------------------------- | ------ | :------: | --------------------------------- | --------------------------------------------------------------------------- |
| `id`                        | string |     ✅    | `"abcdef123456"`                  | Identifier of the announcement to update.                                   |
| `text`                      | string |          | `"Updated announcement content."` | The text content of the announcement to set.                                |
| `state`                     | string |          | `"PUBLISHED"`                     | State of the announcement.                                                  |
| `courseId`                  | string |     ✅    | `"1234567890"`                    | Identifier of the course.                                                   |
| `materials`                 | array  |          | —                                 | List of materials to attach to the announcement.                            |
| `updateMask`                | string |     ✅    | `"text,scheduledTime"`            | Comma-separated list of fields to update. E.g., 'text,state'.               |
| `assigneeMode`              | string |          | `"ALL_STUDENTS"`                  | Mode for assigning the announcement; ALL\_STUDENTS or INDIVIDUAL\_STUDENTS. |
| `scheduledTime`             | string |          | `"2023-10-15T09:00:00Z"`          | RFC3339 timestamp at which to publish the announcement.                     |
| `individualStudentsOptions` | object |          | —                                 | Options for INDIVIDUAL\_STUDENTS assignee mode.                             |

***

### `Google Classroom Courses Announces Add On Attachs Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCES\_ADD\_ON\_ATTACHS\_DELETE**

Tool to delete an add-on attachment from a course announcement. Requires the add-on to have been the original creator of the attachment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                            |
| -------------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835813743554"` | Identifier of the announcement under which the attachment is attached. |
| `postId`       | string |          | `"835813743554"` | Deprecated. Use itemId instead. Optional identifier of the post.       |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                              |
| `attachmentId` | string |     ✅    | `"123456789"`    | Identifier of the add-on attachment to delete.                         |

***

### `Google Classroom Courses Announces Add On Attachs Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCES\_ADD\_ON\_ATTACHS\_GET**

Tool to get an add-on attachment from an announcement. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                              |
| -------------- | ------ | :------: | ---------------- | -------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835813743554"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial containing the attachment.             |
| `postId`       | string |          | `"835813743554"` | Deprecated. Use itemId instead. Optional identifier of the post.                                         |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                |
| `attachmentId` | string |     ✅    | `"123456789"`    | Identifier of the add-on attachment. Classroom-assigned identifier for this attachment, unique per post. |

***

### `Google Classroom Courses Announces Add On Attachs List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_ANNOUNCES\_ADD\_ON\_ATTACHS\_LIST**

Tool to list all add-on attachments created under an announcement. Use when you need to retrieve attachments added by an add-on. Requires the add-on to have active attachments on the post or permission to create new attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                           |
| ----------- | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `itemId`    | string  |     ✅    | `"835813743554"`                        | Identifier of the Announcement, CourseWork, or CourseWorkMaterial whose attachments should be listed. |
| `courseId`  | string  |     ✅    | `"835614853904"`                        | Identifier of the course.                                                                             |
| `pageSize`  | integer |          | `10`                                    | Maximum number of attachments to return. Default is 20, maximum is 20.                                |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token for retrieving the next page of results from a previous list response.                          |

***

### `Google Classroom Courses Course Work Add On Attachs Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_ADD\_ON\_ATTACHS\_DELETE**

Tool to delete an add-on attachment from course work. Use when the add-on needs to remove an attachment it originally created. Requires the add-on to have been the original creator of the attachment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                               |
| -------------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835814480041"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial under which the attachment is attached. |
| `postId`       | string |          | —                | Optional. Deprecated, use itemId instead.                                                                 |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                 |
| `attachmentId` | string |     ✅    | `"123456789"`    | Identifier of the attachment to delete.                                                                   |

***

### `Google Classroom Courses Course Work Get Add On Context`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_GET\_ADD\_ON\_CONTEXT**

Tool to get metadata for Classroom add-ons in the context of a specific course work. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                                                                                      |
| -------------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835814413923"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial with the attached add-on.                                                                      |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                                                                        |
| `addOnToken`   | string |          | —                | Optional authorization token passed when redirecting to the add-on's URL. Required unless the add-on has attachments or the requesting project created the post. |
| `attachmentId` | string |          | —                | Optional identifier for the specific attachment. Required for all requests except Attachment Discovery iframe.                                                   |

***

### `Google Classroom Courses Course Work Materials Add Attachs`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_MATERIALS\_ADD\_ATTACHS**

Tool to list all add-on attachments under a course work material post. Use when you need to retrieve attachments created by an add-on. Requires the add-on to have active attachments or permission to create new attachments on the post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                 |
| ---------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------- |
| `itemId`   | string |     ✅    | `"835618315038"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial resource. |
| `courseId` | string |     ✅    | `"835614853904"` | Identifier of the course.                                                   |

***

### `Google Classroom Courses Course Work Materials Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_MATERIALS\_DELETE**

Tool to delete a course work material. Use after confirming the course work material ID and course ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                                 |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------- |
| `id`       | string |     ✅    | `"792777918580"` | Identifier of the course work material to delete.                                           |
| `courseId` | string |     ✅    | `"835614853904"` | Identifier of the course. This may either be the Classroom-assigned identifier or an alias. |

***

### `Google Classroom Courses Course Work Modify Assignees`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_MODIFY\_ASSIGNEES**

Tool to modify assignee mode and options of coursework. Use when you need to change who can view coursework, either making it visible to all students or to specific students only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type   | Required | Example          | Description                                                                                                                                                                                                        |
| --------------------------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                              | string |     ✅    | `"835814480041"` | Identifier of the coursework.                                                                                                                                                                                      |
| `courseId`                        | string |     ✅    | `"835614853904"` | Identifier of the course. This may be the Classroom-assigned identifier or an alias.                                                                                                                               |
| `assigneeMode`                    | string |     ✅    | `"ALL_STUDENTS"` | Mode of the coursework describing whether it is accessible by all students or specified individual students. Use ALL\_STUDENTS for all students to see the item, or INDIVIDUAL\_STUDENTS for a subset of students. |
| `modifyIndividualStudentsOptions` | object |          | —                | Options for modifying which students can view the coursework when assigneeMode is INDIVIDUAL\_STUDENTS.                                                                                                            |

***

### `Google Classroom Courses Course Work Patch`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSE\_WORK\_PATCH**

Tool to update one or more fields of a course work. Use when you need to modify specific details of an existing course work after confirming which fields to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type   | Required | Example                                                | Description                                                                                                                                                                                 |
| ---------------------------- | ------ | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                         | string |     ✅    | `"835814480041"`                                       | Identifier of the course work to update.                                                                                                                                                    |
| `state`                      | string |          | `"PUBLISHED"`                                          | State of the course work. Can be DRAFT, PUBLISHED, or DELETED.                                                                                                                              |
| `title`                      | string |          | `"Updated Assignment Title"`                           | Title of the course work to set. Valid UTF-8, 1-3000 characters.                                                                                                                            |
| `dueDate`                    | object |          | —                                                      | Model for due date.                                                                                                                                                                         |
| `dueTime`                    | object |          | —                                                      | Model for due time in request.                                                                                                                                                              |
| `topicId`                    | string |          | `"123456789"`                                          | Topic ID to assign. Must match an existing course topic.                                                                                                                                    |
| `courseId`                   | string |     ✅    | `"835614853904"`                                       | Identifier of the course. Can be the Classroom-assigned identifier or an alias.                                                                                                             |
| `materials`                  | array  |          | —                                                      | Additional materials to attach (max 20 items).                                                                                                                                              |
| `maxPoints`                  | number |          | `100`                                                  | Maximum grade points for the course work. Must be non-negative; zero indicates ungraded.                                                                                                    |
| `updateMask`                 | string |     ✅    | `"title"`                                              | Comma-separated list of fields to update. Teachers can modify: title, description, state, dueDate, dueTime, maxPoints, scheduledTime, submissionModificationMode, topicId, gradingPeriodId. |
| `description`                | string |          | `"This is an updated description for the assignment."` | Description of the course work to set. Maximum 30,000 characters.                                                                                                                           |
| `assigneeMode`               | string |          | `"ALL_STUDENTS"`                                       | Mode for assigning course work; defaults to ALL\_STUDENTS.                                                                                                                                  |
| `scheduledTime`              | string |          | `"2024-12-20T09:00:00Z"`                               | RFC 3339 timestamp at which to publish the course work.                                                                                                                                     |
| `gradingPeriodId`            | string |          | `"987654321"`                                          | Grading period identifier.                                                                                                                                                                  |
| `individualStudentsOptions`  | object |          | —                                                      | Options for INDIVIDUAL\_STUDENTS assignee mode.                                                                                                                                             |
| `submissionModificationMode` | string |          | `"MODIFIABLE_UNTIL_TURNED_IN"`                         | Controls when students can modify submissions.                                                                                                                                              |

***

### `Google Classroom Courses Coursework Rubrics List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_COURSEWORK\_RUBRICS\_LIST**

Tool to list rubrics for a specific coursework. Use when you need to retrieve grading rubrics that the requester has permission to view.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                 | Description                                                                          |
| ---------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `courseId`       | string  |     ✅    | `"835614853904"`        | Identifier of the course. Can be the Classroom-assigned ID or an alias.              |
| `pageSize`       | integer |          | `1`                     | Maximum number of items to return. Default and maximum is 1.                         |
| `pageToken`      | string  |          | `"CgYIARID"`            | Token from a previous list call indicating the next page of results.                 |
| `courseWorkId`   | string  |     ✅    | `"835814480041"`        | Identifier of the course work.                                                       |
| `previewVersion` | string  |          | `"PREVIEW_UNSPECIFIED"` | Optional preview version of the API that specifies new capabilities being previewed. |

***

### `Google Classroom Courses Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_CREATE**

Tool to create a new course. Use when a teacher needs to establish a Classroom course before enrollment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                 | Description                                                                    |
| -------------------- | ------ | :------: | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `name`               | string |     ✅    | `"Math 101"`                                                                            | Name of the course. Max length 750 characters.                                 |
| `room`               | string |          | `"Room 201"`                                                                            | Room location for the course. Max length 64 characters.                        |
| `ownerId`            | string |     ✅    | `"teacher@example.com"`                                                                 | Identifier of the course owner. Can be the user's numeric ID or email address. |
| `section`            | string |          | `"Period 2"`                                                                            | Section of the course. Max length 2800 characters.                             |
| `courseState`        | string |          | `"ACTIVE"`                                                                              | Initial state of the course.                                                   |
| `description`        | string |          | `"This course covers foundational concepts in algebra, geometry, and problem-solving."` | Detailed description of the course. Max length 30,000 characters.              |
| `descriptionHeading` | string |          | `"Algebra and Geometry"`                                                                | Heading for the course description. Max length 360 characters.                 |

***

### `Google Classroom Courses Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_DELETE**

Tool to delete a course. Use when you need to remove a course after confirming the course ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                         |
| --------- | ------ | :------: | -------------- | ----------------------------------- |
| `id`      | string |     ✅    | `"1234567890"` | Identifier of the course to delete. |

***

### `Google Classroom Courses Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_GET**

Tool to get details for a specific course. Use when you need full course information by ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                                                                    |
| --------- | ------ | :------: | --------- | ---------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"12345"` | Identifier of the course. This identifier can be either the Classroom-assigned ID or an alias. |

***

### `Google Classroom Courses Get Grading Period Settings`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_GET\_GRADING\_PERIOD\_SETTINGS**

Tool to retrieve grading period settings for a course. Use when you need to access the grading periods configured in a course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                          |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------ |
| `courseId` | string |     ✅    | `"835614853904"` | Identifier of the course. This can be the Classroom-assigned identifier or an alias. |

***

### `Google Classroom Courses List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_LIST**

Tool to list all courses accessible to the authenticated user. Use when you need a paginated list of courses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                 | Description                                                                                                 |
| -------------- | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `pageSize`     | integer |          | `10`                                    | Maximum number of items to return. Must be ≥1.                                                              |
| `pageToken`    | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token identifying the page of results to return.                                                            |
| `studentId`    | string  |          | `"me"`                                  | Restricts returned courses to those in which the student is enrolled. Can be the user's numeric ID or 'me'. |
| `teacherId`    | string  |          | `"me"`                                  | Restricts returned courses to those taught by the teacher. Can be the user's numeric ID or 'me'.            |
| `courseStates` | array   |          | `["ACTIVE"]`                            | Restricts returned courses to those in specified states.                                                    |

***

### `Google Classroom Courses Patch`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_PATCH**

Tool to update one or more fields of a Classroom course. Use after retrieving course details and confirming fields to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example          | Description                                                     |
| -------------------- | ------ | :------: | ---------------- | --------------------------------------------------------------- |
| `id`                 | string |     ✅    | `"1234567890"`   | Identifier of the course to update.                             |
| `name`               | string |          | `"Biology 101"`  | New name of the course.                                         |
| `room`               | string |          | `"Room A"`       | New room/location for the course.                               |
| `ownerId`            | string |          | —                | New owner user ID for the course.                               |
| `section`            | string |          | `"Period 3"`     | New section of the course.                                      |
| `updateMask`         | string |     ✅    | `"name,section"` | Comma-separated list of fields to update. E.g., 'name,section'. |
| `courseState`        | string |          | —                | New state of the course.                                        |
| `description`        | string |          | —                | New detailed description of the course.                         |
| `descriptionHeading` | string |          | —                | New heading for the course description.                         |

***

### `Google Classroom Courses Posts Add On Attachments List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_POSTS\_ADD\_ON\_ATTACHMENTS\_LIST**

Tool to list all add-on attachments created under a post. Use when you need to retrieve attachments added by an add-on. Requires the add-on to have active attachments on the post or permission to create new attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                     |
| ----------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `itemId`    | string  |          | `"835813743554"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial whose attachments should be enumerated. Optional query parameter.             |
| `postId`    | string  |     ✅    | `"835813743554"` | Identifier of the post under the course.                                                                                                        |
| `courseId`  | string  |     ✅    | `"835614853904"` | Identifier of the course.                                                                                                                       |
| `pageSize`  | integer |          | —                | Maximum number of attachments to return. The service may return fewer than this value. If unspecified, at most 20 attachments will be returned. |
| `pageToken` | string  |          | —                | A page token received from a previous list call. Provide this to retrieve the subsequent page.                                                  |

***

### `Google Classroom Courses Posts Get Add On Context`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_POSTS\_GET\_ADD\_ON\_CONTEXT**

Tool to get metadata for Classroom add-ons in the context of a specific post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                                                                                                  |
| -------------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835813743554"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial with the attached add-on.                                                                                  |
| `postId`       | string |     ✅    | `"835813743554"` | Identifier of the post (path parameter, deprecated - but required in path).                                                                                                  |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                                                                                    |
| `addOnToken`   | string |          | —                | Optional authorization token passed when redirecting to the add-on's URL. Required unless the add-on has attachments on the post or the requesting project created the post. |
| `attachmentId` | string |          | —                | Optional identifier for the specific attachment. Required for all requests except Attachment Discovery iframe.                                                               |

***

### `Google Classroom Courses Students Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_STUDENTS\_CREATE**

Tool to add a student to a course. Use when enrolling a user as a student in a course. Domain administrators can directly enroll users; students can self-enroll with an enrollment code.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example          | Description                                                                                                                                                                           |
| ---------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`         | string |     ✅    | `"me"`           | Identifier of the user to enroll as a student. Can be the numeric identifier for the user, the email address of the user, or the string literal "me" to indicate the requesting user. |
| `courseId`       | string |     ✅    | `"818669578118"` | Identifier of the course. Can be the Classroom-assigned identifier or an alias.                                                                                                       |
| `enrollmentCode` | string |          | `"2zpvki3j"`     | Enrollment code of the course. Required if the userId corresponds to the authenticated user. Optional for domain administrators who can directly enroll users.                        |

***

### `Google Classroom Courses Students Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_STUDENTS\_DELETE**

Tool to delete a student from a course. Use when you need to remove a student's enrollment from a specific course. This revokes their access to course materials and participation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                                                                                                                                                     |
| ---------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`   | string |     ✅    | `"12345"`        | Identifier of the student to delete. The identifier can be one of the following: the numeric identifier for the user, the email address of the user, or the string literal 'me' indicating the requesting user. |
| `courseId` | string |     ✅    | `"835614853904"` | Identifier of the course. This may be the Classroom-assigned identifier or an alias.                                                                                                                            |

***

### `Google Classroom Courses Students Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_STUDENTS\_GET**

Tool to retrieve a specific student of a course. Use when you need to get detailed information about a student enrolled in a course by courseId and userId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                   | Description                                                                                                                                                        |
| ---------- | ------ | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `userId`   | string |     ✅    | `"118050831788026661489"` | Identifier of the user. This can be the numeric identifier for the user, the email address of the user, or the literal string 'me' indicating the requesting user. |
| `courseId` | string |     ✅    | `"835614853904"`          | Identifier of the course. This may be the Classroom-assigned identifier or an alias.                                                                               |

***

### `Google Classroom Courses Students Guardians List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_STUDENTS\_GUARDIANS\_LIST**

Tool to list guardians of a student in a course. Use when you need to retrieve and paginate guardians for a given student in a course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                     |
| ----------- | ------- | :------: | --------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"1234567890"`                          | Identifier of the course. Can be the Classroom-assigned ID or an alias.                         |
| `pageSize`  | integer |          | `20`                                    | Maximum number of guardians to return. Must be between 1 and 100. Defaults to server's default. |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token identifying which page of results to return.                                              |
| `studentId` | string  |     ✅    | `"student123"`                          | Identifier of the student (the user's id or email address, or 'me').                            |

***

### `Google Classroom Courses Students List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_STUDENTS\_LIST**

Tool to list students in a course. Use after you have the course ID to page through enrolled students.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                                     |
| ----------- | ------- | :------: | --------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"1234567890"`                          | Identifier of the course whose students should be listed. Can be the Classroom-assigned identifier or an alias. |
| `pageSize`  | integer |          | `100`                                   | Maximum number of students to return. Must be between 1 and 100.                                                |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token specifying which page of results to return. Obtain from a previous list call's `nextPageToken`.           |

***

### `Google Classroom Courses Teachers Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TEACHERS\_DELETE**

Tool to delete a teacher from a course. Use when you need to remove a teacher's enrollment from a specific course. This revokes their teaching access to the course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                | Description                                                                                                                                                                                                     |
| ---------- | ------ | :------: | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`   | string |     ✅    | `"999999999999999999"` | Identifier of the teacher to delete. The identifier can be one of the following: the numeric identifier for the user, the email address of the user, or the string literal 'me' indicating the requesting user. |
| `courseId` | string |     ✅    | `"835614853904"`       | Identifier of the course. This may be the Classroom-assigned identifier or an alias.                                                                                                                            |

***

### `Google Classroom Courses Teachers Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TEACHERS\_GET**

Tool to get teacher enrollment. Use when you need to retrieve a specific teacher in a course by courseId and userId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                          | Description                                                                                    |
| ----------- | ------ | :------: | -------------------------------- | ---------------------------------------------------------------------------------------------- |
| `fields`    | string |          | `"courseId,userId,emailAddress"` | Selector specifying which fields to include in a partial response.                             |
| `userId`    | string |     ✅    | `"78910"`                        | Identifier of the teacher to retrieve. Can be the teacher's numeric user ID or email address.  |
| `courseId`  | string |     ✅    | `"12345"`                        | Identifier of the course. This identifier can be either the Classroom-assigned ID or an alias. |
| `quotaUser` | string |          | `"user-1234"`                    | Arbitrary string assigned to a user for quota purposes (server-side applications only).        |

***

### `Google Classroom Courses Teachers List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TEACHERS\_LIST**

Tool to list teachers in a course. Use after you have the course ID to page through enrolled teachers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                      |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"1234567890"`   | Identifier of the course whose teachers should be listed.        |
| `pageSize`  | integer |          | `30`             | Maximum number of teachers to return. Must be between 1 and 100. |
| `pageToken` | string  |          | `"ABCDEF123456"` | Token specifying which page of results to return.                |

***

### `Google Classroom Courses Topics Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TOPICS\_CREATE**

Tool to create a course topic. Use when you need to organize course content into named sections.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example        | Description                                      |
| ---------- | ------ | :------: | -------------- | ------------------------------------------------ |
| `name`     | string |     ✅    | `"Homework"`   | Name of the topic.                               |
| `courseId` | string |     ✅    | `"1234567890"` | Identifier of the course to create the topic in. |

***

### `Google Classroom Courses Topics Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TOPICS\_DELETE**

Tool to delete a course topic. Use when you need to remove a topic from a course after confirming the course and topic IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                        |
| ---------- | ------ | :------: | ---------------- | ---------------------------------- |
| `id`       | string |     ✅    | `"abcdef123456"` | Identifier of the topic to delete. |
| `courseId` | string |     ✅    | `"1234567890"`   | Identifier of the course.          |

***

### `Google Classroom Courses Topics Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TOPICS\_GET**

Tool to get a course topic. Use when you need to retrieve details of a specific course topic by ID after confirming the course and topic IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                          |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------ |
| `id`       | string |     ✅    | `"abcdef123456"` | Identifier of the topic to retrieve.                                                 |
| `courseId` | string |     ✅    | `"1234567890"`   | Identifier of the course. This can be the Classroom-assigned identifier or an alias. |

***

### `Google Classroom Courses Topics List`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TOPICS\_LIST**

Tool to list topics in a course. Use when you have confirmed the courseId and need to retrieve its topics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                |
| ----------- | ------- | :------: | ---------------- | ---------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"1234567890"`   | Identifier of the course (Classroom-assigned ID or alias). |
| `pageSize`  | integer |          | `30`             | Maximum number of topics to return; zero means no limit.   |
| `pageToken` | string  |          | `"abcdef123456"` | Token identifying which page of results to return.         |

***

### `Google Classroom Courses Topics Patch`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_TOPICS\_PATCH**

Tool to update fields of a course topic. Use when you need to rename a topic after confirming its current details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                |
| ------------ | ------ | :------: | -------------- | -------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"topic123"`   | Identifier of the topic.                                                   |
| `name`       | string |          | `"Homework 1"` | New display name of the topic.                                             |
| `courseId`   | string |     ✅    | `"1234567890"` | Identifier of the course.                                                  |
| `updateMask` | string |          | `"name"`       | Comma-separated list of fields to update. Currently only 'name' supported. |

***

### `Google Classroom Courses Update`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_UPDATE**

Tool to update a course. Use when you need to modify course details like name, description, or state. This performs a full update (PUT) of the course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                 | Description                                                                                                       |
| -------------------- | ------ | :------: | --------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `id`                 | string |     ✅    | `"835614853904"`                                                                        | Identifier of the course to update. This can be either the Classroom-assigned identifier or an alias.             |
| `name`               | string |     ✅    | `"History 301: World Civilizations"`                                                    | Name of the course. Max length 750 characters. Valid UTF-8.                                                       |
| `room`               | string |          | `"Building C - Room 306"`                                                               | Room location for the course. Max length 650 characters.                                                          |
| `ownerId`            | string |     ✅    | `"118050831788026661489"`                                                               | Identifier of the course owner. Can be the user's numeric ID or email address. Only admins can modify this field. |
| `section`            | string |          | `"Evening Class - Section B"`                                                           | Section designation of the course (e.g., 'Period 2'). Max length 2,800 characters.                                |
| `courseState`        | string |          | `"ACTIVE"`                                                                              | State of the course. Can be ACTIVE, ARCHIVED, PROVISIONED, or DECLINED.                                           |
| `description`        | string |          | `"A comprehensive study of world civilizations from ancient times to the present day."` | Detailed description of the course. Max length 30,000 characters.                                                 |
| `descriptionHeading` | string |          | `"Exploring Ancient to Modern History"`                                                 | Optional heading for the course description. Max length 3,600 characters.                                         |

***

### `Google Classroom Courses Work Materials Patch`

Integration name: **GOOGLE\_CLASSROOM\_COURSES\_WORK\_MATERIALS\_PATCH**

Tool to update fields of a course work material. Use when you need to modify specific details of an existing course work material after confirming which fields to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                           | Description                                                                                                    |
| --------------- | ------ | :------: | --------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `id`            | string |     ✅    | `"0987654321"`                    | Identifier of the course work material to update.                                                              |
| `state`         | string |          | `"PUBLISHED"`                     | State of the course work material.                                                                             |
| `title`         | string |          | `"Updated Material Title"`        | Title of the course work material (1-3,000 characters).                                                        |
| `topicId`       | string |          | —                                 | Identifier of the topic to associate with this material.                                                       |
| `courseId`      | string |     ✅    | `"1234567890"`                    | Identifier of the course. Can be the Classroom-assigned identifier or an alias.                                |
| `updateMask`    | string |     ✅    | `"title"`                         | Comma-separated list of fields to update. Supported fields: title, description, state, scheduledTime, topicId. |
| `description`   | string |          | `"Updated material description."` | Description of the course work material (max 30,000 characters).                                               |
| `scheduledTime` | string |          | `"2023-10-28T16:01:23Z"`          | RFC3339 timestamp when the material is scheduled to be published.                                              |

***

### `Google Classroom Course Work Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_CREATE**

Tool to create a CourseWork item in a course. Use when you need to assign an assignment or question to students immediately or on a schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type   | Required | Example | Description                                                           |
| ---------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------- |
| `state`                      | string |          | —       | Whether to save as draft or publish immediately                       |
| `title`                      | string |     ✅    | —       | Title of the coursework                                               |
| `dueDate`                    | object |          | —       | Date portion of coursework due date (year, month, day).               |
| `dueTime`                    | object |          | —       | Time portion of coursework due time (hours, minutes, seconds, nanos). |
| `topicId`                    | string |          | —       | Topic ID to organize coursework under                                 |
| `courseId`                   | string |     ✅    | —       | Identifier of the course                                              |
| `workType`                   | string |     ✅    | —       | Type of coursework being created                                      |
| `materials`                  | array  |          | —       | Materials to attach to the coursework                                 |
| `maxPoints`                  | number |          | —       | Maximum points available for the coursework                           |
| `assignment`                 | object |          | —       | Assignment details if workType is ASSIGNMENT                          |
| `description`                | string |          | —       | Detailed description or instructions                                  |
| `scheduledTime`              | string |          | —       | RFC3339 timestamp to auto-publish the coursework                      |
| `shortAnswerQuestion`        | object |          | —       | Details for short-answer question.                                    |
| `multipleChoiceQuestion`     | object |          | —       | Details for multiple-choice question.                                 |
| `submissionModificationMode` | string |          | —       | Controls if students can edit submissions after turn-in               |

***

### `Google Classroom Course Work Delete`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_DELETE**

Tool to delete a specific CourseWork. Use when you need to remove a coursework item from a course after confirming the IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example        | Description                                  |
| ---------- | ------ | :------: | -------------- | -------------------------------------------- |
| `id`       | string |     ✅    | `"987654321"`  | Identifier of the coursework item to delete. |
| `courseId` | string |     ✅    | `"1234567890"` | Identifier of the course.                    |

***

### `Google Classroom Course Work Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_GET**

Tool to get details of a specific coursework. Use when detailed information about a particular assignment is needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example   | Description                                                                                            |
| ---------- | ------ | :------: | --------- | ------------------------------------------------------------------------------------------------------ |
| `id`       | string |     ✅    | `"cw123"` | Identifier of the coursework item to retrieve.                                                         |
| `courseId` | string |     ✅    | `"12345"` | Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias. |

***

### `Google Classroom Course Work List`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_LIST**

Tool to list coursework in a course. Use after verifying courseId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                         | Description                                                                                                                                                                                            |
| ------------------ | ------- | :------: | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `orderBy`          | string  |          | `"dueDate asc,updateTime desc"` | Sort ordering for results. Comma-separated list of fields with optional direction. Supported fields: 'updateTime', 'dueDate'. Supported direction keywords: 'asc', 'desc'. Default: 'updateTime desc'. |
| `courseId`         | string  |     ✅    | `"1234567890"`                  | Identifier of the course (Classroom-assigned ID or alias).                                                                                                                                             |
| `pageSize`         | integer |          | `20`                            | Maximum number of items to return. Zero or unspecified indicates the server may assign a maximum. The server may return fewer than the specified number.                                               |
| `pageToken`        | string  |          | `"CgYIARID"`                    | NextPageToken from a previous list call, indicating subsequent page of results to return. Must be used with otherwise identical request.                                                               |
| `previewVersion`   | string  |          | `"PREVIEW_UNSPECIFIED"`         | Preview version of the API. Set to access new capabilities in the Preview Program.                                                                                                                     |
| `courseWorkStates` | array   |          | `["PUBLISHED"]`                 | Restriction on the coursework state to return. Only coursework matching one of these states is returned. If unspecified, defaults to \['PUBLISHED'].                                                   |

***

### `Google Classroom Course Work Materials Create`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_MATERIALS\_CREATE**

Tool to create course work material. Use when adding resources or notes to a course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                  | Description                                                                                                         |
| --------------------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------- |
| `state`                     | string  |          | —                        | The state of the course work material (e.g., PUBLISHED, DRAFT).                                                     |
| `title`                     | string  |          | `"Chapter 1 Notes"`      | Title of the course work material.                                                                                  |
| `topicId`                   | string  |          | —                        | Identifier of the topic to which this material belongs.                                                             |
| `courseId`                  | string  |     ✅    | —                        | Identifier of the course.                                                                                           |
| `materials`                 | array   |          | —                        | Materials attached to the course work material. Each element defines one of driveFile, link, form, or youtubeVideo. |
| `description`               | string  |          | `"Notes for chapter 1."` | Description of the course work material.                                                                            |
| `assigneeMode`              | string  |          | —                        | Who can see the material. Defaults to ALL\_STUDENTS.                                                                |
| `scheduledTime`             | string  |          | —                        | RFC3339 formatted time when the material is scheduled to be published, e.g., '2020-10-28T16:01:23Z'.                |
| `associatedWithDeveloper`   | boolean |          | —                        | Whether this material is associated with a developer project.                                                       |
| `individualStudentsOptions` | object  |          | —                        | Options for INDIVIDUAL\_STUDENTS assignee mode.                                                                     |

***

### `Google Classroom Course Work Materials Get`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_MATERIALS\_GET**

Tool to get a coursework material. Use when you need to retrieve details of a specific coursework material by course and material ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example        | Description                                                                 |
| ---------- | ------ | :------: | -------------- | --------------------------------------------------------------------------- |
| `id`       | string |     ✅    | `"cwmat123"`   | Identifier of the coursework material.                                      |
| `courseId` | string |     ✅    | `"1234567890"` | Identifier of the course. Can be Classroom-assigned identifier or an alias. |

***

### `Google Classroom Course Work Materials List`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_MATERIALS\_LIST**

Tool to list course work materials in a course. Use when you need to retrieve and paginate materials for a given courseId.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                       |
| ----------- | ------- | :------: | --------------------------------------- | --------------------------------------------------------------------------------- |
| `orderBy`   | string  |          | `"updateTime desc"`                     | Optional sorting order; allowed values are 'updateTime asc' or 'updateTime desc'. |
| `courseId`  | string  |     ✅    | `"1234567890"`                          | Identifier of the course whose courseWorkMaterials should be returned.            |
| `pageSize`  | integer |          | `30`                                    | Maximum number of items to return. Must be between 1 and 100. Defaults to 30.     |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token identifying which page of results to return.                                |

***

### `Google Classroom Course Work Student Submissions List`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_STUDENT\_SUBMISSIONS\_LIST**

Tool to list student submissions for a specific coursework. Use when you need to fetch or paginate student submissions by course and coursework, optionally filtering by user, state, or timeliness.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                    | Description                                                                                   |
| -------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------- |
| `late`         | string  |          | —                          | Filters returned submissions to those that are on time or late.                               |
| `states`       | array   |          | `["TURNED_IN","RETURNED"]` | Filters returned submissions to those in the specified states.                                |
| `userId`       | string  |          | `"me"`                     | Restricts returned submissions to those owned by the specified user. Use numeric ID or 'me'.  |
| `courseId`     | string  |     ✅    | `"1234567890"`             | Identifier of the course.                                                                     |
| `pageSize`     | integer |          | `50`                       | Maximum number of items to return. Defaults to 30; maximum is 100.                            |
| `pageToken`    | string  |          | —                          | Token for next page of results.                                                               |
| `courseWorkId` | string  |     ✅    | `"0987654321"`             | Identifier of the coursework; use '-' to return submissions for all coursework in the course. |

***

### `Google Classroom Course Work Student Submissions Reclaim`

Integration name: **GOOGLE\_CLASSROOM\_COURSE\_WORK\_STUDENT\_SUBMISSIONS\_RECLAIM**

Tool to reclaim a student submission for editing. Use after a student requests to edit their turned-in submission, resetting its state to CREATED.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example        | Description                           |
| -------------- | ------ | :------: | -------------- | ------------------------------------- |
| `id`           | string |     ✅    | `"sub123"`     | Identifier of the student submission. |
| `courseId`     | string |     ✅    | `"1234567890"` | Identifier of the course.             |
| `courseWorkId` | string |     ✅    | `"cw123"`      | Identifier of the coursework.         |

***

### `Google Classroom Get Coursework Addon Attachment`

Integration name: **GOOGLE\_CLASSROOM\_GET\_COURSEWORK\_ADDON\_ATTACHMENT**

Tool to get an add-on attachment from course work. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                              |
| -------------- | ------ | :------: | ---------------- | -------------------------------------------------------------------------------------------------------- |
| `postId`       | string |     ✅    | `"835814480041"` | Identifier of the CourseWork item containing the attachment.                                             |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                |
| `attachmentId` | string |     ✅    | `"123456789"`    | Identifier of the add-on attachment. Classroom-assigned identifier for this attachment, unique per post. |

***

### `Google Classroom Get Coursework Material Addon Context`

Integration name: **GOOGLE\_CLASSROOM\_GET\_COURSEWORK\_MATERIAL\_ADDON\_CONTEXT**

Tool to get metadata for Classroom add-ons in the context of a specific course work material. Use when validating query parameters for add-ons loading in an iframe. Returns course/item identifiers and role-specific context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example          | Description                                                                                                                                                |
| -------------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `itemId`       | string |     ✅    | `"835618315038"` | Identifier of the Announcement, CourseWork, or CourseWorkMaterial resource.                                                                                |
| `courseId`     | string |     ✅    | `"835614853904"` | Identifier of the course.                                                                                                                                  |
| `addOnToken`   | string |          | —                | Optional. Authorization token passed when redirected from Classroom. Required unless the add-on has attachments or the developer project created the post. |
| `attachmentId` | string |          | —                | Optional. The attachment identifier. Required for most requests except Attachment Discovery iframe scenarios.                                              |

***

### `Google Classroom Invitations Create`

Integration name: **GOOGLE\_CLASSROOM\_INVITATIONS\_CREATE**

Tool to create an invitation for a user to a course. Use after confirming the course ID is valid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                      |
| ---------- | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------- |
| `role`     | string |     ✅    | `"STUDENT"`             | Role to invite the user as.                                                      |
| `userId`   | string |     ✅    | `"student@example.com"` | Identifier of the user to invite. Can be the user's numeric ID or email address. |
| `courseId` | string |     ✅    | `"1234567890"`          | Identifier of the course to invite the user to.                                  |

***

### `Google Classroom Invitations Delete`

Integration name: **GOOGLE\_CLASSROOM\_INVITATIONS\_DELETE**

Tool to delete an invitation. Use when you need to remove an invitation after confirming the invitation ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                             |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------- |
| `id`      | string |     ✅    | `"ODM1NjE0ODUzOTA0Kjc5Mjc3ODM4NzcwNlpa"` | Identifier of the invitation to delete. |

***

### `Google Classroom Invitations Get`

Integration name: **GOOGLE\_CLASSROOM\_INVITATIONS\_GET**

Tool to retrieve an invitation by its identifier. Use when you need to view invitation details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                     | Description                             |
| --------- | ------ | :------: | --------------------------- | --------------------------------------- |
| `id`      | string |     ✅    | `"your_invitation_id_here"` | Identifier of the invitation to return. |

***

### `Google Classroom Invitations List`

Integration name: **GOOGLE\_CLASSROOM\_INVITATIONS\_LIST**

Tool to list invitations that the requesting user is permitted to view. At least one of userId or courseId must be supplied.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                                                                                                                             |
| ----------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`    | string  |          | `"me"`                                  | Restricts returned invitations to those for a specific user. Can be the user's numeric identifier, email address, or 'me' for the requesting user. At least one of userId or courseId must be supplied. |
| `courseId`  | string  |          | `"1234567890"`                          | Restricts returned invitations to those for a course with the specified identifier. At least one of userId or courseId must be supplied.                                                                |
| `pageSize`  | integer |          | `100`                                   | Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results.                                |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token identifying the next page of results to return. Obtained from a previous list call's nextPageToken.                                                                                               |

***

### `Google Classroom List Courses Student Groups`

Integration name: **GOOGLE\_CLASSROOM\_LIST\_COURSES\_STUDENT\_GROUPS**

Tool to list student groups in a course. Use when you need to retrieve groups within a specific course.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                 | Description                                                                                         |
| ----------- | ------- | :------: | --------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `courseId`  | string  |     ✅    | `"840561215908"`                        | Identifier of the course. Can be the Classroom-assigned identifier or an alias.                     |
| `pageSize`  | integer |          | `30`                                    | Maximum number of items to return. Zero or unspecified indicates no limit.                          |
| `pageToken` | string  |          | `"Cg0KC2NvdXJzZVRva2VuEjgKIghhYmNkZWY"` | Token specifying which page of results to return. Obtain from a previous list call's nextPageToken. |

***

### `Google Classroom List Coursework Addon Attachments`

Integration name: **GOOGLE\_CLASSROOM\_LIST\_COURSEWORK\_ADDON\_ATTACHMENTS**

Tool to list all add-on attachments created by an add-on under a course work. Use when you need to retrieve attachments added by an add-on to course work.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                      |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------------------------------- |
| `postId`   | string |     ✅    | `"835814480041"` | Identifier of the CourseWork whose attachments should be listed. |
| `courseId` | string |     ✅    | `"835614853904"` | Identifier of the course.                                        |

***

### `Google Classroom Registrations Create`

Integration name: **GOOGLE\_CLASSROOM\_REGISTRATIONS\_CREATE**

Tool to create a registration for push notifications from Google Classroom. Use when you need to set up notifications from a specific feed to a Cloud Pub/Sub topic. Requires the OAuth scope <https://www.googleapis.com/auth/classroom.push-notifications>.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example | Description                                                                                                                                                              |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `feed`             | object |     ✅    | —       | Specification of the feed to subscribe to. The feedType determines which notifications will be sent, and conditional info fields must be provided based on the feedType. |
| `cloudPubsubTopic` | object |     ✅    | —       | The Cloud Pub/Sub topic where notifications will be published. Classroom must have permission to publish to this topic.                                                  |

***

### `Google Classroom User Profiles Get`

Integration name: **GOOGLE\_CLASSROOM\_USER\_PROFILES\_GET**

Tool to retrieve a user profile by user ID. Use when you need to get information about a specific user including their name, email, photo, and permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                   | Description                                                                                                                                               |
| --------- | ------ | :------: | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`  | string |     ✅    | `"118050831788026661489"` | Identifier of the user to retrieve. Can be the numeric user identifier, user's email address, or the literal string 'me' to indicate the requesting user. |


# Google Docs

Your Toolhouse AI Worker can connect to Googledocs using 35 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](https://toolhouse.app/auth-connections?authkit_slugs=googledocs).

## Tools (35)

### `Googledocs Copy Document`

Integration name: **GOOGLEDOCS\_COPY\_DOCUMENT**

Tool to create a copy of an existing Google Document. Use this to duplicate a document, for example, when using an existing document as a template. The copied document will have a default title (e.g., 'Copy of \[original title]') if no new title is provided, and will be placed in the user's root Google Drive folder.

#### Parameters

| Parameter               | Type    | Required | Example                        | Description                                                                                                       |
| ----------------------- | ------- | :------: | ------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
| `title`                 | string  |          | `"My New Document Title"`      | The title for the new copied document. If not provided, the title will be 'Copy of \[original document's title]'. |
| `document_id`           | string  |     ✅    | `"1a2b3c-example-document-id"` | The ID of the Google Document to be copied.                                                                       |
| `include_shared_drives` | boolean |          | —                              | Whether to support copying documents from shared drives. Defaults to True.                                        |

***

### `Googledocs Create Document`

Integration name: **GOOGLEDOCS\_CREATE\_DOCUMENT**

Creates a new Google Docs document using the provided title as filename and inserts the initial text at the beginning if non-empty, returning the document's ID and metadata (excluding body content).

#### Parameters

| Parameter | Type   | Required | Example                                        | Description                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`    | string |          | `"This document outlines the key findings..."` | Optional initial text content to insert at the beginning of the new document. If not provided, an empty document will be created. For very large text (over 50,000 characters), the text will be inserted in chunks to avoid API limits. |
| `title`   | string |     ✅    | `"Quarterly Business Review"`                  | Title for the new document, used as its filename in Google Drive.                                                                                                                                                                        |

***

### `Googledocs Create Document2`

Integration name: **GOOGLEDOCS\_CREATE\_DOCUMENT2**

DEPRECATED: Use GOOGLEDOCS\_CREATE\_DOCUMENT instead. Tool to create a blank Google Docs document with a specified title. Use when you need to create a new, empty document.

#### Parameters

| Parameter | Type   | Required | Example           | Description                                                                                  |
| --------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------- |
| `title`   | string |     ✅    | `"Meeting Notes"` | The title of the document to create. This will be used as the document name in Google Drive. |

***

### `Googledocs Create Document Markdown`

Integration name: **GOOGLEDOCS\_CREATE\_DOCUMENT\_MARKDOWN**

Creates a new Google Docs document, optionally initializing it with a title and content provided as Markdown text.

#### Parameters

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| --------------- | ------ | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`         | string |     ✅    | `"Meeting Notes Q3"` | The title for the new Google Docs document.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `image_assets`  | array  |          | —                    | Optional uploaded images that Markdown can reference by name. Use Markdown image syntax like . Public HTTPS image URLs in markdown do not need image\_assets.                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `markdown_text` | string |          | —                    | The initial content for the document, formatted as Markdown. Also accepts 'content' as an alias. Supports headings, real Google Docs lists including nested lists, multiple Markdown tables, task-list markers, images via publicly accessible URLs or matching image\_assets uploads (max 2KB URL length after resolution; formats: JPEG, PNG, GIF; SVG not supported), blockquotes, code blocks, hyperlinks (e.g., [text](broken://pages/9641405e8ea54dc919be52924d88754e608753ea)), and text formatting (bold, italic, etc.). If empty or omitted, creates document with title only. |

***

### `Googledocs Create Footer`

Integration name: **GOOGLEDOCS\_CREATE\_FOOTER**

Tool to create a new footer in a Google Document. Use when you need to add a footer, optionally specifying its type and the section it applies to.

#### Parameters

| Parameter                | Type   | Required | Example         | Description                                                                                                                                                                                                                          |
| ------------------------ | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `type`                   | string |     ✅    | `"DEFAULT"`     | The type of footer to create.                                                                                                                                                                                                        |
| `document_id`            | string |     ✅    | `"12345abcdef"` | The ID of the document to create the footer in.                                                                                                                                                                                      |
| `section_break_location` | object |          | —               | The location of the SectionBreak immediately preceding the section whose SectionStyle this footer should belong to. If this is unset or refers to the first section break in the document, the footer applies to the document style. |

***

### `Googledocs Create Footnote`

Integration name: **GOOGLEDOCS\_CREATE\_FOOTNOTE**

Tool to create a new footnote in a Google Document. Use this when you need to add a footnote at a specific location or at the end of the document body.

#### Parameters

| Parameter              | Type   | Required | Example                  | Description                                                                                                                                                                         |
| ---------------------- | ------ | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `location`             | object |          | —                        | Inserts the footnote reference at a specific index in the document. The segmentId within this Location object must be empty as footnotes can only be inserted in the document body. |
| `documentId`           | string |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"` | The ID of the document to create the footnote in.                                                                                                                                   |
| `endOfSegmentLocation` | object |          | —                        | Inserts the footnote reference at the end of the document body. The segmentId within this EndOfSegmentLocation object must be empty.                                                |

***

### `Googledocs Create Header`

Integration name: **GOOGLEDOCS\_CREATE\_HEADER**

Tool to create a new header in a Google Document, optionally with text content. Use this tool when you need to add a header to a document. You can provide: - document\_id: The ID of the document (required) - type: The header type (DEFAULT is the standard header) - text: Optional text content to add to the header - section\_break\_location: Optional location for section-specific headers

#### Parameters

| Parameter              | Type   | Required | Example                | Description                                                                                                                                                                                   |
| ---------------------- | ------ | :------: | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`                 | string |          | `"My Document Header"` | Optional text content to add to the header after creation. If provided, the text will be inserted into the header at index 0.                                                                 |
| `type`                 | string |          | —                      | The type of header to create. Use 'DEFAULT' for the standard document header. Only one DEFAULT header can exist per document; if one already exists, the existing header ID will be returned. |
| `documentId`           | string |     ✅    | `"12345abcdef"`        | The ID of the document to create the header in.                                                                                                                                               |
| `sectionBreakLocation` | object |          | —                      | The location of the SectionBreak which begins the section this header should belong to. Only needed for section-specific headers.                                                             |

***

### `Googledocs Create Named Range`

Integration name: **GOOGLEDOCS\_CREATE\_NAMED\_RANGE**

Tool to create a new named range in a Google Document. Use this to assign a name to a specific part of the document for easier reference or programmatic manipulation.

#### Parameters

| Parameter         | Type    | Required | Example                                          | Description                                                                                                                 |
| ----------------- | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string  |     ✅    | `"Chapter1Intro"`                                | The name for the new named range. Must be 1-256 characters.                                                                 |
| `tabId`           | string  |          | `"t.abc123"`                                     | Optional. The ID of the document tab containing this range. When omitted, Google Docs applies the request to the first tab. |
| `documentId`      | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789_AbCdEf"` | The ID of the document where the named range will be created.                                                               |
| `rangeEndIndex`   | integer |     ✅    | `200`                                            | The zero-based end index of the range.                                                                                      |
| `rangeSegmentId`  | string  |          | `"h.1a2b3c4d5e6f"`                               | Optional. The ID of the header, footer, or footnote. Empty for document body.                                               |
| `rangeStartIndex` | integer |     ✅    | `100`                                            | The zero-based start index of the range.                                                                                    |

***

### `Googledocs Create Paragraph Bullets`

Integration name: **GOOGLEDOCS\_CREATE\_PARAGRAPH\_BULLETS**

Tool to add bullets to paragraphs within a specified range in a Google Document. Use when you need to format a list or a set of paragraphs as bullet points.

#### Parameters

| Parameter                | Type   | Required | Example         | Description                                                                                                                     |
| ------------------------ | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `tabId`                  | string |          | `"t.abc123"`    | Optional tab ID to apply to createParagraphBullets.range.tabId. When omitted, Google Docs applies the request to the first tab. |
| `document_id`            | string |     ✅    | `"12345abcdef"` | The ID of the document to update.                                                                                               |
| `createParagraphBullets` | object |     ✅    | —               | The request body for creating paragraph bullets in the document.                                                                |

***

### `Googledocs Delete Content Range`

Integration name: **GOOGLEDOCS\_DELETE\_CONTENT\_RANGE**

Tool to delete a range of content from a Google Document. Use when you need to remove a specific portion of text or other structural elements within a document. Note: Every segment (body, header, footer, footnote) in Google Docs ends with a final newline character that cannot be deleted. Ensure the endIndex does not include this trailing newline.

#### Parameters

| Parameter     | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------- | ------ | :------: | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `range`       | object |     ✅    | —                                         | The range of content to delete. Deleting text across paragraph boundaries may merge paragraphs and affect styles. Certain deletions can invalidate document structure (e.g., part of a surrogate pair, last newline of critical elements, incomplete deletion of tables/equations). IMPORTANT: The endIndex must not include the final newline character at the end of a segment (body, header, footer, footnote), as this newline cannot be deleted. |
| `document_id` | string |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the document from which to delete content. This ID can be found in the URL of the Google Doc.                                                                                                                                                                                                                                                                                                                                               |

***

### `Googledocs Delete Footer`

Integration name: **GOOGLEDOCS\_DELETE\_FOOTER**

Tool to delete a footer from a Google Document. Use when you need to remove a footer from a specific section or the default footer.

#### Parameters

| Parameter     | Type   | Required | Example         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tab_id`      | string |          | `"tab_abc"`     | The tab that contains the footer to delete. When omitted, the request is applied to the first tab.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `footer_id`   | string |     ✅    | —               | The ID of the footer to delete. Footer IDs are system-generated strings created by Google Docs. Obtain a valid footer ID from: (1) GOOGLEDOCS\_CREATE\_FOOTER response (footer\_id field), or (2) GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID (footers dictionary keys). Do not use made-up or placeholder values. If this footer is defined on DocumentStyle, the reference to this footer is removed, resulting in no footer of that type for the first section of the document. If this footer is defined on a SectionStyle, the reference to this footer is removed and the footer of that type is now continued from the previous section. |
| `document_id` | string |     ✅    | `"12345abcdef"` | The ID of the document to delete the footer from.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Googledocs Delete Header`

Integration name: **GOOGLEDOCS\_DELETE\_HEADER**

Deletes the header from the specified section or the default header if no section is specified. Use this tool to remove a header from a Google Document.

#### Parameters

| Parameter     | Type   | Required | Example         | Description                                                                                                                                                                                                                                                                                                                                                      |
| ------------- | ------ | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tab_id`      | string |          | `"tab_abc"`     | The tab containing the header to delete. When omitted, the request is applied to the first tab.                                                                                                                                                                                                                                                                  |
| `header_id`   | string |     ✅    | `"header_123"`  | The ID of the header to delete. If this header is defined on `DocumentStyle`, the reference to this header is removed, resulting in no header of that type for the first section of the document. If this header is defined on a `SectionStyle`, the reference to this header is removed and the header of that type is now continued from the previous section. |
| `document_id` | string |     ✅    | `"12345abcdef"` | The ID of the document from which to delete the header.                                                                                                                                                                                                                                                                                                          |

***

### `Googledocs Delete Named Range`

Integration name: **GOOGLEDOCS\_DELETE\_NAMED\_RANGE**

Tool to delete a named range from a Google Document. Use when you need to remove a previously defined named range by its ID or name.

#### Parameters

| Parameter          | Type   | Required | Example | Description                          |
| ------------------ | ------ | :------: | ------- | ------------------------------------ |
| `document_id`      | string |     ✅    | —       | The ID of the document.              |
| `deleteNamedRange` | object |     ✅    | —       | Specifies the named range to delete. |

***

### `Googledocs Delete Paragraph Bullets`

Integration name: **GOOGLEDOCS\_DELETE\_PARAGRAPH\_BULLETS**

Tool to remove bullets from paragraphs within a specified range in a Google Document. Use when you need to clear bullet formatting from a section of a document.

#### Parameters

| Parameter     | Type   | Required | Example                                                         | Description                                                                                                                                                                                                            |
| ------------- | ------ | :------: | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `range`       | object |     ✅    | `{"tabId":null,"endIndex":100,"segmentId":null,"startIndex":1}` | The range of the document from which to delete paragraph bullets. The range is applied to the document body by default. To specify a different segment (e.g. header, footer), include segment\_id in the range object. |
| `tab_id`      | string |          | `"0"`                                                           | The ID of the tab the range is in. If omitted, it applies to the first tab or the singular tab in a single-tab document.                                                                                               |
| `document_id` | string |     ✅    | `"195j9eDD34FqNGOnnU_S-321gW1WkStiF72rIosvBM4E"`                | The ID of the document to update.                                                                                                                                                                                      |

***

### `Googledocs Delete Table Column`

Integration name: **GOOGLEDOCS\_DELETE\_TABLE\_COLUMN**

Tool to delete a column from a table in a Google Document. Use this tool when you need to remove a specific column from an existing table within a document.

#### Parameters

| Parameter     | Type   | Required | Example         | Description                                             |
| ------------- | ------ | :------: | --------------- | ------------------------------------------------------- |
| `requests`    | array  |     ✅    | —               | A list of requests to be applied to the document.       |
| `document_id` | string |     ✅    | `"12345abcdef"` | The ID of the document to delete the table column from. |

***

### `Googledocs Delete Table Row`

Integration name: **GOOGLEDOCS\_DELETE\_TABLE\_ROW**

Tool to delete a row from a table in a Google Document. Use when you need to remove a specific row from an existing table.

#### Parameters

| Parameter           | Type   | Required | Example                                   | Description                                                           |
| ------------------- | ------ | :------: | ----------------------------------------- | --------------------------------------------------------------------- |
| `documentId`        | string |     ✅    | `"195j9eDD34F53d2g2HMJ-N0kKc_P8tq3/edit"` | The ID of the document.                                               |
| `tableCellLocation` | object |     ✅    | —                                         | The reference table cell location from which the row will be deleted. |

***

### `Googledocs Export Document As Pdf`

Integration name: **GOOGLEDOCS\_EXPORT\_DOCUMENT\_AS\_PDF**

Tool to export a Google Docs file as PDF using the Google Drive API. Use when you need to generate a PDF version of a Google Docs document for download or distribution. Note: Google Drive enforces a 10MB limit on export content.

#### Parameters

| Parameter  | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                         |
| ---------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`  | string |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the Google Docs file to export as PDF. This is the same as the document ID for Google Docs files - typically a 44-character alphanumeric string. Extract it from a Google Docs URL: <https://docs.google.com/document/d/{FILE\\_ID}/edit> |
| `filename` | string |          | `"document.pdf"`                                 | Optional suggested filename for the exported PDF (e.g., 'report.pdf'). If not provided, a default filename will be generated.                                                                                                                       |

***

### `Googledocs Get Document By Id`

Integration name: **GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID**

Retrieves an existing Google Document by its ID; will error if the document is not found.

#### Parameters

| Parameter            | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| -------------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                 | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier for a native Google Docs document (typically a 44-character alphanumeric string). Accepts either a document ID or a full Google Docs URL (e.g., <https://docs.google.com/document/d/{DOCUMENT\\_ID}/edit>). When a URL is provided, the document ID will be automatically extracted. IMPORTANT: This tool only works with native Google Docs documents (mimeType application/vnd.google-apps.document), not uploaded Office files (DOCX, XLSX, etc.) stored in Google Drive. Use GOOGLEDOCS\_SEARCH\_DOCUMENTS to find available documents. |
| `includeTabsContent` | boolean |          | —                                                | When true, request includeTabsContent=true so the response includes document.tabs with content for all tabs. When false, Google Docs returns the legacy first-tab content fields.                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Googledocs Get Document Plaintext`

Integration name: **GOOGLEDOCS\_GET\_DOCUMENT\_PLAINTEXT**

Retrieve a Google Doc by ID and return a best-effort plain-text rendering. Converts document structure into plain text including paragraphs, lists, and tables without requiring clients to traverse complex Docs API JSON.

#### Parameters

| Parameter              | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                    |
| ---------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tab_ids`              | array   |          | —                                                | Optional tab IDs to include when include\_tabs\_content=true. Nested child tabs are searched recursively.                                                                                                                                                                                                                      |
| `document_id`          | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier for the Google Document. Accepts either a document ID (typically a 44-character alphanumeric string) or a full Google Docs URL. When a URL is provided, the document ID will be automatically extracted. Note: This parameter also accepts 'id' as an alias for consistency with other GOOGLEDOCS tools. |
| `include_tables`       | boolean |          | —                                                | Whether to include table content in the plain text output. Tables are rendered with configurable cell and row delimiters.                                                                                                                                                                                                      |
| `include_footers`      | boolean |          | —                                                | Whether to include footer text in the plain text output. Footers are appended with a clear section separator.                                                                                                                                                                                                                  |
| `include_headers`      | boolean |          | —                                                | Whether to include header text in the plain text output. Headers are appended with a clear section separator.                                                                                                                                                                                                                  |
| `include_footnotes`    | boolean |          | —                                                | Whether to include footnote text in the plain text output. Footnotes are appended with a clear section separator.                                                                                                                                                                                                              |
| `table_row_delimiter`  | string  |          | `"\n"`                                           | The delimiter to use between table rows (default: newline character).                                                                                                                                                                                                                                                          |
| `include_tabs_content` | boolean |          | —                                                | When true, fetch the document using includeTabsContent=true query parameter to render all tabs. When false, only the main body content is rendered.                                                                                                                                                                            |
| `table_cell_delimiter` | string  |          | `"\t"`                                           | The delimiter to use between table cells (default: tab character).                                                                                                                                                                                                                                                             |

***

### `Googledocs Insert Inline Image`

Integration name: **GOOGLEDOCS\_INSERT\_INLINE\_IMAGE**

Tool to insert an image from a given URI at a specified location in a Google Document as an inline image. Use when you need to add an image to a document programmatically.

#### Parameters

| Parameter    | Type   | Required | Example                                      | Description                                                                                                                                                                                                                                                                                  |
| ------------ | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uri`        | string |     ✅    | `"https://www.example.com/image.png"`        | The URI of the image. Must be a publicly accessible direct image URL (no redirects or viewer links like Google Drive preview pages). Images must be less than 50MB, not exceed 25 megapixels, and be in PNG, JPEG, or GIF format (SVG not supported). The URI can be at most 2 kB in length. |
| `location`   | object |     ✅    | —                                            | The location in the document to insert the image. The index field is required to specify the insertion point.                                                                                                                                                                                |
| `documentId` | string |     ✅    | `"195j9eDD34F5f92P1i-P7Hj1S_t8h0hE4k2g1g2g"` | The ID of the document to update.                                                                                                                                                                                                                                                            |
| `objectSize` | object |          | —                                            | The size of the image. If not specified, the image is rendered at its intrinsic size.                                                                                                                                                                                                        |

***

### `Googledocs Insert Page Break`

Integration name: **GOOGLEDOCS\_INSERT\_PAGE\_BREAK**

Tool to insert a page break into a Google Document. Use when you need to start new content on a fresh page, such as at the end of a chapter or section.

#### Parameters

| Parameter         | Type   | Required | Example                  | Description                                  |
| ----------------- | ------ | :------: | ------------------------ | -------------------------------------------- |
| `documentId`      | string |     ✅    | `"1a2B3c4D5e6F7g8H9i0J"` | The ID of the document to update.            |
| `insertPageBreak` | —      |     ✅    | —                        | The details for the insertPageBreak request. |

***

### `Googledocs Insert Table Action`

Integration name: **GOOGLEDOCS\_INSERT\_TABLE\_ACTION**

Tool to insert a table into a Google Document. Use when you need to add a new table at a specific location or at the end of a segment (like document body, header, or footer) in a document.

#### Parameters

| Parameter              | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rows`                 | integer |     ✅    | —                                                | The number of rows in the table.                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `index`                | integer |          | —                                                | The zero-based index where the table will be inserted, in UTF-16 code units. IMPORTANT: The index must be strictly less than the segment's end index (you cannot insert at the exact end position using an index). To insert at the end of a segment, omit this parameter and set 'insertAtEndOfSegment' to true instead. If provided, 'location' will be used. If omitted and 'insertAtEndOfSegment' is false or omitted, 'endOfSegmentLocation' will be used for the document body. |
| `tabId`                | string  |          | —                                                | The tab that the location is in. When omitted, the request is applied to the first tab.                                                                                                                                                                                                                                                                                                                                                                                               |
| `columns`              | integer |     ✅    | —                                                | The number of columns in the table.                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `segmentId`            | string  |          | —                                                | The ID of the header, footer or footnote the location is in. An empty segment ID signifies the document's body.                                                                                                                                                                                                                                                                                                                                                                       |
| `documentId`           | string  |     ✅    | `"195j9eDD34F5f92m1_r4T3Y0N4WX_gXYs-y6uDxBYFpc"` | The ID of the document to update.                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `insertAtEndOfSegment` | boolean |          | —                                                | If true, inserts the table at the end of the segment (document body, header, or footer specified by segment\_id). This is the recommended way to append content to the end of a segment, as using an index equal to the segment's end position will fail. If false or omitted, and 'index' is not provided, it defaults to inserting at the end of the document body. If 'index' is provided, this field is ignored.                                                                  |

***

### `Googledocs Insert Table Column`

Integration name: **GOOGLEDOCS\_INSERT\_TABLE\_COLUMN**

Tool to insert a new column into a table in a Google Document. Use this tool when you need to add a column to an existing table at a specific location.

#### Parameters

| Parameter     | Type   | Required | Example                                   | Description                                                                                                                                      |
| ------------- | ------ | :------: | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `requests`    | array  |     ✅    | —                                         | A list of insert table column requests. Multiple requests can be sent in a single call to insert columns at different locations in the document. |
| `document_id` | string |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the document to update.                                                                                                                |

***

### `Googledocs Insert Text Action`

Integration name: **GOOGLEDOCS\_INSERT\_TEXT\_ACTION**

Tool to insert a string of text at a specified location within a Google Document. Use when you need to add new text content to an existing document. IMPORTANT: Two ways to specify insertion location: 1. Use 'insertion\_index' to insert at a specific position (index 1 is safe for document start) 2. Use 'append\_to\_end=true' to append text to the end of the document (recommended for appending) CRITICAL CONSTRAINT: When using insertion\_index, the index MUST fall within the bounds of an EXISTING paragraph. You cannot insert text at arbitrary indices or at structural boundaries (e.g., table starts). The index must also be strictly less than the document's end index. To safely append text without index concerns, use append\_to\_end=true.

#### Parameters

| Parameter         | Type    | Required | Example                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tab_id`          | string  |          | `"t.abc123"`                                | The ID of the document tab to insert text into. When omitted, Google Docs applies the request to the first tab.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `segment_id`      | string  |          | `""`                                        | The ID of the header, footer or footnote to insert text into. Leave empty or omit to insert into the document body. Works with both append\_to\_end and insertion\_index modes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `document_id`     | string  |     ✅    | `"195j9e2fm7q-gL2mmx61gh-oXMUrV2Vl45678ZA"` | The ID of the document to insert text into.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `append_to_end`   | boolean |          | `true`                                      | Set to true to append text to the end of the document body. When true, the 'insertion\_index' parameter is ignored. This is the recommended way to add text at the end of a document as it avoids index boundary issues.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `text_to_insert`  | string  |     ✅    | `"This is a new paragraph."`                | The string of text to insert. Alternatively, you can provide this as 'text'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `insertion_index` | integer |          | `1`                                         | The zero-based UTF-16 code unit index where text will be inserted. Alternatively, you can provide this as 'index'. CRITICAL CONSTRAINTS: (1) The index MUST fall within the bounds of an EXISTING paragraph - you cannot insert at arbitrary indices or at structural boundaries like table starts. (2) The index MUST be strictly less than the document's end index. Index 1 is the minimum valid index and is safe for inserting at the document start. To determine valid indices, first retrieve the document structure using GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID to identify paragraph boundaries. For safely adding text without index concerns, set 'append\_to\_end' to true instead. Either 'insertion\_index' or 'append\_to\_end' must be provided. |

***

### `Googledocs List Spreadsheet Charts`

Integration name: **GOOGLEDOCS\_LIST\_SPREADSHEET\_CHARTS**

Tool to retrieve a list of all charts from a specified Google Sheets spreadsheet. Use when you need to get chart IDs and their specifications for embedding or referencing elsewhere, such as in Google Docs.

#### Parameters

| Parameter        | Type   | Required | Example                                          | Description                                                            |
| ---------------- | ------ | :------: | ------------------------------------------------ | ---------------------------------------------------------------------- |
| `spreadsheet_id` | string |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ_1234567890abcdef"` | The ID of the Google Sheets spreadsheet from which to retrieve charts. |

***

### `Googledocs Replace All Text`

Integration name: **GOOGLEDOCS\_REPLACE\_ALL\_TEXT**

Tool to replace all occurrences of a specified text string with another text string throughout a Google Document. Use when you need to perform a global find and replace operation within a document.

#### Parameters

| Parameter         | Type    | Required | Example               | Description                                                                                                          |
| ----------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `tab_ids`         | array   |          | `["tabId1","tabId2"]` | Optional. A list of specific tab IDs to perform the replacement on. If not provided, replacement occurs on all tabs. |
| `find_text`       | string  |     ✅    | `"old_text"`          | The text to search for in the document. Cannot be empty.                                                             |
| `match_case`      | boolean |          | `false`               | Indicates whether the search should be case sensitive. Defaults to False (case insensitive).                         |
| `document_id`     | string  |     ✅    | `"12345abcdef"`       | The ID of the document to update.                                                                                    |
| `replace_text`    | string  |     ✅    | `"new_world"`         | The text that will replace the matched text.                                                                         |
| `search_by_regex` | boolean |          | `false`               | Optional. If True, the find\_text is treated as a regular expression. Defaults to False.                             |

***

### `Googledocs Replace Image`

Integration name: **GOOGLEDOCS\_REPLACE\_IMAGE**

Tool to replace a specific image in a document with a new image from a URI. Use when you need to update an existing image within a Google Doc.

#### Parameters

| Parameter       | Type   | Required | Example                  | Description                                             |
| --------------- | ------ | :------: | ------------------------ | ------------------------------------------------------- |
| `document_id`   | string |     ✅    | `"1a2B3c4D5e6F7g8H9i0J"` | The ID of the document containing the image to replace. |
| `replace_image` | object |     ✅    | —                        | The details of the image replacement request.           |

***

### `Googledocs Search Documents`

Integration name: **GOOGLEDOCS\_SEARCH\_DOCUMENTS**

Search for Google Documents using various filters including name, content, date ranges, and more.

#### Parameters

| Parameter               | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                        |
| ----------------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `query`                 | string  |          | `"quarterly report"`     | Search query to filter documents. Provide either: (1) Plain text to search in document content (e.g., 'quarterly report'), which will search fullText, or (2) Drive API query syntax with operators like 'name contains', 'fullText contains', combined with 'and', 'or', 'not'. Leave empty to get all documents. |
| `order_by`              | string  |          | `"modifiedTime desc"`    | Order results by field. Common options: 'modifiedTime desc', 'modifiedTime asc', 'name', 'createdTime desc'                                                                                                                                                                                                        |
| `page_token`            | string  |          | —                        | Token for continuing a previous search request on the next page. Use the next\_page\_token from the previous response to retrieve additional results.                                                                                                                                                              |
| `max_results`           | integer |          | —                        | Maximum number of documents to return per page (1-100). Defaults to 10. Use page\_token for pagination when more results are available.                                                                                                                                                                            |
| `starred_only`          | boolean |          | —                        | Whether to return only starred documents. Defaults to False.                                                                                                                                                                                                                                                       |
| `created_after`         | string  |          | `"2024-01-01T00:00:00Z"` | Return documents created after this date. Use RFC 3339 format like '2024-01-01T00:00:00Z'.                                                                                                                                                                                                                         |
| `modified_after`        | string  |          | `"2024-01-01T00:00:00Z"` | Return documents modified after this date. Use RFC 3339 format like '2024-01-01T00:00:00Z'.                                                                                                                                                                                                                        |
| `shared_with_me`        | boolean |          | —                        | Whether to return only documents shared with the current user. Defaults to False.                                                                                                                                                                                                                                  |
| `include_trashed`       | boolean |          | —                        | Whether to include documents in trash. Defaults to False.                                                                                                                                                                                                                                                          |
| `include_shared_drives` | boolean |          | —                        | Whether to include documents from shared drives you have access to. Defaults to True.                                                                                                                                                                                                                              |

***

### `Googledocs Unmerge Table Cells`

Integration name: **GOOGLEDOCS\_UNMERGE\_TABLE\_CELLS**

Tool to unmerge previously merged cells in a table. Use this when you need to revert merged cells in a Google Document table back to their individual cell states.

#### Parameters

| Parameter    | Type   | Required | Example                                          | Description                                                     |
| ------------ | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------- |
| `documentId` | string |     ✅    | `"195j9eDD34F53d2g2HMJ-N0kKc_PzA3qdr3c31234567"` | The ID of the document to unmerge table cells in.               |
| `tableRange` | object |     ✅    | —                                                | The table range specifying which cells of the table to unmerge. |

***

### `Googledocs Update Document Batch`

Integration name: **GOOGLEDOCS\_UPDATE\_DOCUMENT\_BATCH**

DEPRECATED: Use UpdateExistingDocument instead. Tool to apply one or more updates to a Google Document. Use when you need to perform batch operations on a document, such as inserting text, updating styles, or modifying document structure. Supports 35+ request types including insertText, replaceAllText, updateTextStyle, createParagraphBullets, insertTable, createHeader/Footer, and more. Each request is validated before being applied. If any request is invalid, the entire operation fails and nothing is applied.

#### Parameters

| Parameter       | Type   | Required | Example                                                          | Description                                                                                                                                                                                                                                                                                                                                                |
| --------------- | ------ | :------: | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `requests`      | array  |     ✅    | `[{"insertText":{"text":"Hello World","location":{"index":1}}}]` | A list of updates to apply to the document. Each request dict must contain exactly one request type key (e.g., insertText, replaceAllText, updateTextStyle, createParagraphBullets). For updateTextStyle, range must be non-empty (startIndex < endIndex). See <https://developers.google.com/docs/api/reference/rest/v1/documents/request> for all types. |
| `document_id`   | string |     ✅    | `"195j9e2fm7q-gL2mmx61gh-oXMUrV2Vl45678ZA"`                      | The ID of the document to update.                                                                                                                                                                                                                                                                                                                          |
| `write_control` | object |          | —                                                                | Provides control over how write requests are executed.                                                                                                                                                                                                                                                                                                     |

***

### `Googledocs Update Document Markdown`

Integration name: **GOOGLEDOCS\_UPDATE\_DOCUMENT\_MARKDOWN**

Replaces the entire content of an existing Google Docs document with new Markdown text; requires edit permissions for the document.

#### Parameters

| Parameter  | Type   | Required | Example                                                                                                                                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                             |
| ---------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`       | string |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"`                                                                                                                                                                                                         | The unique identifier for the Google Docs document to update. Accepts either a document ID (alphanumeric string, length varies by document age - newer documents typically have 44-character IDs) or a full Google Docs URL (e.g., <https://docs.google.com/document/d/{DOCUMENT\\_ID}/edit>). When a URL is provided, the document ID will be automatically extracted. |
| `tab_id`   | string |          | `"t.abc123"`                                                                                                                                                                                                                                             | Optional tab ID to replace with the rendered Markdown. When omitted, the first tab is updated.                                                                                                                                                                                                                                                                          |
| `markdown` | string |     ✅    | `"# Document Title\n\nThis is a paragraph with **bold** and *italic* text.\n\n- Unordered list item 1\n- Unordered list item 2\n\n1. Ordered list item 1\n2. Ordered list item 2\n\nAn image: ![Alt text for image](https://www.example.com/image.png)"` | Markdown content that will replace the document's entire existing content. Supports standard Markdown features.                                                                                                                                                                                                                                                         |

***

### `Googledocs Update Document Section Markdown`

Integration name: **GOOGLEDOCS\_UPDATE\_DOCUMENT\_SECTION\_MARKDOWN**

Tool to insert or replace a section of a Google Docs document with Markdown content. Use when you need to update only a section of a document by specifying start and optional end indices. Supports full Markdown formatting.

#### Parameters

| Parameter       | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tab_id`        | string  |          | `"t.abc123"`                                     | Optional tab ID to update with the rendered Markdown. When omitted, the first tab is updated.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `end_index`     | integer |          | —                                                | Optional one-based end index of the content to replace (exclusive); must be greater than or equal to start\_index. If end\_index is not provided, the content is inserted at the start\_index without replacing existing content. Requires start\_index to be provided - if start\_index is omitted (append mode), end\_index is ignored. Important: Use the exact indices from GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID without modification. The Google Docs API does not allow deleting the last newline character of a document segment (body, header, footer, etc.), so ensure end\_index does not include the final segment newline. |
| `document_id`   | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique ID of the Google Docs document to update. This is the alphanumeric string found in the document URL: <https://docs.google.com/document/d/{DOCUMENT\\_ID}/edit>. Valid IDs are typically 44 characters long and contain only letters, numbers, hyphens, and underscores (e.g., '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'). To get a document ID: create a new document using GOOGLEDOCS\_CREATE\_DOCUMENT, or extract it from an existing document's URL. Also accepts parameter aliases: 'id', 'doc\_id', 'documentId', or 'docId'.                                                                                 |
| `start_index`   | integer |          | —                                                | One-based UTF-16 code unit index where to insert or start replacement. If not provided, content will be appended to the end of the document. Use 1 to insert at the very beginning of the document. To insert at a specific position, first use GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID to retrieve the document structure and find the desired index from the body.content elements' start\_index/end\_index values. If the provided index equals or exceeds the document segment's end index, it will be automatically adjusted to the last valid position (end\_index - 1) and a message will be included in the response.             |
| `markdown_text` | string  |     ✅    | —                                                | Markdown content to insert or replace in the document section. Large content is automatically split into smaller batches to avoid API limits. Also accepts 'markdown', 'content', 'text', 'body', 'markdownText', or 'markdown\_content'.                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Googledocs Update Document Style`

Integration name: **GOOGLEDOCS\_UPDATE\_DOCUMENT\_STYLE**

Tool to update the overall document style, such as page size, margins, and default text direction. Use when you need to modify the global style settings of a Google Document.

#### Parameters

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                 |
| ---------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`         | string |          | —       | A comma-separated list of fields to update (using camelCase API names like 'marginTop', 'pageSize'). Use '*' to automatically update only fields that have values set in document\_style. For example: "pageSize,marginTop,marginBottom". When '*' is specified, the action automatically computes the field mask from the provided document\_style fields. |
| `tab_id`         | string |          | —       | The ID of the tab to update the style for. If not provided, the first tab is used.                                                                                                                                                                                                                                                                          |
| `document_id`    | string |     ✅    | —       | The ID of the document to update.                                                                                                                                                                                                                                                                                                                           |
| `document_style` | object |     ✅    | —       | The DocumentStyle object with the new style settings.                                                                                                                                                                                                                                                                                                       |

***

### `Googledocs Update Existing Document`

Integration name: **GOOGLEDOCS\_UPDATE\_EXISTING\_DOCUMENT**

Applies programmatic edits, such as text insertion, deletion, or formatting, to a specified Google Doc using the `batchUpdate` API method.

#### Parameters

| Parameter     | Type   | Required | Example         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `edit_docs`   | array  |     ✅    | —               | (Required) A list of requests to execute on the document. Each request must be a dict containing exactly ONE of the valid request types listed below. Common request types: replaceAllText, insertText, updateTextStyle, createParagraphBullets, deleteParagraphBullets, createNamedRange, deleteNamedRange, updateParagraphStyle, deleteContentRange, insertInlineImage, insertTable, insertTableRow, insertTableColumn, deleteTableRow, deleteTableColumn, insertPageBreak, deletePositionedObject, updateTableColumnProperties, updateTableCellStyle, updateTableRowStyle, replaceImage, updateDocumentStyle, mergeTableCells, unmergeTableCells, createHeader, createFooter, createFootnote, replaceNamedRangeContent, updateSectionStyle, insertSectionBreak, deleteHeader, deleteFooter, pinTableHeaderRows, addDocumentTab, deleteTab, updateDocumentTabProperties, insertPerson. Do NOT use request types from other Google APIs (Slides, Sheets, etc.). For full request schemas, see <https://developers.google.com/docs/api/reference/rest/v1/documents/batchUpdate>. SEGMENT IDs: Use empty string "" for document body, or a header/footer/footnote ID from the document. Internal 'kix.' IDs are NOT valid segment IDs and will cause "Segment with ID ... was not found" errors. Call GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID to get valid IDs. TAB IDs: When omitted, operations target the first tab. Invalid tab IDs cause errors. Get valid tab IDs from GOOGLEDOCS\_GET\_DOCUMENT\_BY\_ID at tabs\[].tabProperties.tabId. BATCH INSERT OPERATIONS: Operations execute sequentially. Each insertText shifts subsequent indices. For multiple inserts at specific positions, process in REVERSE index order (highest first). For appending, use endOfSegmentLocation for each insert. Auto-correction: insertText without location/endOfSegmentLocation automatically appends to document body. INDEX BOUNDARIES: location.index must be LESS than the segment end index (valid: 1 to N-1). To insert at the end, use endOfSegmentLocation instead. PARAGRAPH BOUNDARIES: Text can only be inserted inside existing paragraphs, not at structural boundaries (e.g., a table's start index). For table cells, add +1 or +2 to the cell's startIndex. deleteContentRange: The range CANNOT include the trailing newline at segment end. If segment ends at N, use endIndex: N-1. deleteTableRow: Requires tableCellLocation object (NOT top-level rowIndex/tableStartLocation). Structure: { tableCellLocation: { tableStartLocation: { index: N }, rowIndex: R, columnIndex: C } }. updateTableCellStyle: Use EITHER tableStartLocation (all cells) OR tableRange (specific cells), not both. Style updates (updateParagraphStyle, updateTextStyle, updateTableCellStyle, updateDocumentStyle): The 'fields' parameter is auto-populated from style keys if omitted. Document title CANNOT be updated via batchUpdate - use Google Drive API instead. updateDocumentStyle valid fields: background, marginTop, marginBottom, marginLeft, marginRight, marginHeader, marginFooter, pageSize, pageNumberStart, useEvenPageHeaderFooter, useFirstPageHeaderFooter, flipPageOrientation (NOT "title"). |
| `document_id` | string |     ✅    | `"12345abcdef"` | (Required) The unique identifier of the Google Docs document to be updated.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Googledocs Update Table Row Style`

Integration name: **GOOGLEDOCS\_UPDATE\_TABLE\_ROW\_STYLE**

Tool to update the style of a table row in a Google Document. Use when you need to modify the appearance of specific rows within a table, such as setting minimum row height or marking rows as headers.

#### Parameters

| Parameter             | Type   | Required | Example | Description                                        |
| --------------------- | ------ | :------: | ------- | -------------------------------------------------- |
| `documentId`          | string |     ✅    | —       | The ID of the document to update.                  |
| `updateTableRowStyle` | object |     ✅    | —       | The request body for updating the table row style. |


# Google Drive

Your Toolhouse AI Worker can connect to Googledrive using 89 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](https://toolhouse.app/auth-connections?authkit_slugs=googledrive).

## Tools (89)

### `Googledrive Add File Sharing Preference`

Integration name: **GOOGLEDRIVE\_ADD\_FILE\_SHARING\_PREFERENCE**

DEPRECATED: Use GOOGLEDRIVE\_CREATE\_PERMISSION instead; use GOOGLEDRIVE\_UPDATE\_PERMISSION to modify existing permissions (avoids duplicate entries). Modifies sharing permissions for an existing Google Drive file, granting a specified role to a user, group, domain, or 'anyone'. Bulk calls may trigger 403 rateLimitExceeded (\~100 req/100s/user); use jittered exponential backoff.

#### Parameters

| Parameter            | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                              |
| -------------------- | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`               | string  |     ✅    | `"reader"`                                       | Permission role to grant. Accepted values: 'reader', 'commenter', 'writer', 'fileOrganizer', 'organizer', 'owner'. Invalid strings cause validation failures.                                                                                                                                                                                                                                            |
| `type`               | string  |     ✅    | `"user"`                                         | Type of grantee for the permission. Using 'anyone' with 'writer' or 'owner' broadly exposes the document — confirm before applying. Admin policies may block 'anyone' or domain-wide sharing. For type='anyone' with role='reader', the link must be explicitly shared; files are not publicly searchable.                                                                                               |
| `domain`             | string  |          | `"example.com"`                                  | Domain to grant permission to (e.g., 'example.com'). Required if 'type' is 'domain'.                                                                                                                                                                                                                                                                                                                     |
| `file_id`            | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | Unique identifier of the file to update sharing settings for. Must be an alphanumeric string containing only letters, numbers, hyphens, and underscores (no slashes, spaces, or other special characters). Use GOOGLEDRIVE\_FIND\_FILE or GOOGLEDRIVE\_LIST\_FILES to get valid file IDs from your Google Drive. For shared drive membership, supply the shared drive ID, not an individual document ID. |
| `email_address`      | string  |          | `"user@example.com"`                             | Email address of the user or group. Required if 'type' is 'user' or 'group'.                                                                                                                                                                                                                                                                                                                             |
| `transfer_ownership` | boolean |          | —                                                | Whether to transfer ownership to the specified user. Required when role is 'owner'. Only a single user can be specified in the request when transferring ownership. Ownership transfer is difficult to reverse — obtain explicit confirmation before setting true.                                                                                                                                       |

***

### `Googledrive Add Parent`

Integration name: **GOOGLEDRIVE\_ADD\_PARENT**

Tool to add a parent folder for a file using Google Drive API v2. Use when you need to add a file to an additional folder.

#### Parameters

| Parameter             | Type    | Required | Example                                          | Description                                                                                     |
| --------------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| `id`                  | string  |     ✅    | `"1WKV9eNX4QggD5THTud3YMeN3Z7cP0CHf"`            | The ID of the parent folder to add. This is the folder that will become a parent of the file.   |
| `fileId`              | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file to add a parent folder to.                                                   |
| `supportsAllDrives`   | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives. Default is false. |
| `supportsTeamDrives`  | boolean |          | —                                                | Deprecated: Use supportsAllDrives instead.                                                      |
| `enforceSingleParent` | boolean |          | —                                                | Deprecated: Adding files to multiple folders is no longer supported. Use shortcuts instead.     |

***

### `Googledrive Add Property`

Integration name: **GOOGLEDRIVE\_ADD\_PROPERTY**

Tool to add a property to a file, or update it if it already exists (v2 API). Use when you need to attach custom key-value metadata to a Google Drive file.

#### Parameters

| Parameter         | Type    | Required | Example                                          | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`           | string  |          | —                                                | V1 error format values.                                                                                                                                |
| `fields`          | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`          | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file.                                                                                                                                    |
| `callback`        | string  |          | —                                                | JSONP callback function name.                                                                                                                          |
| `quotaUser`       | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                                | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `visibility`      | string  |          | `"PRIVATE"`                                      | Property visibility values.                                                                                                                            |
| `oauth_token`     | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`    | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `property_key`    | string  |     ✅    | `"test_property"`                                | The key of this property.                                                                                                                              |
| `property_value`  | string  |     ✅    | `"test_value"`                                   | The value of this property.                                                                                                                            |
| `upload_protocol` | string  |          | —                                                | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Copy File`

Integration name: **GOOGLEDRIVE\_COPY\_FILE**

DEPRECATED: Use GOOGLEDRIVE\_COPY\_FILE\_ADVANCED instead. Duplicates an existing file (not folders) in Google Drive by `file_id`; copy lands in same folder as original — use GOOGLEDRIVE\_MOVE\_FILE afterward for precise placement. Copy receives a new `file_id`; update stored references accordingly. For shared drives, requires organizer/manager rights.

#### Parameters

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                |
| ----------- | ------ | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`   | string |     ✅    | `"1A2b3C4d5E6fG7h8I9j0KlMNOPqRstUVW"` | The unique identifier for the file on Google Drive that you want to copy. This ID can be retrieved from the file's shareable link or via other Google Drive API calls. Pass only the raw ID, not a full URL. Name-based searches may return multiple files — confirm the correct `file_id` before calling. |
| `new_title` | string |          | `"Copy of Quarterly Report"`          | The title to assign to the new copy of the file. If not provided, the copied file will have the same title as the original, prefixed with 'Copy of '.                                                                                                                                                      |

***

### `Googledrive Copy File Advanced`

Integration name: **GOOGLEDRIVE\_COPY\_FILE\_ADVANCED**

Creates a copy of a file and applies any requested updates with patch semantics. Use when you need to duplicate a file with advanced options like label inclusion, visibility settings, or custom metadata.

#### Parameters

| Parameter                      | Type    | Required | Example                               | Description                                                                                                                                                                                                                                                                                |
| ------------------------------ | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                          | string  |          | —                                     | Data format for response.                                                                                                                                                                                                                                                                  |
| `key`                          | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.                                                                                                                                        |
| `name`                         | string  |          | —                                     | The name of the copied file. If not provided, the copied file will have the same name as the original, prefixed with 'Copy of '.                                                                                                                                                           |
| `xgafv`                        | string  |          | —                                     | V1 error format options.                                                                                                                                                                                                                                                                   |
| `fields`                       | string  |          | —                                     | Selector specifying which fields to include in a partial response. Use comma-separated field paths.                                                                                                                                                                                        |
| `fileId`                       | string  |     ✅    | `"1A2b3C4d5E6fG7h8I9j0KlMNOPqRstUVW"` | The ID of the file to copy. This is the unique identifier for the file on Google Drive.                                                                                                                                                                                                    |
| `parents`                      | array   |          | —                                     | The IDs of the parent folders which contain the file. If not specified as part of a copy request, the file inherits any discoverable parents of the source file.                                                                                                                           |
| `starred`                      | boolean |          | —                                     | Whether the user has starred the file.                                                                                                                                                                                                                                                     |
| `trashed`                      | boolean |          | —                                     | Whether the file has been trashed.                                                                                                                                                                                                                                                         |
| `callback`                     | string  |          | —                                     | JSONP callback parameter.                                                                                                                                                                                                                                                                  |
| `mimeType`                     | string  |          | —                                     | The MIME type of the file. Google Drive attempts to automatically detect an appropriate value from uploaded content, if no value is provided.                                                                                                                                              |
| `quotaUser`                    | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.                                                                                                                                     |
| `properties`                   | object  |          | —                                     | A collection of arbitrary key-value pairs which are visible to all apps. Entries with null values are cleared in update and copy requests.                                                                                                                                                 |
| `uploadType`                   | string  |          | —                                     | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                                                                                                                                                              |
| `createdTime`                  | string  |          | —                                     | The time at which the file was created (RFC 3339 date-time).                                                                                                                                                                                                                               |
| `description`                  | string  |          | —                                     | A short description of the copied file.                                                                                                                                                                                                                                                    |
| `oauth_token`                  | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                                                                                                                                                      |
| `ocrLanguage`                  | string  |          | —                                     | A language hint for OCR processing during image import (ISO 639-1 code).                                                                                                                                                                                                                   |
| `prettyPrint`                  | boolean |          | —                                     | Returns response with indentations and line breaks for improved readability.                                                                                                                                                                                                               |
| `access_token`                 | string  |          | —                                     | OAuth access token.                                                                                                                                                                                                                                                                        |
| `modifiedTime`                 | string  |          | —                                     | The last time the file was modified by anyone (RFC 3339 date-time). Note that setting modifiedTime will also update modifiedByMeTime for the user.                                                                                                                                         |
| `appProperties`                | object  |          | —                                     | A collection of arbitrary key-value pairs which are private to the requesting app. Entries with null values are cleared in update and copy requests. These properties can only be retrieved using an authenticated request with an OAuth 2 client ID.                                      |
| `includeLabels`                | string  |          | —                                     | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                                                                                                                                                                  |
| `folderColorRgb`               | string  |          | —                                     | The color for a folder or a shortcut to a folder as an RGB hex string. The supported colors are published in the folderColorPalette field of the About resource.                                                                                                                           |
| `upload_protocol`              | string  |          | —                                     | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                                                                                                                                                       |
| `writersCanShare`              | boolean |          | —                                     | Whether users with only writer permission can modify the file's permissions. Not populated for items in shared drives.                                                                                                                                                                     |
| `supportsAllDrives`            | boolean |          | —                                     | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                                                              |
| `supportsTeamDrives`           | boolean |          | —                                     | Deprecated: Use supportsAllDrives instead.                                                                                                                                                                                                                                                 |
| `enforceSingleParent`          | boolean |          | —                                     | Deprecated. Copying files into multiple folders is no longer supported. Use shortcuts instead.                                                                                                                                                                                             |
| `keepRevisionForever`          | boolean |          | —                                     | Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive. Only 200 revisions for the file can be kept forever. If the limit is reached, try deleting pinned revisions.                                        |
| `ignoreDefaultVisibility`      | boolean |          | —                                     | Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders. |
| `includePermissionsForView`    | string  |          | —                                     | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                                                                                                                                                                   |
| `copyRequiresWriterPermission` | boolean |          | —                                     | Whether the options to copy, print, or download this file should be disabled for readers and commenters.                                                                                                                                                                                   |

***

### `Googledrive Create Comment`

Integration name: **GOOGLEDRIVE\_CREATE\_COMMENT**

Tool to create a comment on a file in Google Drive. Returns a nested `data` object; extract `data.id` for the resulting comment identifier. Omit `anchor` and `quoted_file_content_*` for general file-level comments.

#### Parameters

| Parameter                       | Type   | Required | Example                                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------------------------- | ------ | :------: | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anchor`                        | string |          | `"{\"region\": {\"kind\": \"drive#commentRegion\", \"line\": 12, \"rev\": \"head\"}}"` | A JSON string defining the region of the document to which the comment is anchored. Format: {"region": {"kind": "drive#commentRegion", "": , "rev": "head"}}. Supported classifiers: (1) "line" for text lines (e.g., "line": 12), (2) "page" for page numbers (e.g., "page": {"p": 0}), (3) "txt" for text ranges (e.g., "txt": {"o": 100, "l": 50}), (4) "rect" for rectangles in images (e.g., "rect": {"x": 10, "y": 20, "w": 100, "h": 50}), (5) "time" for video timestamps (e.g., "time": {"t": "00:01:30"}), (6) "matrix" for spreadsheet cells (e.g., "matrix": {"c": 2, "r": 5}). Note: On blob files, only unanchored comments are supported. Google Workspace editors may treat API-set anchors as unanchored. |
| `content`                       | string |     ✅    | `"This is a great document!"`                                                          | The plain text content of the comment.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `file_id`                       | string |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"`                                                               | The ID of the file. The `id` field from GOOGLEDOCS\_SEARCH\_DOCUMENTS results can be used directly without conversion.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `quoted_file_content_value`     | string |          | `"This is the text to quote."`                                                         | The quoted content itself.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `quoted_file_content_mime_type` | string |          | `"text/plain"`                                                                         | The MIME type of the quoted content.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Googledrive Create Drive`

Integration name: **GOOGLEDRIVE\_CREATE\_DRIVE**

Tool to create a new shared drive. Use when you need to programmatically create a new shared drive for collaboration or storage.

#### Parameters

| Parameter             | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                              |
| --------------------- | ------- | :------: | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string  |     ✅    | `"My New Shared Drive"`        | The name of this shared drive.                                                                                                                                                                                                                                                                                                                                                                           |
| `hidden`              | boolean |          | —                              | Whether the shared drive is hidden from default view.                                                                                                                                                                                                                                                                                                                                                    |
| `themeId`             | string  |          | `"default"`                    | The ID of the theme from which the background image and color will be set. The set of possible driveThemes can be retrieved from a drive.about.get response. When not specified on a drive.drives.create request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile. |
| `colorRgb`            | string  |          | `"#FF0000"`                    | The color of this shared drive as an RGB hex string. It can only be set on a drive.drives.update request that does not set themeId.                                                                                                                                                                                                                                                                      |
| `requestId`           | string  |          | `"your-unique-request-id-123"` | Optional. An ID for idempotent creation of a shared drive. If not provided, a UUID will be auto-generated. Each requestId can only be used ONCE to successfully create a drive. If retrying a request that succeeded previously with the same requestId, the existing drive will be returned.                                                                                                            |
| `backgroundImageFile` | object  |          | —                              | An image file and cropping parameters from which a background image for this shared drive is set. This is a write only field; it can only be set on drive.drives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.                                                                                                                              |

***

### `Googledrive Create File`

Integration name: **GOOGLEDRIVE\_CREATE\_FILE**

Creates a new file or folder in Google Drive. Supports both metadata-only creation (for folders and empty documents) and file upload with content. When file\_to\_upload is provided, uploads the actual file bytes; otherwise creates an empty file. Native Google file types (Docs, Sheets, Forms, etc.) and folders are created as empty shells when no content is provided; content must be added manually afterward. Newly created files are private by default — set sharing permissions afterward for collaboration. For shared-drive folders, use this tool with the target folder ID in `parents` rather than GOOGLEDRIVE\_CREATE\_FOLDER.

#### Parameters

| Parameter        | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`           | string  |          | —       | The name of the file. While optional, providing a meaningful name is strongly recommended. If not specified, Google Drive will create the file with name 'Untitled'.                                                                                                                                                                                                                      |
| `fields`         | string  |          | —       | A comma-separated list of fields to include in the response.                                                                                                                                                                                                                                                                                                                              |
| `parents`        | array   |          | —       | Google Drive folder ID (not folder name) where the file will be created. Must be a list with exactly one folder ID (e.g., \['1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs07X8ygaR']). Folder IDs are long alphanumeric strings, not human-readable names. Use GOOGLEDRIVE\_FIND\_FOLDER or GOOGLEDRIVE\_LIST\_FILES to look up folder IDs by name. If omitted, the file is created in My Drive root. |
| `starred`        | boolean |          | —       | Whether the user has starred the file.                                                                                                                                                                                                                                                                                                                                                    |
| `mimeType`       | string  |          | —       | Common MIME types for Google Drive file creation.                                                                                                                                                                                                                                                                                                                                         |
| `description`    | string  |          | —       | A short description of the file.                                                                                                                                                                                                                                                                                                                                                          |
| `file_to_upload` | object  |          | —       | Optional file content to upload. FileUploadable object where 'name' is the filename (can override the 'name' parameter above). If provided, the file will be created with the actual content from this upload. If omitted, creates an empty file (for folders) or empty Google Workspace document. Use this when you need to upload actual file bytes (images, PDFs, documents, etc.).    |

***

### `Googledrive Create File From Text`

Integration name: **GOOGLEDRIVE\_CREATE\_FILE\_FROM\_TEXT**

Creates a new file in Google Drive from provided text content (up to 10MB), supporting various formats including automatic conversion to Google Workspace types. Returns flat metadata fields (`id`, `mimeType`, `name`) at the top level — not nested under a `file` object. Created files are private by default; use a sharing tool afterward for collaborative access. Rapid successive calls may trigger `403 rateLimitExceeded` or `429 userRateLimitExceeded`; apply exponential backoff between retries. Does not support shared-drive targets in all cases.

#### Parameters

| Parameter      | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                 |
| -------------- | ------ | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_name`    | string |     ✅    | `"meeting_notes.txt"`                 | Required. Desired name for the new file on Google Drive. Also accepts 'title' or 'name' as aliases.                                                                                                                                                                                                                                         |
| `mime_type`    | string |          | `"text/plain"`                        | MIME type for the new file, determining how Google Drive interprets its content. Must exactly match the content type — a mismatched value (e.g., `text/plain` for HTML) breaks Drive previews and downstream conversion.                                                                                                                    |
| `parent_id`    | string |          | `"1KMXpS5g9N04W44_1T7_IDN18V8x00AKE"` | IMPORTANT: Must be a valid Google Drive folder ID that exists and you have access to. Do NOT pass folder names - only folder IDs work. If omitted, the file is created in the root of 'My Drive'. To get a folder ID from a folder name, use GOOGLEDRIVE\_FIND\_FOLDER first. Also accepts 'folder\_id' or 'parent\_folder\_id' as aliases. |
| `text_content` | string |     ✅    | —                                     | Required. Plain text content to be written into the new file. Also accepts 'content', 'body', or 'text' as aliases. Only the documented aliases (`content`, `body`, `text`) are accepted; undocumented keys like `file_content` cause an 'Invalid request data' error. Must be UTF-8 encoded.                                               |

***

### `Googledrive Create Folder`

Integration name: **GOOGLEDRIVE\_CREATE\_FOLDER**

Creates a new folder in Google Drive, optionally within an EXISTING parent folder specified by its ID or name. The parent folder MUST already exist - use GOOGLEDRIVE\_FIND\_FOLDER first to verify the parent exists or find its ID. Google Drive permits duplicate folder names, so always store and reuse the folder ID returned by this action rather than relying on names for future lookups.

#### Parameters

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------- | ------ | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`      | string |     ✅    | `"Project Files"`                     | Name for the new folder. This is a required field.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `parent_id` | string |          | `"1A2b3C4d5E6fG7h8I9j0KlMNOPqRstUVW"` | ID or exact name of an EXISTING parent folder. IMPORTANT: The parent folder MUST already exist - this action will NOT create parent folders automatically. If you need to create nested folders, first use GOOGLEDRIVE\_FIND\_FOLDER to verify the parent exists, or create it with a separate call. If a name is provided, the action searches for a folder with that exact name. If omitted, the folder is created in the Drive root. Must be non-trashed, accessible, and an actual folder (not a file) — shared drive root IDs are not valid. Use GOOGLEDRIVE\_FIND\_FOLDER to verify before calling. |

***

### `Googledrive Create Permission`

Integration name: **GOOGLEDRIVE\_CREATE\_PERMISSION**

Tool to create a permission for a file or shared drive. Use when you need to share a file or folder with users, groups, domains, or make it publicly accessible. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied.

#### Parameters

| Parameter                 | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                            |
| ------------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `role`                    | string  |     ✅    | `"reader"`                                       | The role granted by this permission. Valid values are: owner, organizer, fileOrganizer, writer, commenter, reader.                                                                                                                                                                                     |
| `type`                    | string  |     ✅    | `"user"`                                         | The type of the grantee. When creating a permission, if type is 'user' or 'group', you must provide an emailAddress. When type is 'domain', you must provide a domain. There isn't extra information required for 'anyone' type.                                                                       |
| `domain`                  | string  |          | `"example.com"`                                  | The domain to which this permission refers. Required when type is 'domain'.                                                                                                                                                                                                                            |
| `file_id`                 | string  |     ✅    | `"1Cw6BhxeaUWjjuXJNFniIE0aPxS6y3BZgwQtdmr43tAY"` | The ID of the file or shared drive.                                                                                                                                                                                                                                                                    |
| `email_address`           | string  |          | `"user@example.com"`                             | The email address of the user or group to which this permission refers. Required when type is 'user' or 'group'.                                                                                                                                                                                       |
| `email_message`           | string  |          | `"Check out this document!"`                     | A plain text custom message to include in the notification email.                                                                                                                                                                                                                                      |
| `expiration_time`         | string  |          | `"2024-12-31T23:59:59Z"`                         | The time at which this permission will expire (RFC 3339 date-time). Expiration times can only be set on user and group permissions, must be in the future, and cannot be more than a year in the future.                                                                                               |
| `transfer_ownership`      | boolean |          | —                                                | Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.                                                                                                                                  |
| `supports_all_drives`     | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                                                                          |
| `allow_file_discovery`    | boolean |          | —                                                | Whether the permission allows the file to be discovered through search. This is only applicable for permissions of type 'domain' or 'anyone'.                                                                                                                                                          |
| `move_to_new_owners_root` | boolean |          | —                                                | This parameter will only take effect if the item is not in a shared drive and the request is attempting to transfer the ownership of the item. If set to true, the item will be moved to the new owner's My Drive root folder and all prior parents removed. If set to false, parents are not changed. |
| `send_notification_email` | boolean |          | —                                                | Whether to send a notification email when sharing to users or groups. This defaults to true for users and groups, and is not allowed for other requests. It must not be disabled for ownership transfers.                                                                                              |
| `use_domain_admin_access` | boolean |          | —                                                | Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.                                                        |

***

### `Googledrive Create Reply`

Integration name: **GOOGLEDRIVE\_CREATE\_REPLY**

Tool to create a reply to a comment in Google Drive. Use when you need to respond to an existing comment on a file.

#### Parameters

| Parameter    | Type   | Required | Example                                  | Description                                                         |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------- |
| `action`     | string |          | `"resolve"`                              | The action the reply performed to the parent comment.               |
| `fields`     | string |          | `"id,content"`                           | Selector specifying which fields to include in a partial response.  |
| `content`    | string |     ✅    | `"Thanks for the feedback!"`             | The plain text content of the reply. HTML content is not supported. |
| `file_id`    | string |     ✅    | `"1234567890abcdefghijklmnopqrstuvwxyz"` | The ID of the file.                                                 |
| `comment_id` | string |     ✅    | `"0987654321zyxwutsrqponmlkjihgfedcba"`  | The ID of the comment.                                              |

***

### `Googledrive Create Shortcut To File`

Integration name: **GOOGLEDRIVE\_CREATE\_SHORTCUT\_TO\_FILE**

Tool to create a shortcut to a file or folder in Google Drive. Use when you need to link to an existing Drive item from another location without duplicating it. The shortcut receives its own distinct file ID (capture from response). No parent folder parameter exists; use GOOGLEDRIVE\_MOVE\_FILE after creation to place the shortcut in the desired location.

#### Parameters

| Parameter                   | Type    | Required | Example                               | Description                                                                                                                                 |
| --------------------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                      | string  |     ✅    | `"My Shortcut to Important Document"` | The name of the shortcut.                                                                                                                   |
| `target_id`                 | string  |     ✅    | `"1_DRbC10_AYSg3tNA2c2P9H2a26n9_2VA"` | The ID of the file or folder that this shortcut points to.                                                                                  |
| `includeLabels`             | string  |          | `"labelId1,labelId2"`                 | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                   |
| `supportsAllDrives`         | boolean |          | `true`                                | Whether the requesting application supports both My Drives and shared drives. Recommended to set to true if interacting with shared drives. |
| `keepRevisionForever`       | boolean |          | `false`                               | Whether to set the 'keepForever' field in the new head revision.                                                                            |
| `ignoreDefaultVisibility`   | boolean |          | `false`                               | Whether to ignore the domain's default visibility settings for the created file.                                                            |
| `includePermissionsForView` | string  |          | `"published"`                         | Enum for includePermissionsForView parameter.                                                                                               |

***

### `Googledrive Create Team Drive`

Integration name: **GOOGLEDRIVE\_CREATE\_TEAM\_DRIVE**

Tool to create a Team Drive. Deprecated: Use drives.create instead. Use when you need to create a Team Drive for collaboration.

#### Parameters

| Parameter             | Type   | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                      |
| --------------------- | ------ | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string |     ✅    | `"My New Team Drive"`          | The name of this Team Drive. This is a required field.                                                                                                                                                                                                                                                                                                                                                           |
| `themeId`             | string |          | `"default"`                    | The ID of the theme from which the background image and color will be set. The set of possible teamDriveThemes can be retrieved from a drive.about.get response. When not specified on a drive.teamdrives.create request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile. |
| `colorRgb`            | string |          | `"#FF0000"`                    | The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId.                                                                                                                                                                                                                                                                            |
| `requestId`           | string |          | `"your-unique-request-id-123"` | Optional. An ID for idempotent creation of a Team Drive. If not provided, a UUID will be auto-generated. Each requestId can only be used ONCE to successfully create a Team Drive. If retrying a request that succeeded previously with the same requestId, the existing Team Drive will be returned or a 409 error will occur.                                                                                  |
| `backgroundImageFile` | object |          | —                              | An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.                                                                                                                                    |

***

### `Googledrive Delete Child`

Integration name: **GOOGLEDRIVE\_DELETE\_CHILD**

Tool to remove a child from a folder using Google Drive API v2. Use when you need to remove a file from a specific folder.

#### Parameters

| Parameter             | Type    | Required | Example                                          | Description                                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                 | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`                 | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`               | string  |          | —                                                | V1 error format enum.                                                                                                                                  |
| `fields`              | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `childId`             | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the child.                                                                                                                                   |
| `callback`            | string  |          | —                                                | JSONP                                                                                                                                                  |
| `folderId`            | string  |     ✅    | `"1WKV9eNX4QggD5THTud3YMeN3Z7cP0CHf"`            | The ID of the folder.                                                                                                                                  |
| `quotaUser`           | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`          | string  |          | —                                                | Legacy upload protocol for media (e.g. "media", "multipart").                                                                                          |
| `oauth_token`         | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`         | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`        | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `upload_protocol`     | string  |          | —                                                | Upload protocol for media (e.g. "raw", "multipart").                                                                                                   |
| `enforceSingleParent` | boolean |          | —                                                | Deprecated: If an item is not in a shared drive and its last parent is removed, the item is placed under its owner's root.                             |

***

### `Googledrive Delete Comment`

Integration name: **GOOGLEDRIVE\_DELETE\_COMMENT**

Permanently deletes a comment thread (and all its replies) from a Google Drive file — this action is irreversible. To remove only a single reply within a thread, use GOOGLEDRIVE\_DELETE\_REPLY instead. Verify the exact comment content and comment\_id before calling.

#### Parameters

| Parameter    | Type   | Required | Example                  | Description                                                                                                                                                                                                                      |
| ------------ | ------ | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`    | string |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"` | The ID of the file.                                                                                                                                                                                                              |
| `comment_id` | string |     ✅    | `"AAAByC37kko"`          | The ID of the comment. Comment IDs are different from file IDs and have a distinct format (e.g., 'AAAByC37kko'). You must obtain the comment ID from the LIST\_COMMENTS or CREATE\_COMMENT actions. Do NOT use the file ID here. |

***

### `Googledrive Delete Drive`

Integration name: **GOOGLEDRIVE\_DELETE\_DRIVE**

Tool to permanently delete a shared drive. Use when you need to remove a shared drive and its contents (if specified).

#### Parameters

| Parameter              | Type    | Required | Example                 | Description                                                                                                                                                                          |
| ---------------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `driveId`              | string  |     ✅    | `"0AEMyflX29xHjUk9PVA"` | The ID of the shared drive.                                                                                                                                                          |
| `allowItemDeletion`    | boolean |          | `true`                  | Whether any items inside the shared drive should also be deleted. This option is only supported when `useDomainAdminAccess` is also set to `true`.                                   |
| `useDomainAdminAccess` | boolean |          | `true`                  | Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs. |

***

### `Googledrive Delete File`

Integration name: **GOOGLEDRIVE\_DELETE\_FILE**

DEPRECATED: Use GOOGLEDRIVE\_GOOGLE\_DRIVE\_DELETE\_FOLDER\_OR\_FILE\_ACTION instead. Tool to permanently delete a file owned by the user without moving it to trash. Use when permanent deletion is required. If the file belongs to a shared drive, the user must be an organizer on the parent folder.

#### Parameters

| Parameter             | Type    | Required | Example                               | Description                                                                                                                                                     |
| --------------------- | ------- | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`              | string  |     ✅    | `"1xiFp6uO3jRczGuFJ_LdaRVg3ene6lNq-"` | The ID of the file to delete. This permanently removes the file without moving it to trash.                                                                     |
| `supportsAllDrives`   | boolean |          | —                                     | Whether the requesting application supports both My Drives and shared drives. Set to true if the file might be in a shared drive.                               |
| `enforceSingleParent` | boolean |          | —                                     | Deprecated parameter. If an item is not in a shared drive and its last parent is deleted but the item itself is not, the item is placed under its owner's root. |

***

### `Googledrive Delete Parent`

Integration name: **GOOGLEDRIVE\_DELETE\_PARENT**

Tool to remove a parent from a file using Google Drive API v2. Use when you need to remove a file from a specific folder.

#### Parameters

| Parameter             | Type    | Required | Example                               | Description                                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                 | string  |          | —                                     | Data format for response.                                                                                                                              |
| `key`                 | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`               | string  |          | —                                     | V1 error format enum.                                                                                                                                  |
| `fields`              | string  |          | —                                     | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`              | string  |     ✅    | `"1xygSVDktMDb4chxS3AQTMzABKWYdWtOB"` | The ID of the file.                                                                                                                                    |
| `callback`            | string  |          | —                                     | JSONP                                                                                                                                                  |
| `parentId`            | string  |     ✅    | `"1IL1JRSfkm9B_L-guI7g-birKApFyD_Di"` | The ID of the parent.                                                                                                                                  |
| `quotaUser`           | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`          | string  |          | —                                     | Legacy upload protocol for media (e.g. "media", "multipart").                                                                                          |
| `oauth_token`         | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`         | boolean |          | —                                     | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`        | string  |          | —                                     | OAuth access token.                                                                                                                                    |
| `upload_protocol`     | string  |          | —                                     | Upload protocol for media (e.g. "raw", "multipart").                                                                                                   |
| `enforceSingleParent` | boolean |          | —                                     | Deprecated: If an item is not in a shared drive and its last parent is removed, the item is placed under its owner's root.                             |

***

### `Googledrive Delete Permission`

Integration name: **GOOGLEDRIVE\_DELETE\_PERMISSION**

Deletes a permission from a file by permission ID. Deletion is irreversible — confirm the target user, group, or permission type before executing. IMPORTANT: You must first call GOOGLEDRIVE\_LIST\_PERMISSIONS to get valid permission IDs. To fully revoke public access, the type='anyone' (link-sharing) permission must be explicitly deleted; revoking other permissions leaves the file publicly accessible via link. Use when you need to revoke access for a specific user or group from a file.

#### Parameters

| Parameter              | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                    |
| ---------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`              | string  |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"` | The ID of the file or shared drive.                                                                                                                                                                                                                                                                                                            |
| `permission_id`        | string  |     ✅    | `"18394857362947583"`    | The unique ID of the permission to delete. IMPORTANT: You MUST first call GOOGLEDRIVE\_LIST\_PERMISSIONS with the file\_id to retrieve valid permission IDs. Permission IDs are opaque identifiers assigned by Google (e.g., '18394857362947583', 'anyoneWithLink') and cannot be guessed. Do NOT use placeholder values like 'any' or '1234'. |
| `supportsAllDrives`    | boolean |          | —                        | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                                                                                                                  |
| `useDomainAdminAccess` | boolean |          | —                        | Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.                                                                                                |

***

### `Googledrive Delete Property`

Integration name: **GOOGLEDRIVE\_DELETE\_PROPERTY**

Tool to delete a property from a file using Google Drive API v2. Use when you need to remove custom key-value metadata from a file.

#### Parameters

| Parameter         | Type    | Required | Example                                          | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`           | string  |          | —                                                | V1 error format values.                                                                                                                                |
| `fields`          | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`          | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file.                                                                                                                                    |
| `callback`        | string  |          | —                                                | JSONP callback function name.                                                                                                                          |
| `quotaUser`       | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                                | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `visibility`      | string  |          | —                                                | The visibility of the property. If specified, only deletes the property if it has this visibility level.                                               |
| `oauth_token`     | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `propertyKey`     | string  |     ✅    | `"test_delete_property"`                         | The key of the property to delete.                                                                                                                     |
| `access_token`    | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                                                | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Delete Reply`

Integration name: **GOOGLEDRIVE\_DELETE\_REPLY**

Tool to delete a specific reply by reply ID. Deletion is irreversible; obtain explicit user confirmation before calling. Removes only the targeted reply, not the full comment thread — use GOOGLEDRIVE\_DELETE\_COMMENT to remove the entire thread.

#### Parameters

| Parameter    | Type   | Required | Example                               | Description                                                                                                                                              |
| ------------ | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`    | string |     ✅    | `"1ZdR3L3Kek7szY1j11SQZ9A_00up1j2xG"` | The ID of the file.                                                                                                                                      |
| `reply_id`   | string |     ✅    | `"AAAA_example_reply_id"`             | The ID of the reply. Confirm correct target using createdTime and author alongside reply\_id, as multiple similar replies may exist on the same comment. |
| `comment_id` | string |     ✅    | `"AAAA_example_comment_id"`           | The ID of the comment.                                                                                                                                   |

***

### `Googledrive Delete Revision`

Integration name: **GOOGLEDRIVE\_DELETE\_REVISION**

Tool to permanently delete a file revision. Use when you need to remove a specific version of a binary file (images, videos, etc.). Cannot delete revisions for Google Docs/Sheets or the last remaining revision.

#### Parameters

| Parameter     | Type   | Required | Example                                                 | Description                                                                                                                                                                                                                                                                               |
| ------------- | ------ | :------: | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`     | string |     ✅    | `"19GP5DRpUcmQHBVnk39RTB57twIWVEMjO"`                   | The ID of the file.                                                                                                                                                                                                                                                                       |
| `revision_id` | string |     ✅    | `"0B_vaZgd8EyufZ0xKU1BBemkvQnNBL0hESWdiY3VTWWQxNWRFPQ"` | The ID of the revision to delete. You can obtain revision IDs by calling GOOGLEDRIVE\_LIST\_REVISIONS. Important: You can only delete revisions for files with binary content (images, videos, etc.), not Google Docs or Sheets. You cannot delete the last remaining revision of a file. |

***

### `Googledrive Delete Team Drive`

Integration name: **GOOGLEDRIVE\_DELETE\_TEAM\_DRIVE**

Tool to permanently delete a Team Drive. Deprecated: Use drives.delete instead. Use when you need to remove a Team Drive using the legacy endpoint.

#### Parameters

| Parameter     | Type   | Required | Example                 | Description                         |
| ------------- | ------ | :------: | ----------------------- | ----------------------------------- |
| `teamDriveId` | string |     ✅    | `"0AIHqBGLiYNb7Uk9PVA"` | The ID of the Team Drive to delete. |

***

### `Googledrive Download File`

Integration name: **GOOGLEDRIVE\_DOWNLOAD\_FILE**

Downloads a file from Google Drive by its ID. For Google Workspace documents (Docs, Sheets, Slides), optionally exports to a specified `mime_type`. For other file types, downloads in their native format regardless of mime\_type. Examples: Export a Google Doc to plain text: {"file\_id": "1N2o5xQWmAbCdEfGhIJKlmnOPq", "mime\_type": "text/plain"} Download a Google Sheet as CSV: {"file\_id": "1ZyXwVuTsRqPoNmLkJiHgFeDcB", "mime\_type": "text/csv"}

#### Parameters

| Parameter   | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------- | ------ | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`    | string |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The unique identifier of the file to be downloaded from Google Drive. Must be a valid Google Drive file ID containing only alphanumeric characters, hyphens, and underscores. File paths with slashes (/) are not valid. This ID can typically be found in the file's URL in Google Drive or obtained from API calls that list files.                                                                                                                                                                |
| `mime_type` | string |          | `"application/pdf"`                       | ONLY for Google Workspace documents (Docs, Sheets, Slides, Drawings). Specifies the export format. Has NO effect on regular files (PDFs, images, videos, Office documents, etc.) - they are always downloaded in their native format. Google Forms and Maps cannot be downloaded as they do not support exports through the Drive API. If omitted for Google Workspace files, defaults to PDF. Different Workspace types support different formats. Use application/pdf for universal compatibility. |

***

### `Googledrive Download File2`

Integration name: **GOOGLEDRIVE\_DOWNLOAD\_FILE2**

DEPRECATED: Use GOOGLEDRIVE\_DOWNLOAD\_FILE\_OPERATION instead. Tool to download file content as a long-running operation. Use when you need to download files from Google Drive. Operations are valid for 24 hours from the time of creation.

#### Parameters

| Parameter | Type   | Required | Example                               | Description                    |
| --------- | ------ | :------: | ------------------------------------- | ------------------------------ |
| `file_id` | string |     ✅    | `"1iau-j_ezb2Vcx1tZDMDdfpqlzxVzlscg"` | The ID of the file to download |

***

### `Googledrive Download File Operation`

Integration name: **GOOGLEDRIVE\_DOWNLOAD\_FILE\_OPERATION**

Tool to download file content using long-running operations. Use when you need to download Google Vids files or export Google Workspace documents as part of a long-running operation. Operations are valid for 24 hours from creation. Returns a response containing `downloaded_file_content.s3url` — a short-lived S3 URL; fetch the actual file bytes from that URL promptly after the call.

#### Parameters

| Parameter     | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------- | ------ | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`     | string |     ✅    | `"1xAHUNyfubIa8K07EVv9_5Hc5EsgdIhUx-QNcrGJ_yQk"` | The ID of the file to download. This is a required parameter. The file\_id can be found in the file's Google Drive URL or obtained from API calls that list files.                                                                                                                                                                                                                                                                                                                                                     |
| `mime_type`   | string |          | `"application/pdf"`                              | The MIME type for exporting Google Workspace documents (Google Docs, Sheets, Slides, etc.) to different formats. Only applicable to Google Workspace documents (not blob files like PDFs, images, videos). If provided for a non-Google Workspace file, this parameter will be ignored to prevent API errors. Common export formats: 'application/pdf', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' (Word), 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' (Excel). |
| `revision_id` | string |          | `"1"`                                            | The ID of the revision to download. If not specified, the current head revision will be downloaded. This field can only be set when downloading blob files, Google Docs, and Google Sheets.                                                                                                                                                                                                                                                                                                                            |

***

### `Googledrive Edit File`

Integration name: **GOOGLEDRIVE\_EDIT\_FILE**

Updates an existing Google Drive file with binary content by overwriting its entire content with new text (max 10MB). IMPORTANT: This action only works with files that have binary content (text files, PDFs, images, etc.). It does NOT support editing Google Workspace native files (Google Docs, Sheets, Slides, etc.). For Google Workspace files, use the Google Docs API, Google Sheets API, or Google Slides API directly. Preserves the original file\_id (unlike GOOGLEDRIVE\_UPLOAD\_FILE which creates a new ID).

#### Parameters

| Parameter   | Type   | Required | Example        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------- | ------ | :------: | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`   | string |     ✅    | —              | New textual content to overwrite the existing file; will be UTF-8 encoded for upload. Overwrites the entire file body — partial edits are not possible, so reconstruct the full desired content before calling. Back up with GOOGLEDRIVE\_COPY\_FILE before irreversible edits.                                                                                                                                                                                              |
| `file_id`   | string |     ✅    | —              | ID of the Google Drive file to update. Only works with files that have binary content (e.g., .txt, .json, .pdf, .jpg files uploaded to Drive). Does NOT support Google Workspace native files (Docs, Sheets, Slides) even if they appear as spreadsheets or documents - those must be edited via Google Docs/Sheets/Slides APIs. Use GOOGLEDRIVE\_FIND\_FILE to retrieve an existing file's ID; using an upload action instead would create a duplicate with a different ID. |
| `mime_type` | string |          | `"text/plain"` | MIME type of the content being uploaded. Must match the actual format of the content being uploaded (not the existing file type). Cannot be a Google Workspace MIME type (application/vnd.google-apps.\*). Valid examples: text/plain, text/html, application/json, application/pdf, image/jpeg.                                                                                                                                                                             |

***

### `Googledrive Empty Trash`

Integration name: **GOOGLEDRIVE\_EMPTY\_TRASH**

Tool to permanently and irreversibly delete ALL trashed files in the user's Google Drive or a specified shared drive. Recovery is impossible after execution — no Drive tool can restore items once trash is emptied. Affects every item in trash across the entire account or shared drive, not just files from the current workflow. Always obtain explicit user confirmation and clarify that recovery is impossible before executing. Provide driveId to target a specific shared drive's trash; omit to empty the user's root trash.

#### Parameters

| Parameter             | Type    | Required | Example                 | Description                                                                                                                                                                                                                |
| --------------------- | ------- | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `driveId`             | string  |          | `"0ABmN4q4aF7dPUk9PVA"` | If set, empties the trash of the provided shared drive. This parameter is ignored if the item is not in a shared drive.                                                                                                    |
| `enforceSingleParent` | boolean |          | —                       | Deprecated: If an item is not in a shared drive and its last parent is deleted but the item itself is not, the item will be placed under its owner's root. This parameter is ignored if the item is not in a shared drive. |

***

### `Googledrive Export Google Workspace File`

Integration name: **GOOGLEDRIVE\_EXPORT\_GOOGLE\_WORKSPACE\_FILE**

Exports a Google Workspace document to the requested MIME type and returns exported file content. Use when you need to export Google Docs, Sheets, Slides, Drawings, or Apps Script files to a specific format. Note: The exported content is limited to 10MB by Google Drive API.

#### Parameters

| Parameter  | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                           |
| ---------- | ------ | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`   | string |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the Google Workspace file to export. Must be a valid file ID for a Google Docs, Sheets, Slides, Drawings, or Apps Script file.                                                                                                                                                                                                              |
| `mimeType` | string |     ✅    | `"application/pdf"`                              | The MIME type of the format requested for this export. Supported formats depend on the source file type: Google Docs -> DOCX, ODT, RTF, PDF, TXT, HTML (ZIP), EPUB, Markdown; Google Sheets -> XLSX, ODS, PDF, CSV, TSV, HTML (ZIP); Google Slides -> PPTX, ODP, PDF, TXT, JPG, PNG, SVG; Google Drawings -> PDF, JPG, PNG, SVG; Apps Script -> JSON. |

***

### `Googledrive Find File`

Integration name: **GOOGLEDRIVE\_FIND\_FILE**

The comprehensive Google Drive search tool that handles all file and folder discovery needs. Use this for any file finding task - from simple name searches to complex queries with date filters, MIME types, permissions, custom properties, folder scoping, and more. Searches across My Drive and shared drives with full metadata support. Examples: - Find PDFs: q="mimeType = 'application/pdf'" - Find recent files: q="modifiedTime > '2024-01-01T00:00:00'" - Search by name: q="name contains 'report'" - Files in folder: folderId="abc123" or q="'FOLDER\_ID' in parents"

#### Parameters

| Parameter                      | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------------------------ | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                            | string  |          | `"name = 'Budget 2024'"`                         | Query string to filter file results. Accepts both simple text searches and full Google Drive query syntax. **Simple Text Search:** Bare text (e.g., "SAM RFP") is auto-converted to fullText search. Bare email addresses are auto-converted to owner search. **Full Query Syntax:** 'field operator value' combined with 'and', 'or', 'not' **Operators:** =, !=, <, >, <=, >=, contains, in **Common Fields:** - `name` - File name (exact match with = or partial match with contains) - `fullText` - File content search - `mimeType` - File type (e.g., 'application/pdf', 'application/vnd.google-apps.folder') - `modifiedTime`, `createdTime` - Dates (RFC 3339: '2024-01-01T00:00:00') - `parents` - Folder IDs containing the file - `owners`, `writers` - User email addresses (MUST use 'in' operator, NOT colon syntax) - `properties`, `appProperties` - Custom metadata **Boolean Filter Fields (sharedWithMe, trashed, starred):** These fields require explicit `= true` or `= false` syntax: - `sharedWithMe = true` - Find files shared with you by others - `sharedWithMe = false` - Find files NOT shared with you (your own files) - `trashed = true` - Find files in trash - `trashed = false` - Exclude trashed files from results - `starred = true` - Find starred/favorited files - `starred = false` - Find non-starred files Combine with other conditions using 'and': - "sharedWithMe = true and name contains 'report'" - Find shared files with 'report' in name - "sharedWithMe = true and mimeType = 'application/pdf'" - Find shared PDF files - "starred = true and modifiedTime > '2024-01-01T00:00:00'" - Find recently modified starred files **Query Complexity Limits:** Queries with many OR clauses (typically >5-10) may fail with 'The query is too complex' error. **Name Field Usage:** Wildcards (\*) are NOT supported. Use 'contains' operator for partial matching. **User Email Searches:** - CORRECT: "'<user@example.com>' in owners" or "'<user@example.com>' in writers" or "'<user@example.com>' in readers" - INCORRECT: "owner:<user@example.com>" (colon syntax is NOT supported and will cause errors) - Always use the 'in' operator with quoted email addresses for user-based searches **Special Syntax:** - Dates: RFC 3339 format (time zone defaults to UTC) - Apostrophes/quotes in values: Automatically escaped. You can write "name = 'Jan'26'" or "name = 'Valentine's Day'" without manual escaping. - Grouping: Use parentheses for OR: "(mimeType contains 'image/' or mimeType contains 'video/')" - Custom properties: "properties has { key='department' and value='sales' }" **IMPORTANT - Root Folder ('My Drive'):** 'My Drive' is NOT a searchable folder name. To work with the root folder, use the 'root' alias: folder\_id='root' or "'root' in parents" in your query. |
| `fields`                       | string  |          | `"*"`                                            | Selector specifying which fields to include in a partial response. Use '\*' for all fields. **Default Behavior (Recommended for Discovery):** When omitted, returns essential file discovery fields: id, name, mimeType, size, modifiedTime, createdTime, parents, webViewLink, trashed, starred. This lightweight default is optimized for file search/discovery use cases without verbose permission or capability metadata. **Format:** For file fields, use 'files(field1,field2,...)' format. For example: 'files(id,name,mimeType)'. Top-level response fields (kind, nextPageToken, incompleteSearch) can be used directly. **Note:** Bare field names like 'id,name,mimeType' will be automatically wrapped in 'files()' for convenience. The 'editors' field is not valid in Drive API v3; use 'permissions' instead for access control information.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `spaces`                       | string  |          | `"drive"`                                        | A comma-separated list of spaces to query. Supported values are 'drive', 'appDataFolder' and 'photos'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `corpora`                      | string  |          | `"user"`                                         | Specifies which collections of files to search. Defaults to 'allDrives' (searches My Drive + all accessible shared drives). **Values:** - `user` - Search only user's personal My Drive - `domain` - Search all files shared within Google Workspace domain - `drive` - Search specific shared drive (requires 'driveId' parameter and 'includeItemsFromAllDrives' must be true) - `allDrives` - Search My Drive + all accessible shared drives (DEFAULT, requires 'includeItemsFromAllDrives' to be true) **When to Use:** - Personal files only: Use 'user' - Organization-wide: Use 'domain' - Specific shared drive: Use 'drive' with 'driveId' - Maximum coverage: Use 'allDrives' (auto-enables supportsAllDrives and includeItemsFromAllDrives)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `driveId`                      | string  |          | —                                                | ID of the shared drive to search. When provided, 'corpora' will automatically be set to 'drive' (mutually exclusive with corpora='allDrives'). Required if 'corpora' is 'drive'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `orderBy`                      | string  |          | `"modifiedTime desc"`                            | Comma-separated sort keys. Ascending by default; add 'desc' for descending. Cannot be used when query (q) contains fullText search terms. **Valid Keys:** - `createdTime`, `modifiedTime`, `modifiedByMeTime` - Dates - `viewedByMeTime`, `sharedWithMeTime` - Activity dates - `name`, `name_natural` - File name (natural: file1, file2, file10) - `folder` - Folder hierarchy - `quotaBytesUsed` - Storage size (NOTE: 'size' is NOT valid, use 'quotaBytesUsed') - `starred` - Starred status - `recency` - Recent activity (combines view time and modification time for relevance-based sorting) **Important:** 'size' is NOT a valid sort key. Use 'quotaBytesUsed' to sort by file size. **Restriction:** Sorting is not supported when the query contains fullText searches (e.g., "fullText contains 'keyword'"). Omit orderBy when using fullText queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `pageSize`                     | integer |          | `10`                                             | The maximum number of files to return per page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `folder_id`                    | string  |          | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | ID of a specific folder to search within. This automatically adds "'folder\_id' in parents" to the query. Can be combined with the 'q' parameter to further filter results within the folder. Use 'root' to search within the user's root folder (My Drive). Note: 'My Drive' is not a searchable folder name - use 'root' alias instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `pageToken`                    | string  |          | —                                                | The token for continuing a previous list request on the next page. IMPORTANT: This must be the exact opaque string from a previous response's 'nextPageToken' field - do not modify, truncate, URL-encode, or construct tokens manually. Invalid or corrupted tokens will result in API errors.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `include_labels`               | string  |          | `"label_abc123"`                                 | A comma-separated list of label IDs to include in the `labelInfo` part of the response for each file. Empty strings are automatically treated as omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `pagetoken_dropped`            | boolean |          | —                                                | Indicates whether the page token was dropped from the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `supportsAllDrives`            | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives. If 'includeItemsFromAllDrives' is true, this must also be true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `original_email_query`         | string  |          | —                                                | The original email query before transformation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `editors_field_removed`        | boolean |          | —                                                | Indicates whether the editors field was removed from the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `email_query_transformed`      | boolean |          | —                                                | Indicates whether an email query was transformed into a search filter.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `orderby_size_transformed`     | boolean |          | —                                                | Indicates whether the orderBy size value was transformed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `original_bare_text_query`     | string  |          | —                                                | The original bare text query before transformation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `includeItemsFromAllDrives`    | boolean |          | —                                                | Whether both My Drive and shared drive items should be included in results. Must be true when corpora is 'drive' or 'allDrives'. If true, 'supportsAllDrives' should also be true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `emailaddress_field_removed`   | boolean |          | —                                                | Indicates whether the email address field was removed from the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `original_invalid_pagetoken`   | string  |          | —                                                | The original invalid page token that was dropped.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `bare_text_query_transformed`  | boolean |          | —                                                | Indicates whether a bare text query was transformed into a search filter.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `include_permissions_for_view` | string  |          | `"published"`                                    | Specifies which additional view's permissions to include in the response. Must be either omitted entirely or set to 'published'. Empty strings are automatically treated as omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Googledrive Find Folder`

Integration name: **GOOGLEDRIVE\_FIND\_FOLDER**

Tool to find a folder in Google Drive by its name and optionally a parent folder. Use when you need to locate a specific folder to perform further actions like creating files in it or listing its contents.

#### Parameters

| Parameter                | Type    | Required | Example                          | Description                                                                                                                                                                                                                                                       |
| ------------------------ | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `starred`                | boolean |          | —                                | Set to true to search for folders that are starred, or false for those that are not.                                                                                                                                                                              |
| `name_exact`             | string  |          | `"Project Alpha"`                | The exact name of the folder to search for as a string. This search is case-sensitive. Do not pass numbers - convert to string if needed.                                                                                                                         |
| `name_contains`          | string  |          | `"report"`                       | A substring to search for within folder names as a string. This search is case-insensitive.                                                                                                                                                                       |
| `modified_after`         | string  |          | `"2023-08-01T00:00:00Z"`         | Search for folders modified after a specific date and time. The timestamp must be in RFC 3339 format (e.g., '2023-01-15T10:00:00Z' or '2023-01-15T10:00:00.000Z').                                                                                                |
| `parent_folder_id`       | string  |          | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ"`  | The ID of the parent folder to search within. Only folders directly inside this parent folder will be returned. You can find parent folder IDs by first searching for the parent folder by name. Supports folders in both My Drive and Shared Drives.             |
| `name_not_contains`      | string  |          | `"archive"`                      | A substring to exclude from folder names as a string. Folders with names containing this substring will not be returned. This search is case-insensitive.                                                                                                         |
| `full_text_contains`     | string  |          | `"confidential project details"` | A string to search for within the folder's name or description (NOT the content of files inside the folder). This search is case-insensitive. Note: Google Drive's fullText search on folders only matches the folder's own metadata, not files contained within. |
| `full_text_not_contains` | string  |          | `"draft"`                        | A string to exclude from the folder's name or description (NOT the content of files inside the folder). This search is case-insensitive. Note: Google Drive's fullText search on folders only matches the folder's own metadata, not files contained within.      |

***

### `Googledrive Generate Ids`

Integration name: **GOOGLEDRIVE\_GENERATE\_IDS**

Generates a set of file IDs which can be provided in create or copy requests. Use when you need to pre-allocate IDs for new files or copies.

#### Parameters

| Parameter | Type    | Required | Example   | Description                                                                               |
| --------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------- |
| `type`    | string  |          | `"files"` | The type of items for which the IDs can be used. For example, 'files' or 'shortcuts'.     |
| `count`   | integer |          | `10`      | The number of IDs to return. Value must be between 1 and 1000, inclusive.                 |
| `space`   | string  |          | `"drive"` | The space in which the IDs can be used. Supported values are 'drive' and 'appDataFolder'. |

***

### `Googledrive Get About`

Integration name: **GOOGLEDRIVE\_GET\_ABOUT**

Tool to retrieve information about the user, the user's Drive, and system capabilities. Use when you need to check storage quotas, user details, or supported import/export formats. Note: storageQuota reflects My Drive (personal) storage only — it does not cover shared drives; use GOOGLEDRIVE\_LIST\_SHARED\_DRIVES and GOOGLEDRIVE\_GET\_DRIVE for shared drive quotas. A successful response confirms base Drive read access only; write access and shared drive access must be verified separately.

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`  | string |          | `"*"`   | A comma-separated list of fields to include in the response. Use `*` to include all fields. Supported fields in Drive API v3: kind, user, storageQuota, importFormats, exportFormats, maxImportSizes, maxUploadSize, appInstalled, canCreateDrives, canCreateTeamDrives (deprecated), driveThemes, teamDriveThemes (deprecated), folderColorPalette. Note: rootFolderId was removed in v3 and is not supported. Note: storageQuota sub-fields (limit, usage, usageInDrive, usageInDriveTrash) are returned as strings representing bytes — convert to numeric types before arithmetic. |

***

### `Googledrive Get App`

Integration name: **GOOGLEDRIVE\_GET\_APP**

Tool to get information about a specific Drive app by ID. Use 'self' as the app ID to get information about the calling app.

#### Parameters

| Parameter | Type   | Required | Example  | Description                                                |
| --------- | ------ | :------: | -------- | ---------------------------------------------------------- |
| `appId`   | string |     ✅    | `"self"` | The ID of the app. Use 'self' to refer to the calling app. |

***

### `Googledrive Get Change`

Integration name: **GOOGLEDRIVE\_GET\_CHANGE**

Tool to get a specific change by ID from Google Drive v2 API. Deprecated: Use changes.getStartPageToken and changes.list to retrieve recent changes instead.

#### Parameters

| Parameter            | Type    | Required | Example | Description                                                                                                                                            |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                | string  |          | —       | Data format for response.                                                                                                                              |
| `key`                | string  |          | —       | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`              | string  |          | —       | V1 error format.                                                                                                                                       |
| `fields`             | string  |          | —       | Selector specifying which fields to include in a partial response.                                                                                     |
| `driveId`            | string  |          | —       | The shared drive from which the change will be returned.                                                                                               |
| `callback`           | string  |          | —       | JSONP                                                                                                                                                  |
| `changeId`           | string  |     ✅    | `"50"`  | The ID of the change.                                                                                                                                  |
| `quotaUser`          | string  |          | —       | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`         | string  |          | —       | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`        | string  |          | —       | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`        | boolean |          | —       | Returns response with indentations and line breaks.                                                                                                    |
| `teamDriveId`        | string  |          | —       | Deprecated: Use `driveId` instead.                                                                                                                     |
| `access_token`       | string  |          | —       | OAuth access token.                                                                                                                                    |
| `upload_protocol`    | string  |          | —       | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |
| `supportsAllDrives`  | boolean |          | —       | Whether the requesting application supports both My Drives and shared drives.                                                                          |
| `supportsTeamDrives` | boolean |          | —       | Deprecated: Use `supportsAllDrives` instead.                                                                                                           |

***

### `Googledrive Get Changes Start Page Token`

Integration name: **GOOGLEDRIVE\_GET\_CHANGES\_START\_PAGE\_TOKEN**

Tool to get the starting pageToken for listing future changes in Google Drive. Returns only a token — pass it to GOOGLEDRIVE\_LIST\_CHANGES to retrieve actual changes. Persist this token; losing it requires a full rescan. The token is forward-looking: GOOGLEDRIVE\_LIST\_CHANGES may return no results if no changes have occurred since issuance. For simple recent-file lookups, prefer GOOGLEDRIVE\_FIND\_FILE; use this tool only for incremental change-feed workflows.

#### Parameters

| Parameter            | Type    | Required | Example                                | Description                                                                                                                     |
| -------------------- | ------- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `driveId`            | string  |          | `"0AB_CD1234EFG5HIJ6KLM7N8PQRST9UVWX"` | The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned. |
| `teamDriveId`        | string  |          | `"0AB_CD1234EFG5HIJ6KLM7N8PQRST9UVWX"` | Deprecated: Use driveId instead.                                                                                                |
| `supportsAllDrives`  | boolean |          | `true`                                 | Whether the requesting application supports both My Drives and shared drives. Defaults to false.                                |
| `supportsTeamDrives` | boolean |          | `true`                                 | Deprecated: Use supportsAllDrives instead.                                                                                      |

***

### `Googledrive Get Child`

Integration name: **GOOGLEDRIVE\_GET\_CHILD**

Tool to get a specific child reference for a folder using Drive API v2. Use when you need to verify a specific file exists as a child of a folder.

#### Parameters

| Parameter         | Type    | Required | Example                               | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                     | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`           | string  |          | —                                     | V1 error format options.                                                                                                                               |
| `fields`          | string  |          | —                                     | Selector specifying which fields to include in a partial response.                                                                                     |
| `childId`         | string  |     ✅    | `"1iau-j_ezb2Vcx1tZDMDdfpqlzxVzlscg"` | The ID of the child.                                                                                                                                   |
| `callback`        | string  |          | —                                     | JSONP callback parameter.                                                                                                                              |
| `folderId`        | string  |     ✅    | `"0APvaZgd8EyufUk9PVA"`               | The ID of the folder.                                                                                                                                  |
| `quotaUser`       | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                     | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`     | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                     | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`    | string  |          | —                                     | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                                     | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Get Comment`

Integration name: **GOOGLEDRIVE\_GET\_COMMENT**

Tool to get a comment by ID. Use when you need to retrieve a specific comment from a Google Drive file and have both the file ID and comment ID.

#### Parameters

| Parameter        | Type    | Required | Example                            | Description                                                                                   |
| ---------------- | ------- | :------: | ---------------------------------- | --------------------------------------------------------------------------------------------- |
| `fileId`         | string  |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"`           | The ID of the file.                                                                           |
| `commentId`      | string  |     ✅    | `"11a22b33c44d55e66f77g88h99i00j"` | The ID of the comment.                                                                        |
| `includeDeleted` | boolean |          | —                                  | Whether to return deleted comments. Deleted comments will not include their original content. |

***

### `Googledrive Get Drive`

Integration name: **GOOGLEDRIVE\_GET\_DRIVE**

Tool to get a shared drive by ID. Use when you need to retrieve information about a specific shared drive. To discover drive\_ids, use GOOGLEDRIVE\_LIST\_SHARED\_DRIVES first; GOOGLEDRIVE\_GET\_ABOUT reflects overall user storage, not individual shared drive details. Permission changes may have a brief propagation delay before appearing in results.

#### Parameters

| Parameter                 | Type    | Required | Example            | Description                                                                                                                                                                          |
| ------------------------- | ------- | :------: | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `drive_id`                | string  |     ✅    | `"0ABCA123456789"` | The ID of the shared drive.                                                                                                                                                          |
| `use_domain_admin_access` | boolean |          | `true`             | Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs. |

***

### `Googledrive Get File Metadata`

Integration name: **GOOGLEDRIVE\_GET\_FILE\_METADATA**

Tool to get a file's metadata by ID. Use to verify `mimeType`, `parents`, and `trashed` status before destructive operations (delete/move/export), or to confirm `mimeType='application/vnd.google-apps.document'` before calling GOOGLEDOCS\_\* tools (non-native files require GOOGLEDRIVE\_DOWNLOAD\_FILE). Only returns metadata visible to the connected account; public access requires GOOGLEDRIVE\_ADD\_FILE\_SHARING\_PREFERENCE. High-frequency calls risk `403 rateLimitExceeded`; apply exponential backoff.

#### Parameters

| Parameter                   | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| --------------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                    | string  |          | —                        | Comma-separated list of fields to include in the response. Use this for partial responses to request only specific metadata fields. Common fields: id, name, mimeType, webViewLink, webContentLink, createdTime, modifiedTime, size, quotaBytesUsed, parents, owners, permissions. Use '*' to return all available fields. Note: The deprecated v2 field 'alternateLink' is automatically migrated to 'webViewLink'. Example: 'id,name,mimeType,webViewLink,createdTime,modifiedTime'. Most fields (webViewLink, parents, owners, size, modifiedTime, etc.) are omitted by default — explicitly list required fields or use '*' (increases latency). `md5Checksum` is null for native Google Workspace files (Docs/Sheets/Slides); use `mimeType` to classify items — folders use `mimeType='application/vnd.google-apps.folder'` and Workspace files return `size=null`. `modifiedTime` is RFC 3339 UTC format. |
| `fileId`                    | string  |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"` | The Google Drive file ID (an opaque alphanumeric string like '1a2b3c4d5e6f7g8h9i0j'), NOT a file name. If you only have a file name, use GOOGLEDRIVE\_FIND\_FILE or GOOGLEDRIVE\_LIST\_FILES to get the file ID first.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `includeLabels`             | string  |          | —                        | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `supportsAllDrives`         | boolean |          | —                        | Whether the requesting application supports both My Drives and shared drives. Defaults to true to ensure files in shared drives are accessible.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `includePermissionsForView` | string  |          | —                        | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

***

### `Googledrive Get File Property`

Integration name: **GOOGLEDRIVE\_GET\_FILE\_PROPERTY**

Tool to get a property by its key using Google Drive API v2. Use when you need to retrieve a specific custom property attached to a file.

#### Parameters

| Parameter     | Type   | Required | Example                                          | Description                                                                                                                                               |
| ------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`      | string |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file.                                                                                                                                       |
| `visibility`  | string |          | —                                                | The visibility of the property. Allowed values are PRIVATE (default) and PUBLIC. Private properties can only be retrieved using an authenticated request. |
| `propertyKey` | string |     ✅    | `"test_key"`                                     | The key of the property.                                                                                                                                  |

***

### `Googledrive Get File V2`

Integration name: **GOOGLEDRIVE\_GET\_FILE\_V2**

DEPRECATED: Use GetFileMetadata instead. Tool to get a file's metadata or content by ID from Google Drive API v2. Use when you need file metadata with alt=json, or file content with alt=media.

#### Parameters

| Parameter                   | Type    | Required | Example                                          | Description                                                                                                                                            |
| --------------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                       | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`                       | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`                     | string  |          | —                                                | V1 error format values.                                                                                                                                |
| `fields`                    | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`                    | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID for the file in question. This is a required parameter and cannot be empty.                                                                     |
| `callback`                  | string  |          | —                                                | JSONP callback function name.                                                                                                                          |
| `quotaUser`                 | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `projection`                | string  |          | —                                                | Projection parameter values (deprecated).                                                                                                              |
| `revisionId`                | string  |          | —                                                | Specifies the Revision ID that should be downloaded. Ignored unless alt=media is specified.                                                            |
| `uploadType`                | string  |          | —                                                | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`               | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`               | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`              | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `includeLabels`             | string  |          | —                                                | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                              |
| `upload_protocol`           | string  |          | —                                                | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |
| `acknowledgeAbuse`          | boolean |          | —                                                | Whether the user is acknowledging the risk of downloading known malware or other abusive files.                                                        |
| `updateViewedDate`          | boolean |          | —                                                | Deprecated: Use files.update with modifiedDateBehavior=noChange, updateViewedDate=true and an empty request body.                                      |
| `supportsAllDrives`         | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives.                                                                          |
| `supportsTeamDrives`        | boolean |          | —                                                | Deprecated: Use supportsAllDrives instead.                                                                                                             |
| `includePermissionsForView` | string  |          | —                                                | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                               |

***

### `Googledrive Get Parent`

Integration name: **GOOGLEDRIVE\_GET\_PARENT**

Tool to get a specific parent reference for a file using Drive API v2. Use when you need to retrieve information about a specific parent folder of a file.

#### Parameters

| Parameter         | Type    | Required | Example                               | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                     | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`           | string  |          | —                                     | V1 error format options.                                                                                                                               |
| `fields`          | string  |          | —                                     | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`          | string  |     ✅    | `"1xygSVDktMDb4chxS3AQTMzABKWYdWtOB"` | The ID of the file.                                                                                                                                    |
| `callback`        | string  |          | —                                     | JSONP callback parameter.                                                                                                                              |
| `parentId`        | string  |     ✅    | `"0APvaZgd8EyufUk9PVA"`               | The ID of the parent.                                                                                                                                  |
| `quotaUser`       | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                     | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`     | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                     | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`    | string  |          | —                                     | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                                     | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Get Permission`

Integration name: **GOOGLEDRIVE\_GET\_PERMISSION**

Gets a permission by ID. Use this tool to retrieve a specific permission for a file or shared drive. Newly created or updated permissions on shared drives may have a brief propagation delay before appearing.

#### Parameters

| Parameter                 | Type    | Required | Example                                                | Description                                                                                                                                                                                                                                                      |
| ------------------------- | ------- | :------: | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                  | string  |          | `"id,emailAddress,displayName,role,permissionDetails"` | Selector specifying which fields to include in a partial response. Use 'fields=\*' to return all available fields for the permission resource.                                                                                                                   |
| `file_id`                 | string  |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"`                               | The ID of the file.                                                                                                                                                                                                                                              |
| `permission_id`           | string  |     ✅    | `"12345678901234567890"`                               | The numeric ID of the permission. Note: The 'me' alias is NOT supported by the Google Drive permissions API. You must provide an actual numeric permission ID (e.g., '12345678901234567890'). Use the LIST\_PERMISSIONS action to get permission IDs for a file. |
| `supports_all_drives`     | boolean |          | —                                                      | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                                    |
| `use_domain_admin_access` | boolean |          | —                                                      | Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.                  |

***

### `Googledrive Get Permission Id For Email`

Integration name: **GOOGLEDRIVE\_GET\_PERMISSION\_ID\_FOR\_EMAIL**

Tool to get the permission ID for an email address using the Drive API v2. Use when you need to convert an email address to its corresponding permission ID.

#### Parameters

| Parameter         | Type    | Required | Example              | Description                                                                                                                                            |
| ----------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                    | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                    | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `email`           | string  |     ✅    | `"test@example.com"` | The email address for which to return a permission ID                                                                                                  |
| `xgafv`           | string  |          | —                    | V1 error format values.                                                                                                                                |
| `fields`          | string  |          | —                    | Selector specifying which fields to include in a partial response.                                                                                     |
| `callback`        | string  |          | —                    | JSONP callback parameter.                                                                                                                              |
| `quotaUser`       | string  |          | —                    | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                    | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`     | string  |          | —                    | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                    | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`    | string  |          | —                    | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                    | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Get Reply`

Integration name: **GOOGLEDRIVE\_GET\_REPLY**

Tool to get a specific reply to a comment on a file. Use when you need to retrieve the details of a particular reply.

#### Parameters

| Parameter        | Type    | Required | Example                                   | Description                                                                                 |
| ---------------- | ------- | :------: | ----------------------------------------- | ------------------------------------------------------------------------------------------- |
| `fileId`         | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the file.                                                                         |
| `replyId`        | string  |     ✅    | `"CCCCCCDDDDDD"`                          | The ID of the reply.                                                                        |
| `commentId`      | string  |     ✅    | `"AAAAAABBBBBB"`                          | The ID of the comment.                                                                      |
| `includeDeleted` | boolean |          | —                                         | Whether to return deleted replies. Deleted replies will not include their original content. |

***

### `Googledrive Get Revision`

Integration name: **GOOGLEDRIVE\_GET\_REVISION**

Tool to get a specific revision's metadata (name, modifiedTime, keepForever, etc.) by revision ID. Returns metadata only — not file content. Use a separate download tool to retrieve file content or restore a revision.

#### Parameters

| Parameter           | Type    | Required | Example                               | Description                                                                                                                                                                                                                                                         |
| ------------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`           | string  |     ✅    | `"1ZdR3L3Kek7szY1G1-2VUX8cW6CnU0c4a"` | The ID of the file.                                                                                                                                                                                                                                                 |
| `revision_id`       | string  |     ✅    | `"0B9B5CLMDv-N4Z2FhY0E5RUQzNVE"`      | The ID of the revision.                                                                                                                                                                                                                                             |
| `acknowledge_abuse` | boolean |          | —                                     | Whether the user is acknowledging the risk of downloading known malware or other abusive files. This is only applicable when the alt parameter is set to media and the user is the owner of the file or an organizer of the shared drive in which the file resides. |

***

### `Googledrive Get Team Drive`

Integration name: **GOOGLEDRIVE\_GET\_TEAM\_DRIVE**

Tool to get metadata about a Team Drive by ID. Deprecated: Use the drives.get endpoint instead.

#### Parameters

| Parameter              | Type    | Required | Example                 | Description                                                                                                                                                                        |
| ---------------------- | ------- | :------: | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `teamDriveId`          | string  |     ✅    | `"0AMndV9-YuXjwUk9PVA"` | The ID of the Team Drive                                                                                                                                                           |
| `useDomainAdminAccess` | boolean |          | —                       | Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs. |

***

### `Googledrive Google Drive Delete Folder Or File Action`

Integration name: **GOOGLEDRIVE\_GOOGLE\_DRIVE\_DELETE\_FOLDER\_OR\_FILE\_ACTION**

Tool to delete a file or folder in Google Drive. Use when you need to permanently remove a specific file or folder using its ID. Note: This action is irreversible. Deleting a folder permanently removes all nested files and subfolders.

#### Parameters

| Parameter           | Type    | Required | Example                                  | Description                                                                                                                                                                                                                          |
| ------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fileId`            | string  |     ✅    | `"1XyZAbcDefGhiJklMnoPqRsTuVwXyZAbcDef"` | The ID of the file or folder to delete. This is a required field.                                                                                                                                                                    |
| `supportsAllDrives` | boolean |          | —                                        | Whether the application supports both My Drives and shared drives. If false or unspecified, the file is attempted to be deleted from the user's My Drive. If true, the item will be deleted from shared drives as well if necessary. |

***

### `Googledrive Hide Drive`

Integration name: **GOOGLEDRIVE\_HIDE\_DRIVE**

Tool to hide a shared drive from the default view. Use when you want to remove a shared drive from the user's main Google Drive interface without deleting it.

#### Parameters

| Parameter  | Type   | Required | Example                 | Description                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------- |
| `drive_id` | string |     ✅    | `"0AEMgNk_8MPnAUk9PVA"` | The ID of the shared drive. |

***

### `Googledrive Insert Child`

Integration name: **GOOGLEDRIVE\_INSERT\_CHILD**

Tool to insert a file into a folder using Drive API v2. Use when you need to add an existing file to a folder.

#### Parameters

| Parameter             | Type    | Required | Example                               | Description                                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                  | string  |     ✅    | `"19GP5DRpUcmQHBVnk39RTB57twIWVEMjO"` | The ID of the child file to insert into the folder.                                                                                                    |
| `alt`                 | string  |          | —                                     | Data format for response.                                                                                                                              |
| `key`                 | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`               | string  |          | —                                     | V1 error format options.                                                                                                                               |
| `fields`              | string  |          | —                                     | Selector specifying which fields to include in a partial response.                                                                                     |
| `callback`            | string  |          | —                                     | JSONP callback parameter.                                                                                                                              |
| `folderId`            | string  |     ✅    | `"1IL1JRSfkm9B_L-guI7g-birKApFyD_Di"` | The ID of the folder.                                                                                                                                  |
| `quotaUser`           | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`          | string  |          | —                                     | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`         | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`         | boolean |          | —                                     | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`        | string  |          | —                                     | OAuth access token.                                                                                                                                    |
| `upload_protocol`     | string  |          | —                                     | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |
| `supportsAllDrives`   | boolean |          | —                                     | Whether the requesting application supports both My Drives and shared drives.                                                                          |
| `supportsTeamDrives`  | boolean |          | —                                     | Deprecated: Use supportsAllDrives instead.                                                                                                             |
| `enforceSingleParent` | boolean |          | —                                     | Deprecated: Adding files to multiple folders is no longer supported. Use shortcuts instead.                                                            |

***

### `Googledrive List Access Proposals`

Integration name: **GOOGLEDRIVE\_LIST\_ACCESS\_PROPOSALS**

Tool to list pending access proposals on a file. Use when you need to retrieve access proposals for a specific file. Note: Only approvers can list access proposals; non-approvers will receive a 403 error.

#### Parameters

| Parameter   | Type    | Required | Example                               | Description                                           |
| ----------- | ------- | :------: | ------------------------------------- | ----------------------------------------------------- |
| `fileId`    | string  |     ✅    | `"1lu9-CzH7k2a_ktFQvt8xfYM1L0FVGJx6"` | The ID of the file to list access proposals for       |
| `pageSize`  | integer |          | —                                     | The number of results per page                        |
| `pageToken` | string  |          | —                                     | The continuation token on the list of access requests |

***

### `Googledrive List Approvals`

Integration name: **GOOGLEDRIVE\_LIST\_APPROVALS**

Tool to list approvals on a file for workflow-based access control. Use when you need to retrieve all approvals associated with a specific file in Google Drive.

#### Parameters

| Parameter   | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                      |
| ----------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`    | string  |     ✅    | `"1xAHUNyfubIa8K07EVv9_5Hc5EsgdIhUx-QNcrGJ_yQk"` | The ID of the file to list approvals for                                                                                                                                                                                                                         |
| `pageSize`  | integer |          | —                                                | The maximum number of approvals to return per page                                                                                                                                                                                                               |
| `pageToken` | string  |          | —                                                | A pagination token returned as 'nextPageToken' from a previous list approvals response. Must be an exact, unmodified token from a prior API call - do not construct, encode, or guess token values. Only provide this parameter when paginating through results. |

***

### `Googledrive List Changes`

Integration name: **GOOGLEDRIVE\_LIST\_CHANGES**

Tool to list the changes for a user or shared drive. Use when a full incremental change feed is needed (for simple recent-file lookups, prefer GOOGLEDRIVE\_FIND\_FILE instead). Tracks modifications such as creations, deletions, or permission changes. The pageToken is optional - if not provided, the current start page token will be automatically fetched; an empty result is valid if no recent activity has occurred. Example usage: `json { "pageToken": "22633", "pageSize": 100, "includeRemoved": true }` Returns changes with timestamps, file IDs, and modification details. Paginate by following `nextPageToken` until it is absent — stopping early will silently omit changes. Save `newStartPageToken` to monitor future changes efficiently.

#### Parameters

| Parameter                   | Type    | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| --------------------------- | ------- | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `spaces`                    | string  |          | `"drive,appDataFolder"` | A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `driveId`                   | string  |          | `"0AB1CDEfghijklmNOP"`  | The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier. When driveId is provided, supportsAllDrives is automatically set to true.                                                                                                                                                                                                                                                                                                   |
| `pageSize`                  | integer |          | `100`                   | The maximum number of changes to return per page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `pageToken`                 | string  |          | `"22633"`               | The token for continuing a previous list request on the next page. Must be a valid token from a previous LIST\_CHANGES response's 'nextPageToken' field or from the get\_changes\_start\_page\_token action. If not provided, the current start page token will be automatically fetched and used. Tokens can become stale — always use a fresh token from GOOGLEDRIVE\_GET\_CHANGES\_START\_PAGE\_TOKEN or the most recent prior response to avoid missed or duplicate changes. Paginate until nextPageToken is absent; stopping early silently omits changes. |
| `includeLabels`             | string  |          | `"labelId1,labelId2"`   | A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `includeRemoved`            | boolean |          | —                       | Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `restrictToMyDrive`         | boolean |          | —                       | Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files such as those in the Application Data folder or shared files which have not been added to My Drive.                                                                                                                                                                                                                                                                                                                                                       |
| `supportsAllDrives`         | boolean |          | —                       | Whether the requesting application supports both My Drives and shared drives. Must be true when driveId is specified (will be automatically set to true when driveId is provided).                                                                                                                                                                                                                                                                                                                                                                              |
| `includeCorpusRemovals`     | boolean |          | —                       | Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file. Note: When set to true, includeRemoved must also be true (will be automatically set).                                                                                                                                                                                                                                 |
| `includeItemsFromAllDrives` | boolean |          | —                       | Whether both My Drive and shared drive items should be included in results. Must be true when driveId is specified (will be automatically set to true when driveId is provided).                                                                                                                                                                                                                                                                                                                                                                                |
| `includePermissionsForView` | string  |          | `"published"`           | Specifies which additional view's permissions to include in the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Googledrive List Children V2`

Integration name: **GOOGLEDRIVE\_LIST\_CHILDREN\_V2**

Tool to list a folder's children using Google Drive API v2. Use when you need to retrieve all files and folders within a specific folder.

#### Parameters

| Parameter         | Type    | Required | Example  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------- | ------- | :------: | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`               | string  |          | —        | Query string for searching children.                                                                                                                                                                                                                                                                                                                                                                                                        |
| `alt`             | string  |          | —        | Data format for response enum.                                                                                                                                                                                                                                                                                                                                                                                                              |
| `key`             | string  |          | —        | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.                                                                                                                                                                                                                                                                                         |
| `xgafv`           | string  |          | —        | V1 error format enum.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `fields`          | string  |          | —        | Selector specifying which fields to include in a partial response. This endpoint returns ChildReference objects, NOT full File objects. Valid ChildReference fields are: 'id' (child ID), 'selfLink' (link to this reference), 'kind' (resource type), 'childLink' (link to the child). File-level fields like 'title', 'modifiedDate', 'fileSize', 'alternateLink', 'mimeType' are NOT valid. Example: 'items(id,childLink),nextPageToken' |
| `orderBy`         | string  |          | —        | A comma-separated list of sort keys. Valid keys are 'createdDate', 'folder', 'lastViewedByMeDate', 'modifiedByMeDate', 'modifiedDate', 'quotaBytesUsed', 'recency', 'sharedWithMeDate', 'starred', and 'title'. Each key sorts ascending by default, but may be reversed with the 'desc' modifier. Example usage: ?orderBy=folder,modifiedDate desc,title.                                                                                  |
| `callback`        | string  |          | —        | JSONP callback parameter.                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `folderId`        | string  |     ✅    | `"root"` | The ID of the folder.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `pageToken`       | string  |          | —        | Page token for children.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `quotaUser`       | string  |          | —        | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.                                                                                                                                                                                                                                                                                      |
| `maxResults`      | integer |          | —        | Maximum number of children to return.                                                                                                                                                                                                                                                                                                                                                                                                       |
| `uploadType`      | string  |          | —        | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                                                                                                                                                                                                                                                                                                               |
| `oauth_token`     | string  |          | —        | OAuth 2.0 token for the current user.                                                                                                                                                                                                                                                                                                                                                                                                       |
| `prettyPrint`     | boolean |          | —        | Returns response with indentations and line breaks.                                                                                                                                                                                                                                                                                                                                                                                         |
| `access_token`    | string  |          | —        | OAuth access token.                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `upload_protocol` | string  |          | —        | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Googledrive List Comments`

Integration name: **GOOGLEDRIVE\_LIST\_COMMENTS**

Tool to list all comments for a file in Google Drive. Results are paginated; iterate using nextPageToken until absent to retrieve all comments. Filtering by author, content, or other criteria must be done client-side. Use commentId, createdTime, and author from results to uniquely identify comments before acting on them.

#### Parameters

| Parameter           | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                  |
| ------------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string  |          | `"*"`                                    | A comma-separated list of fields to include in the response. Use `*` to include all fields. Prefer selective field masks (e.g., 'comments(id,content,author)') over '\*' to reduce payload size and latency.                                                                                 |
| `fileId`            | string  |     ✅    | `"1234567890abcdefghijklmnopqrstuvwxyz"` | The ID of the file. Equivalent to the Google Docs document\_id; pass it here under the fileId parameter name.                                                                                                                                                                                |
| `pageSize`          | integer |          | —                                        | The maximum number of comments to return per page.                                                                                                                                                                                                                                           |
| `pageToken`         | string  |          | —                                        | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response. Comments may be added or modified during pagination on active files; use startModifiedTime to bound the window if consistency is required. |
| `includeDeleted`    | boolean |          | —                                        | Whether to include deleted comments. Deleted comments will not include their original content.                                                                                                                                                                                               |
| `startModifiedTime` | string  |          | —                                        | The minimum value of 'modifiedTime' for the result comments (RFC 3339 date-time).                                                                                                                                                                                                            |

***

### `Googledrive List File Labels`

Integration name: **GOOGLEDRIVE\_LIST\_FILE\_LABELS**

Tool to list the labels already applied to a file in Google Drive. An empty labels array is a valid response indicating no labels are applied, not an error. This tool shows only applied labels; label\_id and field\_id values required by other Drive label tools must be obtained from admin configuration.

#### Parameters

| Parameter     | Type    | Required | Example                                   | Description                                                      |
| ------------- | ------- | :------: | ----------------------------------------- | ---------------------------------------------------------------- |
| `file_id`     | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the file.                                              |
| `page_token`  | string  |          | —                                         | Token to retrieve a specific page of results.                    |
| `max_results` | integer |          | —                                         | The maximum number of labels to return per page. Default is 100. |

***

### `Googledrive List File Properties`

Integration name: **GOOGLEDRIVE\_LIST\_FILE\_PROPERTIES**

Tool to list a file's properties in Google Drive API v2. Use when you need to retrieve custom properties (key-value pairs) attached to a file.

#### Parameters

| Parameter         | Type    | Required | Example                                          | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`           | string  |          | —                                                | V1 error format values.                                                                                                                                |
| `fields`          | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`          | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file. This is a required parameter and cannot be empty.                                                                                  |
| `callback`        | string  |          | —                                                | JSONP callback function name.                                                                                                                          |
| `quotaUser`       | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                                | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `oauth_token`     | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `access_token`    | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                                                | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive List Files`

Integration name: **GOOGLEDRIVE\_LIST\_FILES**

DEPRECATED: Use GOOGLEDRIVE\_FIND\_FILE instead. Tool to list a user's files and folders in Google Drive. Use this to search or browse for files and folders based on various criteria.

#### Parameters

| Parameter                   | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| --------------------------- | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                         | string  |          | `"name contains 'report' and starred = true"`    | A query string for filtering the file results. Supports operators 'and', 'or', 'not'. VALID query terms: 'name' (contains, =, !=), 'fullText' (contains), 'mimeType' (contains, =, !=), 'modifiedTime' (<=, <, =, !=, >, >=), 'viewedByMeTime' (<=, <, =, !=, >, >=), 'trashed' (=, !=), 'starred' (=, !=), 'parents' (in), 'owners' (in), 'writers' (in), 'readers' (in), 'sharedWithMe' (=, !=), 'createdTime' (<=, <, =, !=, >, >=), 'properties' (has), 'appProperties' (has), 'visibility' (=, !=), 'shortcutDetails.targetId' (=, !=). IMPORTANT: 'id' is NOT a valid query term - you cannot search by file ID using this parameter. To get a specific file by ID, use the 'Get File Metadata' action instead. Example: "name contains 'important' and mimeType = 'application/vnd.google-apps.folder'". |
| `fields`                    | string  |          | `"id,name,mimeType"`                             | Selector specifying which file fields to include in the response. Provide a comma-separated list of file field names (e.g., 'id,name,mimeType,webViewLink'). The action will automatically format this into the proper API format 'files(field1,field2,...)'. Common file fields include: id, name, description, mimeType, webViewLink, webContentLink, size, createdTime, modifiedTime, parents, owners, permissions. To also include the pagination token, add 'nextPageToken' to the list. NOTE: Google Drive API v2 field names are automatically converted to v3 equivalents (e.g., alternateLink→webViewLink, downloadUrl→webContentLink, title→name, createdDate→createdTime, modifiedDate→modifiedTime).                                                                                                |
| `spaces`                    | string  |          | `"drive,appDataFolder"`                          | A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'. 'drive' represents files in My Drive and shared drives, while 'appDataFolder' represents the application's private data folder.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `corpora`                   | string  |          | `"user"`                                         | Specifies the bodies of items (files/documents) to which the query applies. Supported values are 'user', 'domain', 'drive', and 'allDrives'. It's generally more efficient to use 'user' or 'drive' instead of 'allDrives'. Defaults to 'user'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `driveId`                   | string  |          | `"0ABCA123456789"`                               | The ID of the shared drive to search. This is used when `corpora` is set to 'drive'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `orderBy`                   | string  |          | `"modifiedTime desc,name"`                       | A comma-separated list of sort keys. Valid keys are: 'createdTime', 'folder', 'modifiedByMeTime', 'modifiedTime', 'name', 'name\_natural', 'quotaBytesUsed', 'recency', 'sharedWithMeTime', 'starred', 'viewedByMeTime'. IMPORTANT: Use 'quotaBytesUsed' to sort by file size (do NOT use 'size' - it is not a valid key). Each key sorts in ascending order by default, but can be reversed with the 'desc' modifier (e.g., 'modifiedTime desc').                                                                                                                                                                                                                                                                                                                                                              |
| `folderId`                  | string  |          | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | ID of a specific folder to list files from. This is a convenience parameter that automatically adds "'folder\_id' in parents" to the query. Cannot be used together with a custom 'q' parameter.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `pageSize`                  | integer |          | `50`                                             | The maximum number of files to return per page. The value must be between 1 and 1000, inclusive. Defaults to 100.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `pageToken`                 | string  |          | `" nextPageTokenValue"`                          | The token for continuing a previous list request on the next page. This MUST be set to the value of 'nextPageToken' from the previous response. Do not manually construct or modify pageToken values as they are opaque tokens generated by the API. If the token is rejected, pagination should be restarted from the first page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `includeLabels`             | string  |          | `"labelId1,labelId2"`                            | A comma-separated list of label IDs to include in the `labelInfo` part of the response for each file.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `supportsAllDrives`         | boolean |          | `true`                                           | Whether the requesting application supports both My Drives and shared drives. Defaults to false. If true, then `includeItemsFromAllDrives` can be used to extend the search to all drives.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `includeItemsFromAllDrives` | boolean |          | `true`                                           | Whether to include items from both My Drive and shared drives. This is relevant when `corpora` is 'user' or 'domain'. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `includePermissionsForView` | string  |          | `"published"`                                    | Include additional permissions for a specific view. The only valid value is 'published', which includes permissions for files with published content. Omit this parameter if you don't need published view permissions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

***

### `Googledrive List Permissions`

Integration name: **GOOGLEDRIVE\_LIST\_PERMISSIONS**

Tool to list a file's permissions. Use when you need to retrieve all permissions associated with a specific file or shared drive.

#### Parameters

| Parameter                   | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                    |
| --------------------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`                    | string  |     ✅    | `"1234567890abcdefghijklmnopqrstuvwxyz"` | The ID of the file or shared drive. Must be a non-empty string.                                                                                                                                                                                |
| `pageSize`                  | integer |          | —                                        | The maximum number of permissions to return per page. When not set for files in a shared drive, at most 100 results will be returned. When not set for files that are not in a shared drive, the entire list will be returned.                 |
| `pageToken`                 | string  |          | —                                        | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.                                                                                              |
| `supportsAllDrives`         | boolean |          | —                                        | Whether the requesting application supports both My Drives and shared drives. Default: false                                                                                                                                                   |
| `useDomainAdminAccess`      | boolean |          | —                                        | Issue the request as a domain administrator; if set to true, then theRequester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs. |
| `includePermissionsForView` | string  |          | —                                        | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                                                                                                                       |

***

### `Googledrive List Replies`

Integration name: **GOOGLEDRIVE\_LIST\_REPLIES**

Tool to list replies to a comment in Google Drive. Use this when you need to retrieve all replies associated with a specific comment on a file.

#### Parameters

| Parameter         | Type    | Required | Example         | Description                                                                                                                                       |
| ----------------- | ------- | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`          | string  |          | —               | Selector specifying which fields to include in a partial response. Use '\*' for all fields or e.g. 'replies(id,content),nextPageToken'            |
| `file_id`         | string  |     ✅    | `"12345abcdef"` | The ID of the file.                                                                                                                               |
| `page_size`       | integer |          | —               | The maximum number of replies to return per page.                                                                                                 |
| `comment_id`      | string  |     ✅    | `"67890ghijkl"` | The ID of the comment.                                                                                                                            |
| `page_token`      | string  |          | —               | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response. |
| `include_deleted` | boolean |          | —               | Whether to include deleted replies. Deleted replies will not include their original content.                                                      |

***

### `Googledrive List Revisions`

Integration name: **GOOGLEDRIVE\_LIST\_REVISIONS**

Tool to list a file's revision metadata (not content) in Google Drive. Drive may prune old revisions, so history may be incomplete for frequently edited files. Filter client-side for specific revisionIds; do not assume the last entry is the active version.

#### Parameters

| Parameter           | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                     |
| ------------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`            | string  |     ✅    | `"1234567890abcdefghijklmnopqrstuvwxyz"` | The ID of the file.                                                                                                                                                                                                                             |
| `pageSize`          | integer |          | `100`                                    | The maximum number of revisions to return per page.                                                                                                                                                                                             |
| `pageToken`         | string  |          | `"abcdef123456"`                         | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response. Continue paginating until `nextPageToken` is absent; stopping early silently omits revisions. |
| `supportsAllDrives` | boolean |          | —                                        | Whether the requesting application supports both My Drives and shared drives. Defaults to false. Must be set to `true` for shared drive files; omitting it causes `fileId` resolution failures on shared drives.                                |

***

### `Googledrive List Shared Drives`

Integration name: **GOOGLEDRIVE\_LIST\_SHARED\_DRIVES**

Tool to list the user's shared drives. Use when you need to get a list of all shared drives accessible to the authenticated user. Results may differ from the web UI due to admin policies; listing a drive does not guarantee access to its contents. Paginated calls may trigger 403 rateLimitExceeded or 429 tooManyRequests; apply exponential backoff when iterating many pages.

#### Parameters

| Parameter              | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ---------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                    | string  |          | —       | Query string for searching shared drives using Google Drive query syntax (e.g., "name contains 'ProjectX'" or "createdTime > '2023-01-01T00:00:00'"). Query format: query\_term operator values. Common query terms: name, createdTime, memberCount, organizerCount, hidden. Common operators: contains, =, >, <, >=, !=. String values must be enclosed in single quotes. Special characters (apostrophes, backslashes) must be escaped. Multiple terms can be combined with 'and'/'or' operators and parentheses for grouping. |
| `pageSize`             | integer |          | —       | Maximum number of shared drives to return per page. Maximum allowed value is 1000. Paginate by passing the returned nextPageToken back as pageToken until no nextPageToken is returned to avoid silently missing drives.                                                                                                                                                                                                                                                                                                         |
| `pageToken`            | string  |          | —       | Page token for shared drives.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `useDomainAdminAccess` | boolean |          | —       | Issue the request as a domain administrator. If set to true, then all shared drives of the domain in which the requester is an administrator are returned.                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Googledrive List Team Drives`

Integration name: **GOOGLEDRIVE\_LIST\_TEAM\_DRIVES**

Tool to list Team Drives (deprecated, use List Shared Drives instead). Use when you need to retrieve Team Drives using the legacy endpoint.

#### Parameters

| Parameter              | Type    | Required | Example | Description                                                                                                                                              |
| ---------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                    | string  |          | —       | Query string for searching Team Drives.                                                                                                                  |
| `alt`                  | string  |          | —       | Data format for response.                                                                                                                                |
| `key`                  | string  |          | —       | API key. Your API key identifies your project and provides you with API access, quota, and reports.                                                      |
| `xgafv`                | string  |          | —       | V1 error format values.                                                                                                                                  |
| `fields`               | string  |          | —       | Selector specifying which fields to include in a partial response.                                                                                       |
| `callback`             | string  |          | —       | JSONP callback.                                                                                                                                          |
| `pageSize`             | integer |          | —       | Maximum number of Team Drives to return per page.                                                                                                        |
| `pageToken`            | string  |          | —       | Page token for Team Drives.                                                                                                                              |
| `quotaUser`            | string  |          | —       | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.   |
| `uploadType`           | string  |          | —       | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                            |
| `oauth_token`          | string  |          | —       | OAuth 2.0 token for the current user.                                                                                                                    |
| `prettyPrint`          | boolean |          | —       | Returns response with indentations and line breaks.                                                                                                      |
| `access_token`         | string  |          | —       | OAuth access token.                                                                                                                                      |
| `upload_protocol`      | string  |          | —       | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                     |
| `useDomainAdminAccess` | boolean |          | —       | Issue the request as a domain administrator; if set to true, then all Team Drives of the domain in which the requester is an administrator are returned. |

***

### `Googledrive Modify File Labels`

Integration name: **GOOGLEDRIVE\_MODIFY\_FILE\_LABELS**

Modifies the set of labels applied to a file. Returns a list of the labels that were added or modified. Use when you need to programmatically change labels on a Google Drive file, such as adding, updating, or removing them.

#### Parameters

| Parameter             | Type   | Required | Example | Description                                                   |
| --------------------- | ------ | :------: | ------- | ------------------------------------------------------------- |
| `kind`                | string |          | —       | This is always drive#modifyLabelsRequest.                     |
| `file_id`             | string |     ✅    | —       | The ID of the file.                                           |
| `label_modifications` | array  |     ✅    | —       | The list of modifications to apply to the labels on the file. |

***

### `Googledrive Move File`

Integration name: **GOOGLEDRIVE\_MOVE\_FILE**

Tool to move a file from one folder to another in Google Drive. To truly move (not just copy the parent), always provide both `add_parents` (destination folder ID) and `remove_parents` (source folder ID); omitting `remove_parents` leaves the file in multiple folders. Useful for reorganizing files, including newly created Google Docs/Sheets that default to Drive root.

#### Parameters

| Parameter                       | Type    | Required | Example                               | Description                                                                                                                                                                                                                  |
| ------------------------------- | ------- | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`                       | string  |     ✅    | `"1XyZ..."`                           | The ID of the file to move. Must be a non-empty string.                                                                                                                                                                      |
| `add_parents`                   | string  |          | `"1FmTIJYwTENUDXOKyNJp7OmcRBvP_6DmT"` | The ID of the single destination folder (e.g., '1FmTIJYwTENUDXOKyNJp7OmcRBvP\_6DmT'). Must be a valid Google Drive folder ID consisting of alphanumeric characters, hyphens, and underscores. Folder names are not accepted. |
| `ocr_language`                  | string  |          | —                                     | A language hint for OCR processing during image import (ISO 639-1 code).                                                                                                                                                     |
| `include_labels`                | string  |          | —                                     | A comma-separated list of IDs of labels to include in the `labelInfo` part of the response.                                                                                                                                  |
| `remove_parents`                | string  |          | `"folder_id_3,folder_id_4"`           | A comma-separated list of parent folder IDs to remove the file from. Use this to specify the source folder.                                                                                                                  |
| `supports_all_drives`           | boolean |          | —                                     | Whether the requesting application supports both My Drives and shared drives. Set to true if moving files to or from a shared drive.                                                                                         |
| `keep_revision_forever`         | boolean |          | —                                     | Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.                                                                                       |
| `include_permissions_for_view`  | string  |          | —                                     | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                                                                                                     |
| `use_content_as_indexable_text` | boolean |          | —                                     | Whether to use the uploaded content as indexable text.                                                                                                                                                                       |

***

### `Googledrive Parse File`

Integration name: **GOOGLEDRIVE\_PARSE\_FILE**

DEPRECATED: Exports Google Workspace files (max 10MB) to a specified format using `mime_type`, or downloads other file types; use `GOOGLEDRIVE_DOWNLOAD_FILE` instead.

#### Parameters

| Parameter   | Type   | Required | Example             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------- | ------ | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`   | string |     ✅    | —                   | The unique ID of the file stored in Google Drive that you want to export or download.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `mime_type` | string |          | `"application/pdf"` | Target MIME type for exporting Google Workspace files only. Supported exports by source type: Google Docs -> DOCX, ODT, RTF, PDF, TXT, ZIP (HTML), EPUB, MD; Google Sheets -> XLSX, ODS, PDF, ZIP (HTML), CSV, TSV; Google Slides -> PPTX, ODP, PDF, TXT, JPG, PNG, SVG; Google Drawings -> PDF, JPG, PNG, SVG; Apps Script -> JSON. If omitted, a default format is used: Docs->PDF, Sheets->XLSX, Slides->PDF, Drawings->PDF. For non-Workspace files (PDFs, images, text files, etc.), this parameter is ignored and the file is downloaded in its native format. |

***

### `Googledrive Patch Permission`

Integration name: **GOOGLEDRIVE\_PATCH\_PERMISSION**

Tool to update a permission using patch semantics. Use when you need to modify specific fields of an existing permission without affecting other fields. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied.

#### Parameters

| Parameter                 | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                     |
| ------------------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role`                    | string  |          | `"reader"`                                       | Permission roles that can be granted in Google Drive.                                                                                                                                                                                           |
| `file_id`                 | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID for the file or shared drive.                                                                                                                                                                                                            |
| `with_link`               | boolean |          | —                                                | Whether the link is required for this permission. Set to true for 'anyone with the link' access (not publicly discoverable), or false for publicly discoverable access.                                                                         |
| `permission_id`           | string  |     ✅    | `"anyone"`                                       | The ID for the permission. Use 'anyone' for public link permissions, or specific permission IDs for user/group/domain permissions. You can get permission IDs by calling GOOGLEDRIVE\_LIST\_PERMISSIONS.                                        |
| `expiration_date`         | string  |          | `"2024-12-31T23:59:59Z"`                         | The time at which this permission will expire (RFC 3339 date-time). Can only be set on user and group permissions. The date must be in the future and cannot be more than a year in the future.                                                 |
| `additional_roles`        | array   |          | `["commenter"]`                                  | Additional roles for this user. Only 'commenter' is currently allowed.                                                                                                                                                                          |
| `remove_expiration`       | boolean |          | —                                                | Whether to remove the expiration date. Set to true to make the permission permanent.                                                                                                                                                            |
| `transfer_ownership`      | boolean |          | —                                                | Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'. Required as an acknowledgement when transferring ownership.                                                     |
| `supports_all_drives`     | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                   |
| `use_domain_admin_access` | boolean |          | —                                                | Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs. |

***

### `Googledrive Patch Property`

Integration name: **GOOGLEDRIVE\_PATCH\_PROPERTY**

Tool to update a property on a file using PATCH semantics (v2 API). Use when you need to partially update custom key-value metadata attached to a Google Drive file.

#### Parameters

| Parameter         | Type    | Required | Example                               | Description                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`             | string  |          | —                                     | Data format for response.                                                                                                                              |
| `key`             | string  |          | —                                     | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `value`           | string  |          | `"updatedValue"`                      | The value of this property.                                                                                                                            |
| `xgafv`           | string  |          | —                                     | V1 error format values.                                                                                                                                |
| `fields`          | string  |          | —                                     | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`          | string  |     ✅    | `"19GP5DRpUcmQHBVnk39RTB57twIWVEMjO"` | The ID of the file.                                                                                                                                    |
| `callback`        | string  |          | —                                     | JSONP callback function name.                                                                                                                          |
| `quotaUser`       | string  |          | —                                     | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`      | string  |          | —                                     | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `visibility`      | string  |          | `"PRIVATE"`                           | Property visibility values.                                                                                                                            |
| `oauth_token`     | string  |          | —                                     | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`     | boolean |          | —                                     | Returns response with indentations and line breaks.                                                                                                    |
| `propertyKey`     | string  |     ✅    | `"testPatchKey"`                      | The key of the property to update.                                                                                                                     |
| `access_token`    | string  |          | —                                     | OAuth access token.                                                                                                                                    |
| `upload_protocol` | string  |          | —                                     | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |

***

### `Googledrive Resumable Upload`

Integration name: **GOOGLEDRIVE\_RESUMABLE\_UPLOAD**

Tool to start and complete a Google Drive resumable upload session. Use for files larger than \~5 MB to avoid timeouts or size-limit failures. HTTP 308 means continue the session from the correct byte offset; HTTP 410 means the session expired and a full restart with a new session is required.

#### Parameters

| Parameter             | Type    | Required | Example  | Description                                                                                                                                                                                                                                                                                                                             |
| --------------------- | ------- | :------: | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`             | string  |          | —        | Optional file ID if updating an existing file instead of creating a new one.                                                                                                                                                                                                                                                            |
| `metadata`            | object  |          | —        | JSON metadata for the Drive File resource (e.g., {'name': 'photo.jpg', 'parents': \['folderId']}). To convert to a Google Docs MIME type, set metadata.mimeType to the target Docs type but send the real file MIME type as the upload content type — using the Docs MIME type as upload content type causes invalidContentType errors. |
| `chunkSize`           | integer |          | `262144` | Chunk size in bytes; must be a multiple of 256 KB.                                                                                                                                                                                                                                                                                      |
| `queryParams`         | object  |          | —        | Optional Drive query parameters.                                                                                                                                                                                                                                                                                                        |
| `file_to_upload`      | object  |     ✅    | —        | File to upload to Google Drive via resumable upload.                                                                                                                                                                                                                                                                                    |
| `folder_to_upload_to` | string  |          | —        | Optional folder ID where NEW files should be uploaded. Only used during file creation, not updates. Will be added to metadata.parents. Must reference a valid, non-trashed folder ID; invalid or trashed IDs silently place files at root.                                                                                              |

***

### `Googledrive Stop Watch Channel`

Integration name: **GOOGLEDRIVE\_STOP\_WATCH\_CHANNEL**

Tool to stop watching resources through a specified channel. Use this when you want to stop receiving notifications for a previously established watch. Both `id` and `resourceId` must be saved from the original watch response — they cannot be retrieved after the fact.

#### Parameters

| Parameter     | Type    | Required | Example                                                                   | Description                                                                                             |
| ------------- | ------- | :------: | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | `"01234567-89ab-cdef-0123-456789abcdef"`                                  | The ID of the channel to stop.                                                                          |
| `kind`        | string  |          | `"api#channel"`                                                           | Identifies this as a notification channel used to watch for changes to a resource.                      |
| `token`       | string  |          | `"clientToken#0123456789"`                                                | An arbitrary string delivered to the target address with each notification delivered over this channel. |
| `params`      | object  |          | `{"ttl":"24"}`                                                            | Additional parameters controlling delivery channel behavior.                                            |
| `address`     | string  |          | `"https://example.com/notifications"`                                     | The address where notifications are delivered for this channel.                                         |
| `payload`     | boolean |          | `true`                                                                    | A Boolean value to indicate whether payload is wanted.                                                  |
| `expiration`  | string  |          | `"1426325213000"`                                                         | Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds.       |
| `resourceId`  | string  |     ✅    | `"0BwDAzcyS3R3CUlRMW0xVExQNk0"`                                           | The ID of the resource being watched.                                                                   |
| `channelType` | string  |          | `"web_hook"`                                                              | The type of delivery mechanism used for this channel.                                                   |
| `resourceUri` | string  |          | `"https://www.googleapis.com/drive/v3/files/0BwDAzcyS3R3CUlRMW0xVExQNk0"` | A version-specific identifier for the watched resource.                                                 |

***

### `Googledrive Trash File`

Integration name: **GOOGLEDRIVE\_TRASH\_FILE**

Tool to move a file or folder to trash (soft delete). Use when you need to delete a file but want to allow recovery via UNTRASH\_FILE. This action is distinct from permanent deletion and provides a safer cleanup workflow.

#### Parameters

| Parameter           | Type    | Required | Example                                   | Description                                                                                                                                   |
| ------------------- | ------- | :------: | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string  |          | `"id,name,trashed,trashedTime"`           | Comma-separated list of fields to include in the response. Use to limit the amount of data returned. If omitted, returns basic file metadata. |
| `file_id`           | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the file to trash.                                                                                                                  |
| `supportsAllDrives` | boolean |          | `true`                                    | Whether the requesting application supports both My Drives and shared drives. Defaults to true.                                               |

***

### `Googledrive Unhide Drive`

Integration name: **GOOGLEDRIVE\_UNHIDE\_DRIVE**

Tool to unhide a shared drive. Use when you need to restore a shared drive to the default view.

#### Parameters

| Parameter | Type   | Required | Example                 | Description                 |
| --------- | ------ | :------: | ----------------------- | --------------------------- |
| `driveId` | string |     ✅    | `"0AEMV2k3MjA19Uk9PVA"` | The ID of the shared drive. |

***

### `Googledrive Untrash File`

Integration name: **GOOGLEDRIVE\_UNTRASH\_FILE**

Tool to restore a file from the trash. Use when you need to recover a deleted file. This action updates the file's metadata to set the 'trashed' property to false. Only works while the file remains in trash — recovery is impossible after trash is emptied via GOOGLEDRIVE\_EMPTY\_TRASH or auto-purged by policy.

#### Parameters

| Parameter           | Type    | Required | Example                                   | Description                                                                   |
| ------------------- | ------- | :------: | ----------------------------------------- | ----------------------------------------------------------------------------- |
| `file_id`           | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | The ID of the file to untrash.                                                |
| `supportsAllDrives` | boolean |          | `true`                                    | Whether the requesting application supports both My Drives and shared drives. |

***

### `Googledrive Update Comment`

Integration name: **GOOGLEDRIVE\_UPDATE\_COMMENT**

Tool to update an existing comment on a Google Drive file. Use when you need to change the content of a comment. NOTE: The 'resolved' field is read-only in the Google Drive API. To resolve or reopen a comment, use CREATE\_REPLY with action='resolve' or action='reopen'.

#### Parameters

| Parameter    | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`     | string  |          | `"id,content,resolved"`                  | Selector specifying which fields to include in a partial response. The API documentation states this is required. If not specified by the user, this action defaults to '\*' to retrieve all fields, ensuring the API requirement is met. Example: 'id,content,resolved'. |
| `content`    | string  |          | `"This is the updated comment content."` | The plain text content of the comment. This field is used to update the comment's text. If not provided, the existing content will be retained unless 'resolved' is being updated.                                                                                        |
| `file_id`    | string  |     ✅    | `"1a2b3c4d5e6f7g8h9i0j"`                 | The ID of the file.                                                                                                                                                                                                                                                       |
| `resolved`   | boolean |          | `true`                                   | NOTE: The 'resolved' field is READ-ONLY in the Google Drive API. To resolve or reopen a comment, use the CREATE\_REPLY action with action='resolve' or action='reopen'. This parameter is kept for backwards compatibility but will be silently ignored by the API.       |
| `comment_id` | string  |     ✅    | `"11a22b33c44d55e66f77g88h99i00j"`       | The ID of the comment to update.                                                                                                                                                                                                                                          |

***

### `Googledrive Update Drive`

Integration name: **GOOGLEDRIVE\_UPDATE\_DRIVE**

Tool to update the metadata for a shared drive. Use when you need to modify properties like the name, theme, background image, or restrictions of a shared drive.

#### Parameters

| Parameter              | Type    | Required | Example | Description                                                                                               |
| ---------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |          | —       | The new name for the shared drive.                                                                        |
| `hidden`               | boolean |          | —       | Whether the shared drive is hidden from the default view.                                                 |
| `driveId`              | string  |     ✅    | —       | The ID of the shared drive to update.                                                                     |
| `themeId`              | string  |          | —       | The ID of a theme to apply to the shared drive. Cannot be set if colorRgb or backgroundImageFile are set. |
| `colorRgb`             | string  |          | —       | The color of this shared drive as an RGB hex string (e.g., "#FF0000"). Cannot be set if themeId is set.   |
| `restrictions`         | object  |          | —       | A set of restrictions to apply to the shared drive.                                                       |
| `backgroundImageFile`  | object  |          | —       | An image file and cropping parameters for the shared drive's background. Cannot be set if themeId is set. |
| `useDomainAdminAccess` | boolean |          | —       | If set to true, the request is issued as a domain administrator.                                          |

***

### `Googledrive Update File Metadata Patch`

Integration name: **GOOGLEDRIVE\_UPDATE\_FILE\_METADATA\_PATCH**

Tool to update file metadata using the Drive API v2 PATCH method. Use when you need to modify file properties like title, description, or labels using patch semantics.

#### Parameters

| Parameter                   | Type    | Required | Example                                          | Description                                                                                                            |
| --------------------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------- |
| `ocr`                       | boolean |          | —                                                | Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.                                                           |
| `title`                     | string  |          | —                                                | The title of the file. Used to change the name of the file.                                                            |
| `fileId`                    | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file to update.                                                                                          |
| `labels`                    | object  |          | —                                                | A group of labels for the file. For example: {'starred': true, 'trashed': false, 'restricted': false, 'viewed': true}. |
| `pinned`                    | boolean |          | —                                                | Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.                                    |
| `mimeType`                  | string  |          | —                                                | The MIME type of the file.                                                                                             |
| `addParents`                | string  |          | —                                                | Comma-separated list of parent IDs to add.                                                                             |
| `properties`                | array   |          | —                                                | The list of properties.                                                                                                |
| `description`               | string  |          | —                                                | A short description of the file.                                                                                       |
| `newRevision`               | boolean |          | —                                                | Whether a blob upload should create a new revision. If not set, a new revision is created.                             |
| `ocrLanguage`               | string  |          | —                                                | If ocr is true, hints at the language to use. Valid values are BCP 47 codes.                                           |
| `modifiedDate`              | string  |          | —                                                | Last time this file was modified by anyone (RFC 3339 date-time). Requires setModifiedDate=true.                        |
| `includeLabels`             | string  |          | —                                                | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                              |
| `indexableText`             | object  |          | —                                                | Indexable text attributes for the file (can be used to improve fulltext queries).                                      |
| `removeParents`             | string  |          | —                                                | Comma-separated list of parent IDs to remove.                                                                          |
| `setModifiedDate`           | boolean |          | —                                                | Whether to set the modified date using the value supplied in the request body.                                         |
| `writersCanShare`           | boolean |          | —                                                | Whether writers can share the document with other users.                                                               |
| `updateViewedDate`          | boolean |          | —                                                | Whether to update the view date after successfully updating the file.                                                  |
| `supportsAllDrives`         | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives. Defaults to true.                        |
| `timedTextLanguage`         | string  |          | —                                                | The language of the timed text.                                                                                        |
| `timedTextTrackName`        | string  |          | —                                                | The timed text track name.                                                                                             |
| `includePermissionsForView` | string  |          | —                                                | Specifies which additional view's permissions to include in the response. Only 'published' is supported.               |
| `useContentAsIndexableText` | boolean |          | —                                                | Whether to use the content as indexable text.                                                                          |

***

### `Googledrive Update File Property`

Integration name: **GOOGLEDRIVE\_UPDATE\_FILE\_PROPERTY**

Tool to update a property on a file using Google Drive API v2. Use when you need to modify an existing custom property attached to a file.

#### Parameters

| Parameter             | Type    | Required | Example                                          | Description                                                                                                                                            |
| --------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `alt`                 | string  |          | —                                                | Data format for response.                                                                                                                              |
| `key`                 | string  |          | —                                                | API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.    |
| `xgafv`               | string  |          | —                                                | V1 error format values.                                                                                                                                |
| `fields`              | string  |          | —                                                | Selector specifying which fields to include in a partial response.                                                                                     |
| `fileId`              | string  |     ✅    | `"1FT9IW4UpvEc4Ezxv8xS2jEda17MztBXzK7CMqfz-s98"` | The ID of the file.                                                                                                                                    |
| `callback`            | string  |          | —                                                | JSONP callback function name.                                                                                                                          |
| `quotaUser`           | string  |          | —                                                | Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. |
| `uploadType`          | string  |          | —                                                | Legacy upload protocol for media (e.g. 'media', 'multipart').                                                                                          |
| `visibility`          | string  |          | —                                                | Visibility options for the property.                                                                                                                   |
| `oauth_token`         | string  |          | —                                                | OAuth 2.0 token for the current user.                                                                                                                  |
| `prettyPrint`         | boolean |          | —                                                | Returns response with indentations and line breaks.                                                                                                    |
| `propertyKey`         | string  |     ✅    | `"test_property"`                                | The key of the property.                                                                                                                               |
| `access_token`        | string  |          | —                                                | OAuth access token.                                                                                                                                    |
| `property_value`      | string  |          | `"updated_test_value"`                           | The value of this property.                                                                                                                            |
| `upload_protocol`     | string  |          | —                                                | Upload protocol for media (e.g. 'raw', 'multipart').                                                                                                   |
| `property_visibility` | string  |          | —                                                | Visibility options for the property.                                                                                                                   |

***

### `Googledrive Update File Put`

Integration name: **GOOGLEDRIVE\_UPDATE\_FILE\_PUT**

Updates file metadata. Uses PATCH semantics (partial update) as per Google Drive API v3 — only explicitly provided fields are updated, so omit fields you do not intend to overwrite. Use this tool to modify attributes of an existing file like its name, description, or parent folders. To move a file, supply add\_parents and remove\_parents together; omitting remove\_parents creates multiple parents, omitting add\_parents can orphan the file. Bulk updates may trigger 429 Too Many Requests; apply exponential backoff. Note: supports metadata updates only; file content updates are not yet implemented.

#### Parameters

| Parameter                  | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| -------------------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                     | string  |          | `"My Updated Document"`                      | The name of the file. Google Drive does not enforce name uniqueness within a folder; duplicate names are allowed and can cause ambiguous results when searching by name.                                                                                                                                                                                                                                                                                                       |
| `fileId`                   | string  |     ✅    | `"1XyZ_6AbCdEfGhIjKlMnOpQrStUvWxYz0"`        | The ID of the file to update.                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `starred`                  | boolean |          | —                                            | Whether the user has starred the file.                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `mime_type`                | string  |          | `"application/vnd.google-apps.document"`     | The MIME type of the file. Google Drive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.                                                                                                                                                                                                                                                                |
| `add_parents`              | string  |          | `"1A2B3C4D5E6F7G8H9I0J"`                     | Comma-separated list of folder IDs (not folder names) to add as parents. Folder IDs are alphanumeric strings typically 20+ characters long (e.g., '1A2B3C4D5E6F7G8H9I0J'). Folder names will not work and will cause a 'Parent folder not found' error. Moving a file requires pairing with remove\_parents (source folder ID); omitting remove\_parents results in multiple parents. Reparenting to a shared folder changes collaborator access to that folder's permissions. |
| `description`              | string  |          | `"Updated version of the project proposal."` | A short description of the file.                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `ocr_language`             | string  |          | `"en"`                                       | A language hint for OCR processing during image import (ISO 639-1 code).                                                                                                                                                                                                                                                                                                                                                                                                       |
| `remove_parents`           | string  |          | `"1A2B3C4D5E6F7G8H9I0J"`                     | Comma-separated list of folder IDs (not folder names) to remove as parents. Folder IDs are alphanumeric strings typically 20+ characters long (e.g., '1A2B3C4D5E6F7G8H9I0J'). Folder names will not work and will cause a 'Parent folder not found' error.                                                                                                                                                                                                                     |
| `writers_can_share`        | boolean |          | —                                            | Whether writers can share the document with other users.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `supports_all_drives`      | boolean |          | —                                            | Whether the requesting application supports both My Drives and shared drives. Defaults to true to ensure compatibility with shared drive files.                                                                                                                                                                                                                                                                                                                                |
| `keep_revision_forever`    | boolean |          | —                                            | Whether to set this revision of the file to be kept forever. This is only applicable to files with binary content in Google Drive. Only 200 revisions for the file can be kept forever. If the limit is reached, try deleting pinned revisions.                                                                                                                                                                                                                                |
| `use_domain_admin_access`  | boolean |          | —                                            | Whether the requesting application is using domain-wide delegation to access content belonging to a user in a different domain. This is only applicable to files with binary content in Google Drive.                                                                                                                                                                                                                                                                          |
| `viewers_can_copy_content` | boolean |          | —                                            | Whether viewers are prevented from copying content of the file.                                                                                                                                                                                                                                                                                                                                                                                                                |

***

### `Googledrive Update File Revision Metadata`

Integration name: **GOOGLEDRIVE\_UPDATE\_FILE\_REVISION\_METADATA**

Updates ONLY the metadata properties of a specific file revision (keepForever, published, publishAuto, publishedOutsideDomain). IMPORTANT: This action does NOT update file content. To update file content, use EDIT\_FILE or UPDATE\_FILE\_PUT instead. This action requires BOTH file\_id AND revision\_id parameters. Use LIST\_REVISIONS to get available revision IDs for a file. Valid parameters: file\_id (required), revision\_id (required), keep\_forever, published, publish\_auto, published\_outside\_domain. Invalid parameters (use other actions): file\_contents, mime\_type, content, name - these are NOT supported by this action.

#### Parameters

| Parameter                | Type    | Required | Example                                   | Description                                                                                                                                                                                                                                                                                                     |
| ------------------------ | ------- | :------: | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_id`                | string  |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789"` | Required. The ID of the file whose revision metadata you want to update. Use LIST\_FILES or FIND\_FILE to get the file ID.                                                                                                                                                                                      |
| `published`              | boolean |          | —                                         | Whether this revision is published. This is only applicable to Docs Editors files.                                                                                                                                                                                                                              |
| `keepForever`            | boolean |          | —                                         | Whether to keep this revision forever, even if it is no longer the head revision. If not set, the revision will be automatically purged 30 days after newer content is uploaded. This can be set on a maximum of 200 revisions for a file. This field is only applicable to files with binary content in Drive. |
| `publishAuto`            | boolean |          | —                                         | Whether subsequent revisions will be automatically republished. This is only applicable to Docs Editors files.                                                                                                                                                                                                  |
| `revision_id`            | string  |     ✅    | `"1"`                                     | Required. The ID of the revision to update. Use LIST\_REVISIONS to get available revision IDs for a file.                                                                                                                                                                                                       |
| `publishedOutsideDomain` | boolean |          | —                                         | Whether this revision is published outside the domain. This is only applicable to Docs Editors files.                                                                                                                                                                                                           |

***

### `Googledrive Update Permission`

Integration name: **GOOGLEDRIVE\_UPDATE\_PERMISSION**

Tool to update a permission with patch semantics. Use when you need to modify an existing permission for a file or shared drive. Inherited or domain-managed permissions may not be editable; verify editability with GOOGLEDRIVE\_LIST\_PERMISSIONS before updating.

#### Parameters

| Parameter                | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                     |
| ------------------------ | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`                 | string  |     ✅    | `"1234567890abcdefghijklmnopqrstuvwxyz"` | The ID of the file or shared drive.                                                                                                                                                                                                             |
| `permission`             | object  |     ✅    | —                                        | The permission resource to update. Only 'role' and 'expirationTime' can be updated. Role changes take effect immediately and can be difficult to reverse; confirm intent before applying.                                                       |
| `permissionId`           | string  |     ✅    | `"01234567890123456789"`                 | The ID of the permission. For anyone-type permissions, use 'anyone' as the permission ID.                                                                                                                                                       |
| `removeExpiration`       | boolean |          | —                                        | Whether to remove the expiration date.                                                                                                                                                                                                          |
| `supportsAllDrives`      | boolean |          | —                                        | Whether the requesting application supports both My Drives and shared drives. Must be set to true when operating on shared drives; omitting this causes the request to fail.                                                                    |
| `transferOwnership`      | boolean |          | —                                        | Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect when set to true.                                                          |
| `useDomainAdminAccess`   | boolean |          | —                                        | Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs. |
| `enforceExpansiveAccess` | boolean |          | —                                        | Whether the request should enforce expansive access rules. This field is deprecated, it is recommended to use `permissionDetails` instead.                                                                                                      |

***

### `Googledrive Update Reply`

Integration name: **GOOGLEDRIVE\_UPDATE\_REPLY**

Tool to update a reply to a comment on a Google Drive file. Use when you need to modify the content of an existing reply.

#### Parameters

| Parameter    | Type   | Required | Example                               | Description                                                                                                                |
| ------------ | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `fields`     | string |          | `"id,content"`                        | Selector specifying which fields to include in a partial response. If not provided, defaults to '\*' to return all fields. |
| `content`    | string |     ✅    | `"This is an updated reply."`         | The new plain text content of the reply.                                                                                   |
| `file_id`    | string |     ✅    | `"1ZdR3L3Kek7szY1j11SQZ9A_00up1j3aA"` | The ID of the file.                                                                                                        |
| `reply_id`   | string |     ✅    | `"ANmBhkFXXXXX"`                      | The ID of the reply.                                                                                                       |
| `comment_id` | string |     ✅    | `"AAAAAAMAAAAA"`                      | The ID of the comment.                                                                                                     |

***

### `Googledrive Update Team Drive`

Integration name: **GOOGLEDRIVE\_UPDATE\_TEAM\_DRIVE**

Tool to update a Team Drive's metadata. Deprecated: Use the drives.update endpoint instead. Use when you need to modify Team Drive properties.

#### Parameters

| Parameter              | Type    | Required | Example                      | Description                                                                                                                                                                                                |
| ---------------------- | ------- | :------: | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |          | `"Bug Reproduce Test Drive"` | The name of this Team Drive.                                                                                                                                                                               |
| `themeId`              | string  |          | —                            | The ID of the theme from which the background image and color will be set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile.                      |
| `colorRgb`             | string  |          | —                            | The color of this Team Drive as an RGB hex string. It can only be set on a drive.teamdrives.update request that does not set themeId.                                                                      |
| `teamDriveId`          | string  |     ✅    | `"0AMndV9-YuXjwUk9PVA"`      | The ID of the Team Drive to update.                                                                                                                                                                        |
| `restrictions`         | object  |          | —                            | A set of restrictions that apply to this Team Drive or items inside this Team Drive.                                                                                                                       |
| `backgroundImageFile`  | object  |          | —                            | An image file and cropping parameters from which a background image for this Team Drive is set. This is a write only field; it can only be set on drive.teamdrives.update requests that don't set themeId. |
| `useDomainAdminAccess` | boolean |          | —                            | Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the Team Drive belongs.                         |

***

### `Googledrive Upload File`

Integration name: **GOOGLEDRIVE\_UPLOAD\_FILE**

Uploads a file (max 5MB) to Google Drive, placing it in the specified folder or root if no valid folder ID is provided. Always creates a new file (never updates existing); use GOOGLEDRIVE\_EDIT\_FILE to update with a stable file\_id. Uploaded files are private by default; configure sharing via GOOGLEDRIVE\_ADD\_FILE\_SHARING\_PREFERENCE.

#### Parameters

| Parameter             | Type   | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------------------- | ------ | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file_to_upload`      | object |     ✅    | —                                     | File to upload to Google Drive (max 5MB). Must be a dict with fields: `name` (sanitized filename, no slashes or control characters), `mimetype` (accurate MIME type, e.g. `application/pdf`; incorrect values cause Drive to convert or misrender the file), and `s3key` (path from a previously staged Composio object — not an s3url, not a local path, not a fabricated key). When chaining with TEXT\_TO\_PDF\_CONVERT\_TEXT\_TO\_PDF, pass the returned `s3key` field, not `s3url`. |
| `folder_to_upload_to` | string |          | `"1duXYCvYC5tIp5B_B1HWLq8LyDYXfMhPU"` | Optional ID of the target Google Drive folder; can be obtained using 'Find Folder' or similar actions. Invalid or missing IDs silently fall back to Drive root with no error — resolve the correct folder ID first using GOOGLEDRIVE\_FIND\_FILE.                                                                                                                                                                                                                                        |

***

### `Googledrive Upload From Url`

Integration name: **GOOGLEDRIVE\_UPLOAD\_FROM\_URL**

Tool to fetch a file from a provided URL server-side and upload it into Google Drive. Use when you need to reliably persist externally hosted files into Drive without client-side downloads or temporary storage.

#### Parameters

| Parameter             | Type    | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| --------------------- | ------- | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string  |     ✅    | `"report.pdf"`                        | Name for the file in Google Drive, including extension (e.g., 'report.pdf', 'image.png').                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `mime_type`           | string  |          | `"application/pdf"`                   | Target MIME type for the file in Google Drive. If not specified, Drive auto-detects from content. Google Workspace MIME types (application/vnd.google-apps.\*) trigger automatic conversion from compatible source formats: google-apps.document converts Word/ODT/HTML/RTF/TXT/PDF/images (OCR); google-apps.spreadsheet converts Excel/ODS/CSV/TSV; google-apps.presentation converts PowerPoint/ODP. Conversion requires the source content to be in a compatible format. Incompatible formats will cause upload errors. |
| `source_url`          | string  |     ✅    | `"https://example.com/document.pdf"`  | URL of the file to download and upload to Google Drive. Must be a publicly accessible URL or include necessary authentication in source\_headers.                                                                                                                                                                                                                                                                                                                                                                           |
| `verify_ssl`          | boolean |          | —                                     | Whether to verify SSL certificates when downloading from HTTPS URLs. Set to false to bypass SSL verification for URLs with certificate issues (expired certificates, hostname mismatches, self-signed certificates). Only disable for trusted sources.                                                                                                                                                                                                                                                                      |
| `source_headers`      | object  |          | `{"Authorization":"Bearer token123"}` | Optional HTTP headers to include when downloading from source\_url. Use for authentication tokens, signed URLs, or CDN-specific headers.                                                                                                                                                                                                                                                                                                                                                                                    |
| `parent_folder_id`    | string  |          | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ"`       | ID of the parent folder in Google Drive. If not specified, the file will be uploaded to the root of My Drive.                                                                                                                                                                                                                                                                                                                                                                                                               |
| `supports_all_drives` | boolean |          | —                                     | Whether the request supports both My Drives and shared drives. Defaults to true for broader compatibility.                                                                                                                                                                                                                                                                                                                                                                                                                  |

***

### `Googledrive Upload Update File`

Integration name: **GOOGLEDRIVE\_UPLOAD\_UPDATE\_FILE**

Tool to update file content in Google Drive by uploading new binary content. Use when you need to replace the contents of an existing file with new file data.

#### Parameters

| Parameter                   | Type    | Required | Example                               | Description                                                                                                                            |
| --------------------------- | ------- | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `fileId`                    | string  |     ✅    | `"1iau-j_ezb2Vcx1tZDMDdfpqlzxVzlscg"` | The ID of the file to update with new content.                                                                                         |
| `addParents`                | string  |          | `"1A2B3C4D5E6F7G8H9I0J"`              | Comma-separated list of parent folder IDs to add.                                                                                      |
| `uploadType`                | string  |          | `"media"`                             | The type of upload request. 'media' for simple upload (content only), 'multipart' for metadata + content, 'resumable' for large files. |
| `ocrLanguage`               | string  |          | `"en"`                                | Language hint for OCR processing (ISO 639-1 code, e.g., 'en').                                                                         |
| `removeParents`             | string  |          | `"1A2B3C4D5E6F7G8H9I0J"`              | Comma-separated list of parent folder IDs to remove.                                                                                   |
| `file_to_upload`            | object  |     ✅    | —                                     | The file content to upload.                                                                                                            |
| `supportsAllDrives`         | boolean |          | —                                     | Whether the app supports both My Drives and shared drives. Defaults to true.                                                           |
| `keepRevisionForever`       | boolean |          | —                                     | Whether to set the 'keepForever' field in the new head revision.                                                                       |
| `useContentAsIndexableText` | boolean |          | —                                     | Whether to use the uploaded content as indexable text for search.                                                                      |

***

### `Googledrive Watch Changes`

Integration name: **GOOGLEDRIVE\_WATCH\_CHANGES**

Tool to subscribe to changes for a user or shared drive in Google Drive. Use when you need to monitor a Google Drive for modifications and receive notifications at a specified webhook URL. Notifications may be batched rather than per-change; design handlers to be idempotent and fetch all changes since the last known page\_token on each notification.

#### Parameters

| Parameter                       | Type    | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                      |
| ------------------------------- | ------- | :------: | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                            | string  |     ✅    | `"your-unique-channel-id-123"`                 | A unique string that identifies this channel. UUIDs are recommended. Must be unique per active channel; reusing an ID can cause missed, delayed, or duplicate notifications.                                                                                                                                     |
| `type`                          | string  |     ✅    | `"web_hook"`                                   | The type of delivery mechanism for notifications.                                                                                                                                                                                                                                                                |
| `token`                         | string  |          | `"optional-arbitrary-string-for-verification"` | An arbitrary string that will be delivered with each notification. Can be used for verification.                                                                                                                                                                                                                 |
| `params`                        | object  |          | —                                              | Optional parameters for the notification channel. Example: {"ttl": "3600"} for a 1-hour time-to-live (actual support depends on Google API).                                                                                                                                                                     |
| `spaces`                        | string  |          | `"drive"`                                      | A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.                                                                                                                                                                                                  |
| `address`                       | string  |     ✅    | `"https://example.com/notifications"`          | The URL where notifications are to be delivered. Must be a publicly reachable HTTPS URL with a valid SSL certificate; HTTP, localhost, and private network endpoints are rejected by the API.                                                                                                                    |
| `drive_id`                      | string  |          | `"0ABqLz1XZc1Z9Uk9PVA"`                        | The shared drive from which changes will be returned. If specified, change IDs will be specific to the shared drive.                                                                                                                                                                                             |
| `page_size`                     | integer |          | —                                              | The maximum number of changes to return per page.                                                                                                                                                                                                                                                                |
| `expiration`                    | integer |          | `1678886400000`                                | Timestamp in milliseconds since the epoch for when the channel should expire. If not set, channel may not expire or have a default expiration. Channels are invalidated after expiry; re-establish the watch with a new channel before or after expiration to avoid missed changes.                              |
| `page_token`                    | string  |          | —                                              | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response or to the response from the getStartPageToken method. Persist this token per channel so change processing can resume correctly after restarts or interruptions. |
| `include_labels`                | string  |          | `"labelId1,labelId2"`                          | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                                                                                                                                                                                        |
| `include_removed`               | boolean |          | —                                              | Whether to include changes indicating that items have been removed from the list of changes (e.g., by deletion or loss of access).                                                                                                                                                                               |
| `supports_all_drives`           | boolean |          | —                                              | Whether the requesting application supports both My Drives and shared drives. Recommended to set to true if driveId is used or if interactions with shared drives are expected.                                                                                                                                  |
| `restrict_to_my_drive`          | boolean |          | —                                              | Whether to restrict the results to changes inside the My Drive hierarchy. This omits changes to files like those in the Application Data folder or shared files not added to My Drive.                                                                                                                           |
| `include_corpus_removals`       | boolean |          | —                                              | Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes.                                                                                                                                  |
| `include_permissions_for_view`  | string  |          | `"published"`                                  | Specifies which additional view's permissions to include in the response.                                                                                                                                                                                                                                        |
| `include_items_from_all_drives` | boolean |          | —                                              | Whether both My Drive and shared drive items should be included in results.                                                                                                                                                                                                                                      |

***

### `Googledrive Watch File`

Integration name: **GOOGLEDRIVE\_WATCH\_FILE**

Tool to subscribe to push notifications for changes to a specific file. Use when you need to monitor a file for modifications and receive real-time notifications at a webhook URL.

#### Parameters

| Parameter                   | Type    | Required | Example                                          | Description                                                                                                                              |
| --------------------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | string  |     ✅    | `"01234567-89ab-cdef-0123456789ab"`              | A UUID or similar unique string that identifies this notification channel (max 64 characters).                                           |
| `type`                      | string  |     ✅    | `"web_hook"`                                     | The type of delivery mechanism used for this channel.                                                                                    |
| `token`                     | string  |          | `"my-secret-token-12345"`                        | An arbitrary string delivered to the target address with each notification for verification (max 256 characters).                        |
| `fileId`                    | string  |     ✅    | `"1xAHUNyfubIa8K07EVv9_5Hc5EsgdIhUx-QNcrGJ_yQk"` | The ID of the file to watch for changes.                                                                                                 |
| `params`                    | object  |          | `{"ttl":"3600"}`                                 | Additional parameters controlling delivery channel behavior.                                                                             |
| `address`                   | string  |     ✅    | `"https://webhook.site/unique-id-here"`          | The HTTPS address where notifications are delivered for this channel. Must have a valid SSL certificate.                                 |
| `payload`                   | boolean |          | `true`                                           | Whether payload data should be included in notifications.                                                                                |
| `expiration`                | integer |          | `1678886400000`                                  | Date and time of notification channel expiration as Unix timestamp in milliseconds. Default: 3600 seconds, max: 86400 seconds for files. |
| `includeLabels`             | string  |          | —                                                | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                |
| `acknowledgeAbuse`          | boolean |          | —                                                | Whether the user is acknowledging the risk of downloading known malware or other abusive files. Only applicable to file owner/organizer. |
| `supportsAllDrives`         | boolean |          | —                                                | Whether the requesting application supports both My Drives and shared drives.                                                            |
| `supportsTeamDrives`        | boolean |          | —                                                | Deprecated. Use supportsAllDrives instead.                                                                                               |
| `includePermissionsForView` | string  |          | —                                                | Specifies which additional view's permissions to include in the response.                                                                |


# Google Maps

Your Toolhouse AI Worker can connect to Google Maps using 22 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](https://toolhouse.app/auth-connections?authkit_slugs=google_maps).

## Tools (22)

### `Google Maps Autocomplete`

Integration name: **GOOGLE\_MAPS\_AUTOCOMPLETE**

Returns place and query predictions for text input. Use when implementing as-you-type autocomplete functionality for place searches. Returns up to five predictions ordered by relevance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                          | Type    | Required | Example          | Description                                                                                                                           |
| ---------------------------------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `input`                            | string  |     ✅    | `"pizza"`        | Text string to search for place predictions. Can be full words, substrings, place names, addresses, or plus codes. Must be non-empty. |
| `origin`                           | object  |          | —                | Latitude/longitude point for distance calculations.                                                                                   |
| `regionCode`                       | string  |          | `"us"`           | Region code in ccTLD format for formatting responses (e.g., 'us', 'br').                                                              |
| `inputOffset`                      | integer |          | `5`              | Zero-based Unicode character offset of cursor position in the input string.                                                           |
| `languageCode`                     | string  |          | `"en-US"`        | Preferred language for results using IETF BCP-47 language codes (e.g., 'en-US', 'es-ES').                                             |
| `locationBias`                     | object  |          | —                | Area to bias search results toward.                                                                                                   |
| `sessionToken`                     | string  |          | `"session_123"`  | User-generated string grouping calls into sessions for billing purposes.                                                              |
| `includedRegionCodes`              | array   |          | `["US"]`         | Up to 15 two-character country codes (ISO 3166-1 Alpha-2) to restrict results. Query predictions unavailable when this is set.        |
| `locationRestriction`              | object  |          | —                | Area to restrict search results within.                                                                                               |
| `includedPrimaryTypes`             | array   |          | `["restaurant"]` | Restricts results to up to five specified primary types (e.g., 'restaurant', 'cafe').                                                 |
| `includeQueryPredictions`          | boolean |          | —                | Includes query predictions in response for text searches (default: false).                                                            |
| `includePureServiceAreaBusinesses` | boolean |          | —                | Includes businesses without physical locations (default: false).                                                                      |

***

### `Google Maps Compute Route Matrix`

Integration name: **GOOGLE\_MAPS\_COMPUTE\_ROUTE\_MATRIX**

Calculates travel distance and duration matrix between multiple origins and destinations using the modern Routes API; supports OAuth2 authentication and various travel modes. Matrix is capped at 625 elements (e.g., 25×25); chunk larger sets to avoid RESOURCE\_EXHAUSTED errors. Response elements may be returned out of input order — always use originIndex and destinationIndex to map results. Only use elements where condition='ROUTE\_EXISTS'; the matrix may be incomplete.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                       | Description                                                                                                                                                                                                                  |
| ------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `units`             | string |          | `"IMPERIAL"`                                                                                                  | Unit system (e.g., 'METRIC' for kilometers, 'IMPERIAL' for miles) for displaying distances. Note: distanceMeters in responses is always in meters regardless of this setting; units affects only human-readable text output. |
| `origins`           | array  |     ✅    | `[{"address":"1600 Amphitheatre Parkway, Mountain View, CA"},{"latitude":37.403184,"longitude":-122.097371}]` | List of origin locations. Each can be specified as an address or latitude/longitude coordinates.                                                                                                                             |
| `fieldMask`         | string |          | `"originIndex,destinationIndex,duration,distanceMeters"`                                                      | Comma-separated list of response fields to include (e.g., 'originIndex,destinationIndex,duration,distanceMeters'). Use '\*' for all fields.                                                                                  |
| `travelMode`        | string |          | `"DRIVE"`                                                                                                     | Mode of transportation for the route matrix calculation.                                                                                                                                                                     |
| `destinations`      | array  |     ✅    | `[{"address":"85 10th Ave, New York, NY"},{"latitude":37.383047,"longitude":-122.044651}]`                    | List of destination locations. Each can be specified as an address or latitude/longitude coordinates.                                                                                                                        |
| `languageCode`      | string |          | `"en-US"`                                                                                                     | BCP-47 language code (e.g., 'en-US', 'es') for textual information.                                                                                                                                                          |
| `routingPreference` | string |          | `"TRAFFIC_AWARE"`                                                                                             | Specifies factors to consider when calculating the route.                                                                                                                                                                    |

***

### `Google Maps Distance Matrix Api`

Integration name: **GOOGLE\_MAPS\_DISTANCE\_MATRIX\_API**

DEPRECATED: Legacy API that calculates travel distance and time for a matrix of origins and destinations. This API only works with API keys (no OAuth2 support). Use the modern 'Compute Route Matrix' action instead, which supports OAuth2 authentication. Supports different modes of transportation and options like departure/arrival times. Capped at 100 elements per request (elements = origins × destinations count); split large sets into batches.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example              | Description                                                                                                                                                                                 |
| ---------------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`                        | string  |          | `"YOUR_API_KEY"`     | Your application's API key. This key identifies your application for purposes of quota management.                                                                                          |
| `mode`                       | string  |          | `"driving"`          | Specifies the mode of transport to use.                                                                                                                                                     |
| `avoid`                      | string  |          | `"tolls"`            | Indicates that the calculated route should avoid the specified features. Multiple values can be pipe-separated e.g. 'tolls\|highways'.                                                      |
| `units`                      | string  |          | `"imperial"`         | Specifies the unit system to use when displaying results. The default is metric.                                                                                                            |
| `region`                     | string  |          | `"us"`               | The region code, specified as a ccTLD ('top-level domain') two-character value. This helps influence results based on the region.                                                           |
| `origins`                    | string  |     ✅    | \`"Washington, DC    | New York City, NY"\`                                                                                                                                                                        |
| `language`                   | string  |          | `"en-US"`            | The language in which to return results. See the list of supported languages: <https://developers.google.com/maps/faq#languagesupport>                                                      |
| `arrival_time`               | integer |          | `1493890000`         | Specifies the desired time of arrival for transit directions, in seconds since midnight, January 1, 1970 UTC. You can specify either departure\_time or arrival\_time, but not both.        |
| `destinations`               | string  |     ✅    | \`"San Francisco, CA | Victoria, BC"\`                                                                                                                                                                             |
| `transit_mode`               | string  |          | `"bus"`              | Specifies one or more preferred modes of transit. This parameter may only be specified for transit directions. Multiple values can be pipe-separated e.g. 'bus\|train'.                     |
| `traffic_model`              | string  |          | `"best_guess"`       | Specifies the assumptions to use when calculating time in traffic. This parameter is only used if the request includes a departure\_time and mode is 'driving'.                             |
| `departure_time`             | —       |          | `1493879400`         | Specifies the desired time of departure. You can specify the time as an integer in seconds since midnight, January 1, 1970 UTC, or as the string 'now'. Required for duration\_in\_traffic. |
| `transit_routing_preference` | string  |          | `"less_walking"`     | Specifies preferences for transit routes. This parameter may only be specified for transit directions.                                                                                      |

***

### `Google Maps Geocode Address`

Integration name: **GOOGLE\_MAPS\_GEOCODE\_ADDRESS**

DEPRECATED: Legacy API to convert street addresses into geographic coordinates (latitude and longitude). This API works best with API key authentication. For OAuth connections without an API key, you may need to provide the 'key' parameter or use the newer 'Text Search' action instead. Use when you need to geocode an address or location to get its precise latitude/longitude coordinates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------ | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key`        | string |          | `"YOUR_API_KEY"`                                 | Your application's API key. This parameter is required when using API key authentication. If not provided, will attempt to use OAuth authentication (requires X-Goog-User-Project header with project ID).                                                                                                                                                                                       |
| `bounds`     | string |          | \`"34.172684,-118.604794                         | 34.236144,-118.500938"\`                                                                                                                                                                                                                                                                                                                                                                         |
| `region`     | string |          | `"us"`                                           | Region code specified as a ccTLD (country code top-level domain) two-character value. This parameter will only influence, not fully restrict, results from the geocoder.                                                                                                                                                                                                                         |
| `address`    | string |          | `"1600 Amphitheatre Parkway, Mountain View, CA"` | The street address that you want to geocode, in the format used by the national postal service of the country concerned. Additional address elements such as business names and unit, suite or floor numbers should be avoided. Street address elements should be delimited by spaces (shown here as url-escaped to %20). If both address and components are provided, address takes precedence. |
| `language`   | string |          | `"en"`                                           | Language in which to return results. If not supplied, the geocoder attempts to use the preferred language as specified in the Accept-Language header, or the native language of the domain from which the request is sent.                                                                                                                                                                       |
| `components` | string |          | \`"postal\_code:94043                            | country:US"\`                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Google Maps Geocode Address With Query`

Integration name: **GOOGLE\_MAPS\_GEOCODE\_ADDRESS\_WITH\_QUERY**

Tool to map addresses to geographic coordinates with query parameter. Use when you need to convert a textual address into latitude/longitude coordinates using the modern v4beta API. Results may match multiple places — always verify `formattedAddress`, `region`, and `addressComponents` in the response before using returned coordinates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                  |
| --------------- | ------ | :------: | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `region_code`   | string |          | `"US"`                                         | Region code, specified as a ccTLD two-character value (e.g., 'US', 'FR'). This parameter affects results based on applicable law.                                                                                                                                                            |
| `address_query` | string |     ✅    | `"1600 Amphitheatre Parkway Mountain View CA"` | The unstructured address to geocode. This should be a single string containing the full address (e.g., '1600 Amphitheatre Parkway Mountain View CA'). Include city, state/region, and country where possible — incomplete or ambiguous strings may return zero results or incorrect matches. |
| `language_code` | string |          | `"en"`                                         | Language in which the results should be returned (e.g., 'en', 'es', 'fr').                                                                                                                                                                                                                   |

***

### `Google Maps Geocode Destinations`

Integration name: **GOOGLE\_MAPS\_GEOCODE\_DESTINATIONS**

Tool to perform destination lookup and return detailed destination information including primary place, containing places, sub-destinations, landmarks, entrances, and navigation points. Use when you need comprehensive destination data for an address, place ID, or geographic coordinates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                | Description                                                                    |
| --------------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------ |
| `place`         | string |          | `"places/ChIJj61dQgK6j4AR4GeTYWZsKWw"` | Resource name in format 'places/{placeId}' to retrieve destination by Place ID |
| `regionCode`    | string |          | `"US"`                                 | Two-character ccTLD region code for formatting/filtering (e.g., 'US', 'UK')    |
| `travelModes`   | array  |          | `["DRIVE"]`                            | Filter navigation points by travel mode. Supported values: DRIVE, WALK         |
| `addressQuery`  | object |          | —                                      | Address query in unstructured or structured format                             |
| `languageCode`  | string |          | `"en"`                                 | Preferred language code for results (e.g., 'en', 'es', 'fr')                   |
| `locationQuery` | object |          | —                                      | Location query using geographic coordinates                                    |

***

### `Google Maps Geocode Location`

Integration name: **GOOGLE\_MAPS\_GEOCODE\_LOCATION**

Tool to convert geographic coordinates (latitude and longitude) to human-readable addresses using reverse geocoding. Use when you need to find the address or place name for a given set of coordinates. A single coordinate pair may return multiple results; verify formattedAddress, region, and addressComponents before committing to a result.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                         | Description                                                                                     |
| -------------- | ------ | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------- |
| `types`        | array  |          | `["street_address","locality"]` | Set of type tags to restrict results; results without specified types are removed               |
| `latitude`     | number |     ✅    | `37.4224764`                    | Latitude coordinate in degrees, range \[-90.0, +90.0]                                           |
| `longitude`    | number |     ✅    | `-122.0842499`                  | Longitude coordinate in degrees, range \[-180.0, +180.0]                                        |
| `regionCode`   | string |          | `"US"`                          | Region code specified as a ccTLD two-character value, affecting results based on applicable law |
| `languageCode` | string |          | `"en"`                          | Language code in which the results should be returned (BCP-47 format)                           |

***

### `Google Maps Geocode Place`

Integration name: **GOOGLE\_MAPS\_GEOCODE\_PLACE**

Tool to perform geocode lookup using a place identifier to retrieve address and coordinates. Use when you need to get detailed geographic information for a specific Google Place ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                         | Description                                                                                                                                                                                        |
| -------------- | ------ | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `place_id`     | string |     ✅    | `"ChIJj61dQgK6j4AR4GeTYWZsKWw"` | Place identifier to geocode. Must be in the format 'places/{placeId}' or just the place ID (e.g., 'ChIJj61dQgK6j4AR4GeTYWZsKWw'). The unique identifier for a place in the Google Places database. |
| `regionCode`   | string |          | `"US"`                          | Region code specified as a ccTLD two-character value, affecting results based on applicable law and address formatting.                                                                            |
| `languageCode` | string |          | `"en"`                          | Language code in which the results should be returned (BCP-47 format). Defaults to 'en' if not specified.                                                                                          |

***

### `Google Maps Geocoding Api`

Integration name: **GOOGLE\_MAPS\_GEOCODING\_API**

Convert addresses into geographic coordinates (latitude and longitude) and vice versa (reverse geocoding), or get an address for a Place ID. Uses the Geocoding API v4 (v4beta) which supports OAuth2 authentication. Exactly one of `address`, `latlng`, or `place_id` must be provided per request; omitting all three or mixing incompatible combinations yields no useful results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                |
| -------------------- | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key`                | string |          | `"YOUR_API_KEY"`                                 | Your application's API key. If not provided, will be extracted from connection metadata.                                                                                                                                                   |
| `bounds`             | string |          | \`"34.172684,-118.604794                         | 34.236144,-118.500938"\`                                                                                                                                                                                                                   |
| `latlng`             | string |          | `"40.714224,-73.961452"`                         | The latitude and longitude coordinates specifying the location for which you want the closest, human-readable address (e.g., '40.714224,-73.961452'). Provide for reverse geocoding.                                                       |
| `region`             | string |          | `"US"`                                           | The region code, specified as a ccTLD ('top-level domain') two-character value. This parameter will only influence, not fully restrict, results from the geocoder.                                                                         |
| `address`            | string |          | `"1600 Amphitheatre Parkway, Mountain View, CA"` | The street address or plus code that you want to geocode. Provide for geocoding (address to coordinates).                                                                                                                                  |
| `language`           | string |          | `"en"`                                           | The language in which to return results. If language is not supplied, the geocoder attempts to use the preferred language as specified in the Accept-Language header, or the native language of the domain from which the request is sent. |
| `place_id`           | string |          | `"ChIJd8BlQ2BZwokRAFUEcm_qrcA"`                  | The place ID of the place for which you wish to obtain the human-readable address. Provide for place ID geocoding.                                                                                                                         |
| `components`         | string |          | \`"postal\_code:94043                            | country:US"\`                                                                                                                                                                                                                              |
| `result_type`        | string |          | \`"street\_address                               | locality"\`                                                                                                                                                                                                                                |
| `location_type`      | string |          | \`"ROOFTOP                                       | RANGE\_INTERPOLATED"\`                                                                                                                                                                                                                     |
| `extra_computations` | array  |          | `["ADDRESS_DESCRIPTORS"]`                        | Use this parameter to specify additional features in the response. Can select multiple values.                                                                                                                                             |

***

### `Google Maps Geolocate`

Integration name: **GOOGLE\_MAPS\_GEOLOCATE**

Tool to determine location based on cell towers and WiFi access points. Use when you need to find the geographic location of a device using network infrastructure data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                                             | Description                                                                                          |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `carrier`               | string  |          | `"Vodafone"`                                                                                                        | Carrier name.                                                                                        |
| `radioType`             | string  |          | `"lte"`                                                                                                             | Radio type. Defaults to 'gsm'.                                                                       |
| `cellTowers`            | array   |          | `[{"cellId":42017512,"locationAreaCode":31511,"mobileCountryCode":310,"mobileNetworkCode":410}]`                    | Array of cell tower objects.                                                                         |
| `considerIp`            | boolean |          | `true`                                                                                                              | Whether to fall back to IP geolocation if WiFi and cell tower signals are missing. Defaults to true. |
| `wifiAccessPoints`      | array   |          | `[{"macAddress":"00:25:9c:cf:1c:ac","signalStrength":-65},{"macAddress":"00:25:9c:cf:1c:ad","signalStrength":-70}]` | Array of WiFi access point objects (minimum 2 required for success).                                 |
| `homeMobileCountryCode` | integer |          | `310`                                                                                                               | Mobile country code for device's home network. Range: 0-999.                                         |
| `homeMobileNetworkCode` | integer |          | `410`                                                                                                               | MNC for GSM/WCDMA/LTE/NR (0-999); SID for CDMA (0-32767).                                            |

***

### `Google Maps Get2d Tile`

Integration name: **GOOGLE\_MAPS\_GET2D\_TILE**

Tool to retrieve a 2D map tile image at specified coordinates for building custom map visualizations. Use when you need to download individual map tile images for roadmap, satellite, or terrain views. Requires a valid session token from the createSession endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                     | Description                                                                                                                                                                                                     |
| ------------- | ------- | :------: | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `x`           | integer |     ✅    | `0`                         | Tile column coordinate. Valid range: \[0, (2^zoom)-1].                                                                                                                                                          |
| `y`           | integer |     ✅    | `0`                         | Tile row coordinate. Valid range: \[0, (2^(zoom-1))-1]. Valid range: \[0, (2^zoom)-1], same as `x`.                                                                                                             |
| `z`           | integer |     ✅    | `0`                         | Zoom level ranging from 0 (entire world) to 22 (highly detailed).                                                                                                                                               |
| `key`         | string  |          | `"YOUR_API_KEY"`            | Google API key for authentication. If not provided, will be extracted from connection metadata. Required if not using Bearer token authentication.                                                              |
| `session`     | string  |     ✅    | `"your_session_token_here"` | Session token UUID obtained from /v1/createSession endpoint. Valid for approximately two weeks. Required for all 2D tile requests. Reuse across multiple tile requests; each createSession call consumes quota. |
| `orientation` | integer |          | `0`                         | Rotation parameter in degrees counter-clockwise. Valid values: 0, 90, 180, or 270.                                                                                                                              |

***

### `Google Maps Get3d Tiles Root`

Integration name: **GOOGLE\_MAPS\_GET3D\_TILES\_ROOT**

Tool to retrieve the 3D Tiles tileset root configuration for photorealistic 3D map rendering. Use when you need to initialize a 3D renderer with Google's photorealistic tiles following the OGC 3D Tiles specification. The Map Tiles API is billable per request; cache the root response client-side and avoid repeated calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                                                       |
| --------- | ------ | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------- |
| `key`     | string |          | `"YOUR_API_KEY"` | Your Google Maps API key with Map Tiles API enabled. If not provided, will be extracted from connection metadata. |

***

### `Google Maps Get Direction`

Integration name: **GOOGLE\_MAPS\_GET\_DIRECTION**

Fetches detailed directions between an origin and a destination, supporting intermediate waypoints and various travel modes. Automatically uses the modern Routes API with OAuth2 when available, falling back to legacy API with API key if provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                         | Description                                                                                                                                                                                                                |
| ------------- | ------ | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`        | string |          | `"driving"`                     | The mode of transportation for which to calculate directions.                                                                                                                                                              |
| `avoid`       | string |          | `"tolls"`                       | Specifies features to avoid in the generated route. Multiple values can be combined using a pipe delimiter (e.g., 'tolls\|highways'). Valid options include 'tolls', 'highways', and 'ferries'.                            |
| `units`       | string |          | `"metric"`                      | The unit system for displaying distances. Defaults to 'imperial'.                                                                                                                                                          |
| `origin`      | string |     ✅    | `"Disneyland"`                  | The starting point for the directions. This can be a textual address (e.g., '123 Main St, Los Angeles, CA'), a place name (e.g., 'Disneyland'), or latitude/longitude coordinates (e.g., '34.0522,-118.2437').             |
| `language`    | string |          | `"en"`                          | The language code for returning results, e.g., 'en' for English, 'es' for Spanish. Defaults to 'en'.                                                                                                                       |
| `waypoints`   | string |          | \`"Hollywood Bowl               | Getty Center"\`                                                                                                                                                                                                            |
| `destination` | string |     ✅    | `"Universal Studios Hollywood"` | The ending point for the directions. This can be a textual address (e.g., '456 Park Ave, New York, NY'), a place name (e.g., 'Universal Studios Hollywood'), or latitude/longitude coordinates (e.g., '40.7128,-74.0060'). |

***

### `Google Maps Get Place Details`

Integration name: **GOOGLE\_MAPS\_GET\_PLACE\_DETAILS**

Retrieves comprehensive details for a place using its resource name (places/{place\_id} format). Use when you need detailed information about a specific place.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| -------------- | ------ | :------: | ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string |     ✅    | `"places/ChIJj61dQgK6j4AR4GeTYWZsKWw"`                                                         | Google Place ID ONLY - an alphanumeric code (NOT a business name, address, or search query). Accepts 'places/{place\_id}' or just the place\_id. Place IDs typically start with 'ChIJ' followed by alphanumeric characters. To find a place ID from a business name, first use TEXT\_SEARCH or NEARBY\_SEARCH.                                                                                                                                                |
| `fieldMask`    | string |          | `"id,displayName,formattedAddress"`                                                            | Comma-separated list of place fields to return (no spaces allowed). Use '\*' for all fields (not recommended for performance/cost). Common fields: id, displayName, formattedAddress, location, types, rating, photos, reviews, regularOpeningHours, nationalPhoneNumber, internationalPhoneNumber, websiteUri, googleMapsUri. Note: 'emailAddress' and 'phoneNumber' are NOT valid fields - use 'nationalPhoneNumber' or 'internationalPhoneNumber' instead. |
| `regionCode`   | string |          | `"US"`                                                                                         | Unicode country/region code (CLDR format) for region-specific display names. Examples: 'US', 'GB', 'FR', 'JP'. This affects how place names and addresses are formatted.                                                                                                                                                                                                                                                                                      |
| `languageCode` | string |          | `"en"`                                                                                         | Preferred language code for place details (BCP-47 format). Examples: 'en' (English), 'es' (Spanish), 'fr' (French), 'ja' (Japanese). If not specified, defaults to the language of the request location.                                                                                                                                                                                                                                                      |
| `sessionToken` | string |          | `"CjQSMAoSCXKp2I5aRbcdEeKlv62-kRkSFAoSCeMG0J90bdcdEeowxViZXGNIGhQqEgkeNhAlOBZXaRJQ1h-KoiIQAQ"` | URL-safe base64 string (max 36 characters) for Autocomplete session billing. Used to group this request with previous Autocomplete requests for billing purposes.                                                                                                                                                                                                                                                                                             |

***

### `Google Maps Get Route`

Integration name: **GOOGLE\_MAPS\_GET\_ROUTE**

Calculates one or more routes between two specified locations. Uses various travel modes and preferences; addresses must be resolvable by Google Maps. Response `duration` is a string with 's' suffix (e.g., `"4557s"`); parse before displaying.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------------------ | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `units`                        | string  |          | `"IMPERIAL"`                                     | Unit system (e.g., 'METRIC' for kilometers, 'IMPERIAL' for miles) for displaying distances. Note: `routes.distanceMeters` in the response is always in meters regardless of this setting; `units` only affects human-readable distance formatting in other fields.                                                                                                                                                                                                                                                                |
| `fieldMask`                    | string  |          | `"routes.distanceMeters,routes.duration"`        | Comma-separated list of `Route` object fields to include in the response (e.g., 'routes.distanceMeters,routes.duration'). If not specified, a default fieldMask is used based on travelMode: for TRANSIT mode, transit-specific fields (transitDetails, steps, etc.) are included; for other modes, basic route fields (distanceMeters, duration, polyline) are included. Fields not listed are absent from the response; explicitly include all needed fields such as `routes.legs.steps` and `routes.polyline.encodedPolyline`. |
| `travelMode`                   | string  |          | `"DRIVE"`                                        | Mode of transportation for the route.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `languageCode`                 | string  |          | `"en-US"`                                        | BCP-47 language code (e.g., 'en-US', 'es') for textual information like navigation instructions.                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `origin_address`               | string  |     ✅    | `"1600 Amphitheatre Parkway, Mountain View, CA"` | Starting point for the route calculation. Can be an address (e.g., '1600 Amphitheatre Parkway, Mountain View, CA') or coordinates as 'latitude,longitude' (e.g., '48.8566,2.3522').                                                                                                                                                                                                                                                                                                                                               |
| `routingPreference`            | string  |          | `"TRAFFIC_AWARE"`                                | Specifies routing preference: `TRAFFIC_UNAWARE` (fastest, ignores traffic), `TRAFFIC_AWARE` (considers traffic, optimized), `TRAFFIC_AWARE_OPTIMAL` (most accurate traffic-based routing), or `ROUTING_PREFERENCE_UNSPECIFIED` (behavior similar to `TRAFFIC_UNAWARE`). Cannot be set when travelMode is WALK, BICYCLE, or TRANSIT - must be omitted for these modes.                                                                                                                                                             |
| `destination_address`          | string  |     ✅    | `"85 10th Ave, New York, NY"`                    | Destination point for the route calculation. Can be an address (e.g., '85 10th Ave, New York, NY') or coordinates as 'latitude,longitude' (e.g., '40.7484,-73.9967').                                                                                                                                                                                                                                                                                                                                                             |
| `computeAlternativeRoutes`     | boolean |          | —                                                | Computes and returns alternative routes if true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `routeModifiers_avoidTolls`    | boolean |          | —                                                | Attempts to avoid toll roads if true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `routeModifiers_avoidFerries`  | boolean |          | —                                                | Attempts to avoid ferries if true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `routeModifiers_avoidHighways` | boolean |          | —                                                | Attempts to avoid highways if true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Google Maps Lookup Aerial Video`

Integration name: **GOOGLE\_MAPS\_LOOKUP\_AERIAL\_VIDEO**

Tool to look up an aerial view video by address or video ID. Returns video metadata including state and URIs for playback. Use when you need to retrieve a previously rendered aerial video or check the status of a video render request. Note that receiving a video is a billable event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                          | Description                                                                                       |
| --------- | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| `address` | string |          | `"1600 Amphitheatre Parkway, Mountain View, CA"` | A US postal address. Either videoId or address must be provided, but not both.                    |
| `videoId` | string |          | `"ChYKFEhlbGxvIEZyb20gR29vZ2xlIE1hcHMSAggB"`     | An ID returned from videos.renderVideo. Either videoId or address must be provided, but not both. |

***

### `Google Maps Maps Embed Api`

Integration name: **GOOGLE\_MAPS\_MAPS\_EMBED\_API**

Tool to generate an embeddable Google Map URL and HTML iframe code. Use when you need to display a map (place, view, directions, street view, search) on a webpage without JavaScript. Note: This API only works with API keys (no OAuth2 support). It generates embed URLs and does not make direct API calls. Generated embed URLs are publicly accessible; avoid passing sensitive or internal location queries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example        | Description                                                                                                                                |
| ------------------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `mode`              | string |     ✅    | `"place"`      | The mode of the embedded map.                                                                                                              |
| `api_key`           | string |          | `"AIzaSyD..."` | Google Maps API key. Required if not provided via connection metadata. The Maps Embed API only supports API key authentication, not OAuth. |
| `view_params`       | object |          | —              | Parameters for 'view' mode.                                                                                                                |
| `place_params`      | object |          | —              | Parameters for 'place' mode.                                                                                                               |
| `search_params`     | object |          | —              | Parameters for 'search' mode.                                                                                                              |
| `directions_params` | object |          | —              | Parameters for 'directions' mode.                                                                                                          |
| `streetview_params` | object |          | —              | Parameters for 'streetview' mode.                                                                                                          |

***

### `Google Maps Nearby Search`

Integration name: **GOOGLE\_MAPS\_NEARBY\_SEARCH**

Searches for places (e.g., restaurants, parks) within a specified circular area, with options to filter by place types and customize the returned fields and number of results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------- | ------- | :------: | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `radius`         | number  |     ✅    | `1500`                 | Radius of the circular search area in meters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `latitude`       | number  |     ✅    | `-33.8670522`          | Latitude coordinate of the search center in decimal degrees.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `fieldMask`      | string  |          | `"places.displayName"` | Comma-separated list of place fields for the response. Fields are automatically prefixed with 'places.' if missing. Common fields: displayName, formattedAddress, id, types, rating, userRatingCount, location, businessStatus, regularOpeningHours, photos, reviews. Use '\*' for all fields (not recommended for production). Valid field names include: displayName, formattedAddress, shortFormattedAddress, id, types, primaryType, primaryTypeDisplayName, location, viewport, plusCode, rating, userRatingCount, reviews, regularOpeningHours, currentOpeningHours, photos, websiteUri, googleMapsUri, businessStatus, priceLevel, priceRange, addressComponents, utcOffsetMinutes, internationalPhoneNumber, nationalPhoneNumber, editorialSummary, accessibilityOptions, parkingOptions, paymentOptions, delivery, dineIn, takeout, reservable, servesBreakfast, servesLunch, servesDinner, servesBeer, servesWine, allowsDogs, outdoorSeating, liveMusic, goodForChildren, goodForGroups. |
| `longitude`      | number  |     ✅    | `151.1957362`          | Longitude coordinate of the search center in decimal degrees.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `excludedTypes`  | array   |          | `["cafe"]`             | List of place types to exclude from Table A. Results matching any of these types are omitted. Up to 50 types allowed. Must be provided as a list, e.g., \['cafe'] for a single type or \['cafe', 'store'] for multiple types. Must use valid Table A types only.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `includedTypes`  | array   |          | `["restaurant"]`       | List of place types to include from Table A. Results will match at least one of these types. Up to 50 types allowed. Must be provided as a list, e.g., \['restaurant'] for a single type or \['atm', 'bank'] for multiple types. Common types: restaurant, cafe, bank, atm, hospital, pharmacy, school, park, gym, hotel, airport, gas\_station. IMPORTANT: 'food' is NOT a valid type (it's in Table B); use specific types like restaurant, cafe, bakery, fast\_food\_restaurant instead. Note: 'locality' is valid, but 'city', 'town', 'sublocality', 'landmark', and 'point\_of\_interest' are NOT valid for filtering.                                                                                                                                                                                                                                                                                                                                                                        |
| `maxResultCount` | integer |          | `5`                    | Maximum number of search results to return. Valid range: 1-20. The actual count may be lower based on available places.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Google Maps Place Photo`

Integration name: **GOOGLE\_MAPS\_PLACE\_PHOTO**

Retrieves high quality photographic content from the Google Maps Places database. Use when you need to download a place photo using a photo\_reference obtained from Place Details, Nearby Search, or Text Search requests. Images are scaled proportionally to fit within specified dimensions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                               |
| ----------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `maxwidth`        | integer |          | `400`                                                                                                                                                                                    | Maximum desired width of the image in pixels (1-1600). Image will be scaled proportionally. You must specify either maxwidth, maxheight, or both.                                                                                                                                                                                                                         |
| `maxheight`       | integer |          | `400`                                                                                                                                                                                    | Maximum desired height of the image in pixels (1-1600). Image will be scaled proportionally. You must specify either maxwidth, maxheight, or both.                                                                                                                                                                                                                        |
| `photo_reference` | string  |     ✅    | `"ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9eCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"` | A string identifier that uniquely identifies a photo. Can be either: (1) A full photo resource name in format 'places/{place\_id}/photos/{photo}' from the new Places API, or (2) Just the photo reference string from legacy API. Obtained from Place Details, Nearby Search, or Text Search requests. Note: Photo references cannot be cached and may expire over time. |

***

### `Google Maps Render Aerial Video`

Integration name: **GOOGLE\_MAPS\_RENDER\_AERIAL\_VIDEO**

Starts rendering an aerial view video for a US postal address. Returns a video ID that can be used with lookupVideo to retrieve the video once rendering completes. Rendering typically takes up to a few hours.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                | Description                                                                                                               |
| --------- | ------ | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| `address` | string |     ✅    | `"1600 Amphitheatre Parkway, Mountain View, CA 94043"` | US postal address for which to render aerial video. Must be a valid US address with street, city, state, and postal code. |

***

### `Google Maps Text Search`

Integration name: **GOOGLE\_MAPS\_TEXT\_SEARCH**

Searches for places on Google Maps using a textual query (e.g., "restaurants in London", "Eiffel Tower"). Results may include CLOSED\_PERMANENTLY or TEMPORARILY\_CLOSED places — filter by businessStatus=OPERATIONAL. Include city/region and business type in textQuery to avoid empty or irrelevant results. Deduplicate using id or formattedAddress, not name alone. Throttle to \~1 req/s; OVER\_QUERY\_LIMIT (HTTP 429) requires exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fieldMask`      | string  |          | `"displayName,formattedAddress,rating"` | Comma-separated list of place fields to return. Common fields include: displayName, formattedAddress, types, rating, userRatingCount, priceLevel, websiteUri, nationalPhoneNumber, internationalPhoneNumber, regularOpeningHours, location, photos, googleMapsUri, businessStatus, id. The 'places.' prefix is optional and will be added automatically. Use '\*' for all fields (not recommended for performance/cost). Common aliases are supported: 'name'->displayName, 'address'->formattedAddress, 'url'/'website'->websiteUri, 'type'->types, 'phone'->nationalPhoneNumber. Invalid field names (e.g., places.phoneNumber instead of places.nationalPhoneNumber) cause errors. Many fields (rating, websiteUri, regularOpeningHours, nationalPhoneNumber) may be absent even when requested — handle nulls. |
| `textQuery`      | string  |     ✅    | `"restaurants in London"`               | Text query for searching places. Matched against place name, address, and category. Underspecified queries (missing city, region, or business type) yield empty or irrelevant results. Brand-name-only queries return multiple franchise branches — validate formattedAddress against the intended location.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `maxResultCount` | integer |          | `5`                                     | Maximum number of place results to return (must be 1-20). Note: Google prefers `pageSize`, but this action uses `maxResultCount`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |

***

### `Google Maps Tiles Create Session`

Integration name: **GOOGLE\_MAPS\_TILES\_CREATE\_SESSION**

Tool to create a session token required for accessing 2D Tiles and Street View imagery. Use when you need to initialize tile-based map rendering or street view display. The session token is valid for approximately two weeks and must be included in all subsequent tile requests. Each call consumes quota — cache and reuse the returned token across all tile requests within its validity window rather than creating a new session per request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                             | Description                                                                                                                                                                                     |
| ------------- | ------- | :------: | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `scale`       | string  |          | `"scaleFactor1x"`                                                                   | Label scaling factor for high-resolution displays. Valid values: 'scaleFactor1x' (standard), 'scaleFactor2x' (2x resolution), or 'scaleFactor4x' (4x resolution).                               |
| `region`      | string  |     ✅    | `"US"`                                                                              | Two-letter CLDR region code representing the user's location (e.g., 'US', 'GB', 'FR'). This helps Google Maps provide region-specific content.                                                  |
| `styles`      | array   |          | `[{"stylers":[{"color":"#ffffff"}],"elementType":"geometry","featureType":"road"}]` | JSON style objects for customizing map appearance (roadmap only). Allows custom styling of map features like roads, buildings, and landmarks.                                                   |
| `highDpi`     | boolean |          | `true`                                                                              | Enable high-resolution tiles for high DPI displays. Works only with 2x or 4x scale factors. Set to true for sharper images on high-resolution screens.                                          |
| `mapType`     | string  |     ✅    | `"roadmap"`                                                                         | Base map type. Valid values: 'roadmap' for standard road map, 'satellite' for satellite imagery, 'terrain' for terrain maps, or 'streetview' for street view imagery.                           |
| `overlay`     | boolean |          | `true`                                                                              | Render map layers separately (true) or combined into a single image (false). Set to true if you want individual overlay layers.                                                                 |
| `language`    | string  |     ✅    | `"en-US"`                                                                           | IETF language tag specifying the display language for map labels and information (e.g., 'en-US', 'es-ES', 'fr-FR').                                                                             |
| `layerTypes`  | array   |          | `["layerRoadmap"]`                                                                  | Overlay options for the map. Valid values: 'layerRoadmap' (road overlay), 'layerStreetview' (street view overlay), 'layerTraffic' (traffic layer). Note: terrain mapType requires layerRoadmap. |
| `imageFormat` | string  |          | `"jpeg"`                                                                            | Output format for tile images. Valid values: 'jpeg' or 'png'. If omitted, the format will be auto-selected by the API.                                                                          |


# Google Meet

Your Toolhouse AI Worker can connect to Googlemeet using 15 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](https://toolhouse.app/auth-connections?authkit_slugs=googlemeet).

## Tools (15)

### `Googlemeet Create Meet`

Integration name: **GOOGLEMEET\_CREATE\_MEET**

Creates a new Google Meet space with optional configuration. Does not attach to any calendar event — calendar linking requires a separate Calendar tool call. Capture `meetingUri`, `meetingCode`, and `space.name` from the response immediately for downstream lookups. Requires `meetings.space.created` OAuth scope. Returns HTTP 429 under rapid calls; apply exponential backoff. Use when you need a meeting space with specific access controls, moderation, recording, or transcription settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `config`  | object |          | —       | Optional configuration for the meeting space. If not provided, default settings will be used. Key sub-fields: `accessType` and `entryPointAccess` default to permissive values — set explicitly when audience or access level is known, as permissive defaults may conflict with organizational policies. Invalid combinations of these fields or moderation settings may be rejected based on domain/account policies. Recording and transcription features require a Workspace edition that supports cloud recording; personal accounts may not support these options. |

***

### `Googlemeet End Active Conference`

Integration name: **GOOGLEMEET\_END\_ACTIVE\_CONFERENCE**

Ends an active conference in a Google Meet space. REQUIRES 'space\_name' parameter (e.g., 'spaces/jQCFfuBOdN5z' or just 'jQCFfuBOdN5z'). Use when you need to terminate an ongoing conference in a specified space. This operation only succeeds if a conference is actively running in the space. You must always provide the space\_name to identify which space's conference to end. Immediately drops all active participants — obtain explicit user confirmation before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                 | Description                                                                                                                                                                                                                                                                                        |
| ------------ | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `space_name` | string |     ✅    | `"spaces/jQCFfuBOdN5z"` | REQUIRED. Resource name of the space in the format 'spaces/{space}' where {space} is a unique, case-sensitive server-generated ID. Example: 'spaces/jQCFfuBOdN5z'. This can be the full resource name including the 'spaces/' prefix or just the space ID. You must always provide this parameter. |

***

### `Googlemeet Get Conference Record By Name`

Integration name: **GOOGLEMEET\_GET\_CONFERENCE\_RECORD\_BY\_NAME**

Tool to get a specific conference record by its resource name. Use when you have the conference record ID and need to retrieve detailed information about a single meeting instance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                      | Description                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`    | string |     ✅    | `"conferenceRecords/GLkPdCDLsjSXet2-QH9dDxIPOAIIigIgABgECA"` | Required. Resource name of the conference record. Format: 'conferenceRecords/{conference\_record}' where {conference\_record} is a unique ID for each instance of a call within a space. Example: 'conferenceRecords/GLkPdCDLsjSXet2-QH9dDxIPOAIIigIgABgECA' |

***

### `Googlemeet Get Meet`

Integration name: **GOOGLEMEET\_GET\_MEET**

Retrieve details of a Google Meet space using its unique identifier. Newly created spaces may return incomplete data; retry after 1–3 seconds if needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example          | Description                                                                                                                                      |
| ------------ | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `space_name` | string |     ✅    | `"mV63iV9-KxoB"` | The unique identifier (space ID) for the Google Meet space. Provide only the raw space ID without the 'spaces/' prefix. Example: 'mV63iV9-KxoB'. |

***

### `Googlemeet Get Participant Session`

Integration name: **GOOGLEMEET\_GET\_PARTICIPANT\_SESSION**

Retrieves detailed information about a specific participant session from a Google Meet conference record. Returns session details including start time and end time for a single join/leave session. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. PREREQUISITE: You must first obtain the participant session resource name. Use LIST\_PARTICIPANT\_SESSIONS with a conference record ID and participant ID to get available sessions and their resource names. The 'name' parameter is REQUIRED and must be in the format: 'conferenceRecords/{conference\_record}/participants/{participant}/participantSessions/{participant\_session}'

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                            | Description                                                                                                                                                                                                                                                                                      |
| --------- | ------ | :------: | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`    | string |     ✅    | `"conferenceRecords/abc-123-def/participants/xyz-456/participantSessions/pqr-789"` | Required. Full resource name of the participant session to retrieve. Format: 'conferenceRecords/{conference\_record}/participants/{participant}/participantSessions/{participant\_session}'. You can obtain this value from the 'name' field returned by the LIST\_PARTICIPANT\_SESSIONS action. |

***

### `Googlemeet Get Recordings By Conference Record Id`

Integration name: **GOOGLEMEET\_GET\_RECORDINGS\_BY\_CONFERENCE\_RECORD\_ID**

Retrieves recordings from Google Meet for a given conference record ID. Only returns recordings if recording was enabled and permitted by the organizer's domain policies; a valid conference\_record\_id does not guarantee recordings exist. After a meeting ends, recordings may take several minutes to process — an empty result may be temporary, not permanent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example | Description                                  |
| ---------------------- | ------ | :------: | ------- | -------------------------------------------- |
| `conference_record_id` | string |     ✅    | —       | Unique identifier for the conference record. |

***

### `Googlemeet Get Transcript`

Integration name: **GOOGLEMEET\_GET\_TRANSCRIPT**

Retrieves a specific transcript by its resource name. Returns transcript details including state (STARTED, ENDED, FILE\_GENERATED), start/end times, and Google Docs destination. PREREQUISITE: Obtain the transcript resource name first by using GET\_TRANSCRIPTS\_BY\_CONFERENCE\_RECORD\_ID or construct it from known IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                       | Description                                                                                                                                                                                                                                                         |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"conferenceRecords/GLkPdCDLsjSXet2-QH9dDxIPOAIIigIgABgECA/transcripts/0964dbd3-dc84-4515-a227-21e04ae2a4ab"` | Required. Resource name of the transcript. Format: 'conferenceRecords/{conferenceRecord}/transcripts/{transcript}'. You can obtain this from the 'Get Transcripts by Conference Record ID' action or construct it using known conference record and transcript IDs. |

***

### `Googlemeet Get Transcript Entry`

Integration name: **GOOGLEMEET\_GET\_TRANSCRIPT\_ENTRY**

Fetches a single transcript entry by resource name for targeted inspection or incremental processing. Use when you have a specific transcript entry resource name and need to retrieve its details (text, speaker, timestamps, language). PREREQUISITE: Obtain the transcript entry resource name first by using LIST\_TRANSCRIPT\_ENTRIES or construct it from known IDs. The 'name' parameter is REQUIRED and must follow the format: 'conferenceRecords/{conferenceRecordId}/transcripts/{transcriptId}/entries/{entryId}'

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                 | Description                                                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | ----------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"conferenceRecords/abc-123-def/transcripts/xyz-456/entries/entry-789"` | Required. Full resource name of the transcript entry. Format: 'conferenceRecords/{conferenceRecordId}/transcripts/{transcriptId}/entries/{entryId}'. You can obtain this from the LIST\_TRANSCRIPT\_ENTRIES action or construct it using known conference record, transcript, and entry IDs. |

***

### `Googlemeet Get Transcripts By Conference Record Id`

Integration name: **GOOGLEMEET\_GET\_TRANSCRIPTS\_BY\_CONFERENCE\_RECORD\_ID**

Retrieves all transcripts for a specific Google Meet conference using its conference\_record\_id. Transcripts require processing time after a meeting ends — empty results may be transient; retry after a delay before concluding no transcripts exist. Returns results only if transcription was enabled during the meeting and permitted by the organizer's domain policies; an empty list may also indicate transcription was never generated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------- | ------- | :------: | ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_size`            | integer |          | —                                              | Maximum number of transcripts to return. The service might return fewer than this value. If unspecified, at most 10 transcripts are returned. The maximum value is 100; values above 100 are coerced to 100.                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `page_token`           | string  |          | —                                              | Page token returned from a previous list call, used to retrieve the next page of results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `conference_record_id` | string  |     ✅    | `"kRyYx8b7vNDsLpR1tG_cNjFUQBoBRhHIMoGJAJkBCQ"` | Unique identifier of the conference record. This is the ID portion from the conference record resource name (format: 'conferenceRecords/{id}'). You can obtain valid conference record IDs by using the 'List Conference Records' action or from the 'name' field in conference record responses. Example ID: 'kRyYx8b7vNDsLpR1tG\_cNjFUQBoBRhHIMoGJAJkBCQ'. Do NOT pass the full resource name - only the ID portion after 'conferenceRecords/'. A single meeting code can map to multiple conference\_record\_id values across rejoin sessions; verify the correct record using UTC time or metadata from 'List Conference Records' before calling. |

***

### `Googlemeet List Conference Records`

Integration name: **GOOGLEMEET\_LIST\_CONFERENCE\_RECORDS**

Tool to list conference records. Use when you need to retrieve a list of past conferences, optionally filtering them by criteria like meeting code, space name, or time range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`     | string  |          | —       | Optional. User specified filtering condition in EBNF format. Filterable fields: `space.meeting_code`, `space.name`, `start_time`, `end_time`. Examples: `space.name = "spaces/NAME"`, `space.meeting_code = "abc-mnop-xyz"`, `start_time>="2024-01-01T00:00:00.000Z" AND start_time<="2024-01-02T00:00:00.000Z"`, `end_time IS NULL` Time values must be RFC3339 UTC (e.g., `2024-01-01T00:00:00.000Z`); non-UTC timezones or reversed bounds silently omit records. Unsupported fields or malformed expressions silently return empty or over-narrowed results. A single `space.meeting_code` may match multiple records if the code was reused; combine with time filters to isolate the target record. |
| `page_size`  | integer |          | —       | Maximum number of conference records to return. The service might return fewer than this value. If unspecified, at most 25 conference records are returned. The maximum value is 100; values above 100 are coerced to 100.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `page_token` | string  |          | —       | Page token returned from previous List Call. Loop using the returned `page_token` until no token is returned to retrieve the complete result set.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

***

### `Googlemeet List Participants`

Integration name: **GOOGLEMEET\_LIST\_PARTICIPANTS**

Lists the participants in a conference record. By default, ordered by join time descending. Use to retrieve all participants who joined a specific Google Meet conference, with support for filtering active participants (where `latest_end_time IS NULL`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                           | Description                                                                                                                                                                                                               |
| ------------ | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`     | string  |          | `"latest_end_time IS NULL"`       | Optional. User-specified filtering condition in EBNF format. Filterable fields: `earliest_start_time`, `latest_end_time`. Example: `latest_end_time IS NULL` returns active participants in the conference.               |
| `parent`     | string  |     ✅    | `"conferenceRecords/abc-123-def"` | Required. Format: conferenceRecords/{conference\_record}. The conference record ID can be obtained from the LIST\_CONFERENCE\_RECORDS action.                                                                             |
| `page_size`  | integer |          | `100`                             | Optional. Maximum number of participants to return. The service might return fewer than this value. If unspecified, at most 100 participants are returned. The maximum value is 250; values above 250 are coerced to 250. |
| `page_token` | string  |          | `"CiAKGjBpNDBibWxqNGx..."`        | Optional. Page token returned from a previous list call, used to retrieve the next page of results.                                                                                                                       |

***

### `Googlemeet List Participant Sessions`

Integration name: **GOOGLEMEET\_LIST\_PARTICIPANT\_SESSIONS**

Lists all participant sessions for a specific participant in a Google Meet conference. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. Returns session details including start time and end time for each session.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`               | string  |          | `"end_time IS NULL"`       | Optional. User-specified filtering condition in EBNF format. Filterable fields include `start_time` and `end_time`. Time values must use RFC3339 UTC format (e.g., `start_time >= '2024-01-01T00:00:00Z'`). Unsupported field names or malformed expressions may silently narrow or drop results rather than raising errors. Reversed bounds or incorrect timezone conversion will produce empty results. |
| `page_size`            | integer |          | `100`                      | Optional. Maximum number of participant sessions to return. The service might return fewer than this value. If unspecified, at most 100 participant sessions are returned. The maximum value is 250; values above 250 are coerced to 250.                                                                                                                                                                 |
| `page_token`           | string  |          | `"CiAKGjBpNDBibWxqNGx..."` | Optional. Page token returned from a previous list call, used to retrieve the next page of results. Iterate using successive `page_token` values until the response omits `page_token` to avoid silently missing sessions.                                                                                                                                                                                |
| `participant_id`       | string  |     ✅    | `"xyz-456"`                | Required. The unique identifier of the participant within the conference. Example: 'xyz-456'.                                                                                                                                                                                                                                                                                                             |
| `conference_record_id` | string  |     ✅    | `"abc-123-def"`            | Required. The unique identifier of the conference record. Example: 'abc-123-def'.                                                                                                                                                                                                                                                                                                                         |

***

### `Googlemeet List Recordings`

Integration name: **GOOGLEMEET\_LIST\_RECORDINGS**

Tool to list recording resources from a conference record. Use when you need to retrieve recordings from a specific Google Meet conference. Recordings are created when meeting recording is enabled and saved to Google Drive as MP4 files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                      | Description                                                                                                                                                                                                    |
| ------------ | ------- | :------: | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`     | string  |     ✅    | `"conferenceRecords/GLkPdCDLsjSXet2-QH9dDxIPOAIIigIgABgECA"` | Required. The conference record to list recordings for. Format: conferenceRecords/{conference\_record}                                                                                                         |
| `page_size`  | integer |          | —                                                            | Maximum number of recordings to return. The service may return fewer than this value. If unspecified, at most 10 recordings are returned. The maximum value is 100; values above 100 are coerced to 100.       |
| `page_token` | string  |          | —                                                            | Page token returned from a previous list call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to the list call must match the call that provided the page token. |

***

### `Googlemeet List Transcript Entries`

Integration name: **GOOGLEMEET\_LIST\_TRANSCRIPT\_ENTRIES**

Tool to list structured transcript entries (speaker/time/text segments) for a specific Google Meet transcript. Use when you need to access the detailed content of a transcript, including individual spoken segments with timestamps and speaker information. Note: The transcript entries returned by the API might not match the transcription in Google Docs due to interleaved speakers or post-generation modifications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                    | Description                                                                                                                                                                                                     |
| ---------------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_size`            | integer |          | `10`                       | Maximum number of transcript entries to return. The service might return fewer than this value. If unspecified, at most 10 entries are returned. The maximum value is 100; values above 100 are coerced to 100. |
| `page_token`           | string  |          | `"CiAKGjBpNDBibWxqNGx..."` | Page token returned from a previous list call, used to retrieve the next page of results.                                                                                                                       |
| `transcript_id`        | string  |     ✅    | `"xyz-456"`                | The unique identifier of the transcript within the conference record.                                                                                                                                           |
| `conference_record_id` | string  |     ✅    | `"abc-123-def"`            | The unique identifier of the conference record.                                                                                                                                                                 |

***

### `Googlemeet Update Space`

Integration name: **GOOGLEMEET\_UPDATE\_SPACE**

Updates the settings of an existing Google Meet space. Requires organizer/host privileges and the meetings.space.created OAuth scope. REQUIRED PARAMETER: - name: The space identifier (e.g., 'spaces/jQCFfuBOdN5z'). This is always required to identify which space to update. OPTIONAL PARAMETERS: - config: The new configuration settings to apply (accessType, entryPointAccess, moderation, etc.) - updateMask: Specify which fields to update. If omitted, all provided config fields are updated. Example: To change access type, provide name='spaces/abc123' and config={'accessType': 'OPEN'}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------ | ------ | :------: | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`       | string |     ✅    | `"spaces/jQCFfuBOdN5z"` | REQUIRED. The unique identifier of the Google Meet space to update. Format: 'spaces/{space}' where {space} is the space ID.                                                                                                                                                                                                                                                                                                                                                                           |
| `config`     | object |          | —                       | Configuration settings to update for the meeting space. Provide the fields you want to modify (e.g., accessType, entryPointAccess, moderation settings). Some settings (moderation modes, attendanceReportGenerationType, artifact generation) require specific Google Workspace editions and admin policies; unsupported settings may apply silently with no effect. Certain combinations of accessType, entryPointAccess, or moderation values may be rejected based on domain or account policies. |
| `updateMask` | string |          | `"config.accessType"`   | Field mask specifying which fields to update. Comma-separated list of fully qualified field names (e.g., "config.accessType,config.entryPointAccess"). If not provided, only the fields you explicitly set in config will be updated. WARNING: Using "\*" will attempt to update ALL config fields, which may cause errors if required fields like attendanceReportGenerationType are not provided. Recommend specifying only the fields being updated.                                               |


# Google Photos

Your Toolhouse AI Worker can connect to Googlephotos using 14 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](https://toolhouse.app/auth-connections?authkit_slugs=googlephotos).

## Tools

### `Googlephotos Add Enrichment`

**Integration name:** `GOOGLEPHOTOS_ADD_ENRICHMENT`

Adds an enrichment at a specified position in a defined album.

#### Parameters

| Parameter           | Type   | Required | Example                                       | Description                                                                                                                                                                                                                                               |
| ------------------- | ------ | :------: | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `albumId`           | string |     ✅    | `"AGj1epU5H_bR3MWuuGxsVwk0TkwvNhxEGi1"`       | Identifier of the album where the enrichment is to be added                                                                                                                                                                                               |
| `albumPosition`     | object |     ✅    | `{"position":"FIRST_IN_ALBUM"}`               | Position in the album where the enrichment is to be inserted. Required field with valid position types: FIRST\_IN\_ALBUM, LAST\_IN\_ALBUM, AFTER\_MEDIA\_ITEM (requires relativeMediaItemId), AFTER\_ENRICHMENT\_ITEM (requires relativeEnrichmentItemId) |
| `newEnrichmentItem` | object |     ✅    | `{"textEnrichment":{"text":"Trip to Paris"}}` | The enrichment to be added, can be a text, location, or map enrichment                                                                                                                                                                                    |

### `Googlephotos Batch Add Media Items`

**Integration name:** `GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS`

Adds one or more media items to an album in Google Photos.

#### Parameters

| Parameter      | Type   | Required | Example                                                                         | Description                                                                                                   |
| -------------- | ------ | :------: | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `albumId`      | string |     ✅    | `"AGj1epU5H_bR3MWuuGxsVwk0TkwvNhxEGi1"`                                         | Identifier of the Album that the media items are added to. Must be an album created by this application.      |
| `mediaItemIds` | array  |     ✅    | `["AGj1epU7vyyz0T6EMWx9qc9_DmHjS7OTKP1","AGj1epU8vyyz0T6EMWx9qc9_DmHjS7OTKP2"]` | Identifiers of the MediaItems to be added. Maximum 50 items. Media items must be created by this application. |

### `Googlephotos Batch Create Media Items`

**Integration name:** `GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS`

Batch upload and create media items in Google Photos. Supports three input methods:

1. `urls`: Simple list of public URLs (file names extracted automatically)
2. `media_files`: List of objects with url/file, file\_name, and description
3. `files`: List of FileUploadable objects for pre-uploaded files

Media items can optionally be added to an album at a specific position. Maximum 50 items per request.

#### Parameters

| Parameter       | Type   | Required | Example                                                                                                                                 | Description                                                                                                                                                                                |
| --------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `urls`          | array  |          | `["https://example.com/photo1.jpg","https://example.com/photo2.png"]`                                                                   | Simplified input: List of public URLs of media files to upload. File names will be extracted from URLs automatically. Use `media_files` for more control over file names and descriptions. |
| `files`         | array  |          | —                                                                                                                                       | List of files to upload to Google Photos.                                                                                                                                                  |
| `albumId`       | string |          | `"AGj1epU5H_bR3MWuuGxsVwk0TkwvNhxEGi1"`                                                                                                 | Optional identifier of the album where the media items are to be added. If not specified, media items are added to the user's library only.                                                |
| `media_files`   | array  |          | `[{"url":"https://example.com/image1.jpg","file_name":"image1.jpg"},{"url":"https://example.com/image2.png","file_name":"image2.png"}]` | List of media files to upload. Each item can specify either a `url` (public URL) or a `file` (FileUploadable object). Maximum 50 items per request.                                        |
| `albumPosition` | object |          | `{"position":"LAST_IN_ALBUM"}`                                                                                                          | Position in the album to add the media items.                                                                                                                                              |

### `Googlephotos Batch Get Media Items`

**Integration name:** `GOOGLEPHOTOS_BATCH_GET_MEDIA_ITEMS`

Returns the list of media items for the specified media item identifiers.

#### Parameters

| Parameter      | Type  | Required | Example | Description                                                                  |
| -------------- | ----- | :------: | ------- | ---------------------------------------------------------------------------- |
| `mediaItemIds` | array |     ✅    | —       | Identifiers of the media items to be requested. Must not contain duplicates. |

### `Googlephotos Create Album`

**Integration name:** `GOOGLEPHOTOS_CREATE_ALBUM`

Creates a new album in Google Photos.

#### Parameters

| Parameter | Type   | Required | Example | Description                                                               |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------- |
| `title`   | string |     ✅    | —       | Name of the album to be created in Google Photos. Maximum 500 characters. |

### `Googlephotos Get Album`

**Integration name:** `GOOGLEPHOTOS_GET_ALBUM`

Returns the album based on the specified `albumId`.

#### Parameters

| Parameter | Type   | Required | Example | Description                              |
| --------- | ------ | :------: | ------- | ---------------------------------------- |
| `albumId` | string |     ✅    | —       | Identifier of the album to be requested. |

### `Googlephotos Get Media Item Download`

**Integration name:** `GOOGLEPHOTOS_GET_MEDIA_ITEM_DOWNLOAD`

Downloads a media item from Google Photos and returns it as a file.

#### Parameters

| Parameter     | Type   | Required | Example | Description                      |
| ------------- | ------ | :------: | ------- | -------------------------------- |
| `mediaItemId` | string |     ✅    | —       | ID of the media item to download |

### `Googlephotos List Albums`

**Integration name:** `GOOGLEPHOTOS_LIST_ALBUMS`

Lists all albums shown to a user in the Albums tab of Google Photos.

#### Parameters

| Parameter                  | Type    | Required | Example | Description                                                 |
| -------------------------- | ------- | :------: | ------- | ----------------------------------------------------------- |
| `pageSize`                 | integer |          | —       | Maximum number of albums to return. Default 20, maximum 50. |
| `pageToken`                | string  |          | —       | Continuation token for getting the next page of results     |
| `excludeNonAppCreatedData` | boolean |          | —       | If true, excludes media items not created by this app       |

### `Googlephotos List Media Items`

**Integration name:** `GOOGLEPHOTOS_LIST_MEDIA_ITEMS`

Lists media items created by this application from Google Photos.

**Deprecation notice:** As of March 31, 2025, the Google Photos Library API ONLY returns media items that were uploaded/created by your application. This action CANNOT access the user's full photo library.

Use cases this action **supports**:

* Listing photos/videos your app previously uploaded to the user's library
* Managing app-created content in Google Photos

Use cases this action **does not support**:

* Accessing photos taken by the user's camera
* Viewing photos from other apps or web uploads
* Listing the user's entire photo library

For accessing a user's full library, use the Google Photos Picker API instead: <https://developers.google.com/photos/picker>

#### Parameters

| Parameter   | Type    | Required | Example | Description                                                 |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------- |
| `pageSize`  | integer |          | —       | Maximum number of items to return. Default 25, maximum 100. |
| `pageToken` | string  |          | —       | Token for getting the next page of results                  |

### `Googlephotos List Shared Albums`

**Integration name:** `GOOGLEPHOTOS_LIST_SHARED_ALBUMS`

**\[DEPRECATED - sunset March 31, 2025]** Lists all shared albums available in the Sharing tab of the user's Google Photos app. Use when you need to retrieve shared albums that are visible to the user in their Sharing tab.

#### Parameters

| Parameter                  | Type    | Required | Example | Description                                                                                                                                                                           |
| -------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pageSize`                 | integer |          | —       | Maximum number of albums to return. Default 20, maximum 50.                                                                                                                           |
| `pageToken`                | string  |          | —       | Continuation token for getting the next page of results. Use the value returned in nextPageToken from the previous response.                                                          |
| `excludeNonAppCreatedData` | boolean |          | —       | If true, excludes media items not created by this app. Defaults to false (all albums are returned). This field is ignored if the photoslibrary.readonly.appcreateddata scope is used. |

### `Googlephotos Search Media Items`

**Integration name:** `GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS`

Searches for media items in a user's Google Photos library.

#### Parameters

| Parameter   | Type    | Required | Example | Description                                                       |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `albumId`   | string  |          | —       | Album to search within                                            |
| `filters`   | object  |          | —       | Search filters                                                    |
| `orderBy`   | string  |          | —       | Sort order for results, e.g. `'MediaMetadata.creation_time desc'` |
| `pageSize`  | integer |          | —       | Maximum number of items to return. Default 25, maximum 100.       |
| `pageToken` | string  |          | —       | Token for getting the next page                                   |

### `Googlephotos Update Album`

**Integration name:** `GOOGLEPHOTOS_UPDATE_ALBUM`

Updates an album's title or cover photo in Google Photos.

#### Parameters

| Parameter               | Type   | Required | Example | Description                                      |
| ----------------------- | ------ | :------: | ------- | ------------------------------------------------ |
| `title`                 | string |          | —       | New title for the album. Maximum 500 characters. |
| `albumId`               | string |     ✅    | —       | Identifier of the album to update                |
| `coverPhotoMediaItemId` | string |          | —       | ID of the media item to use as album cover photo |

### `Googlephotos Update Media Item`

**Integration name:** `GOOGLEPHOTOS_UPDATE_MEDIA_ITEM`

Updates a media item's description in Google Photos.

#### Parameters

| Parameter     | Type   | Required | Example | Description                                                               |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------- |
| `description` | string |     ✅    | —       | New description for the media item. Must be shorter than 1000 characters. |
| `mediaItemId` | string |     ✅    | —       | Identifier of the media item to update                                    |

### `Googlephotos Upload Media`

**Integration name:** `GOOGLEPHOTOS_UPLOAD_MEDIA`

Upload a media file to Google Photos. Supports images (up to 200MB) and videos (up to 20GB).

#### Parameters

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`            | string |          | —       | Public URL of the media file to upload (must be directly accessible). The action will download the file from this URL and upload it to Google Photos. Alternative to `file_to_upload`. Supported formats: images (JPEG, PNG, GIF, HEIC, etc.) and videos (MP4, MOV, etc.). |
| `file_name`      | string |          | —       | File name for the uploaded media. Required when using `url` parameter. Should include the file extension (e.g., `photo.jpg`, `video.mp4`).                                                                                                                                 |
| `description`    | string |          | —       | Optional description for the media item                                                                                                                                                                                                                                    |
| `file_to_upload` | object |          | —       | The media file to upload to Google Photos.                                                                                                                                                                                                                                 |


# Google Search Console

Your Toolhouse AI Worker can connect to Google Search Console using 9 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](https://toolhouse.app/auth-connections?authkit_slugs=google_search_console).

## Tools (9)

### `Google Search Console Add Site`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_ADD\_SITE**

Adds a site to the set of the user's sites in Google Search Console. This action registers a new property (site) in Google Search Console for the authenticated user. After adding the site, you will need to verify ownership through one of the available verification methods. The site URL must be properly formatted as either a URL-prefix property (with protocol) or a domain property (with sc-domain prefix).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                      | Description                                                                                                                                                                                                                                                                         |
| ---------- | ------ | :------: | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `site_url` | string |     ✅    | `"https://www.example.com/"` | The site URL to add to Google Search Console. For URL-prefix properties, use the full URL with protocol (e.g., '<https://www.example.com/>'). For domain properties, use the sc-domain format (e.g., 'sc-domain:example.com'). The site will need to be verified after being added. |

***

### `Google Search Console Delete Site`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_DELETE\_SITE**

Removes a site from the user's Google Search Console sites. This action permanently removes a site property from the authenticated user's Search Console account. The site URL must be URL-encoded. Use this when you need to unregister a site from tracking in Search Console.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                     | Description                                                                                                                                                                                                                                                                                                            |
| ---------- | ------ | :------: | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `site_url` | string |     ✅    | `"http://www.example.com/"` | The site URL to remove from Google Search Console. For URL-prefix properties, use the full URL with protocol (e.g., '<http://www.example.com/>'). For domain properties, use the sc-domain format (e.g., 'sc-domain:example.com'). The site must be currently registered in Search Console for the authenticated user. |

***

### `Google Search Console Get Site`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_GET\_SITE**

Retrieves information about a specific Search Console site. Use when you need to get site details including permission level for a specific property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                     | Description                                                                                                                                                                          |
| ---------- | ------ | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `site_url` | string |     ✅    | `"http://www.example.com/"` | The URL of the property to retrieve, as defined by Search Console. Examples: <http://www.example.com/> (for a URL-prefix property) or sc-domain:example.com (for a Domain property). |

***

### `Google Search Console Get Sitemap`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_GET\_SITEMAP**

Retrieves sitemap metadata (submitted/indexed counts, errors, warnings, last-submission timestamps) for a specific sitemap in Search Console. Returns metadata only, not raw XML content. Note: numeric fields like `errors`, `warnings`, `submitted`, and `indexed` may be returned as strings; cast to int before comparisons. Values such as `contents.indexed` can lag several days after submission.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                 | Description                                                                                                                                    |
| ---------- | ------ | :------: | --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `feedpath` | string |     ✅    | `"https://www.example.com/sitemap.xml"` | The URL of the sitemap to retrieve. For example: <https://www.example.com/sitemap.xml>                                                         |
| `site_url` | string |     ✅    | `"https://www.example.com/"`            | The site's URL, including protocol. For example: <https://www.example.com/> For domain properties, use `sc-domain:example.com` format instead. |

***

### `Google Search Console Inspect Url`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_INSPECT\_URL**

Inspects a URL for indexing issues and status in Google Search Console. Results may reflect cached data lagging real changes by several days. High-volume use can trigger 429 quota errors; limit to priority URLs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                          | Description                                                                                                                                        |
| ---------------- | ------ | :------: | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `site_url`       | string |     ✅    | `"https://www.example.com/"`     | The URL of the property as defined in Search Console. URL-prefix properties must include a trailing slash. For example: <https://www.example.com/> |
| `language_code`  | string |          | `"en-US"`                        | IETF BCP-47 language code for localizing the inspection results. For example: en-US, es-ES, fr-FR                                                  |
| `inspection_url` | string |     ✅    | `"https://www.example.com/page"` | The fully-qualified URL to inspect. Must be a page under the site specified in site\_url. For example: <https://www.example.com/page>              |

***

### `Google Search Console List Sitemaps`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_LIST\_SITEMAPS**

Lists all sitemaps for a site in Google Search Console. Response fields `errors`, `warnings`, `contents.submitted`, and `contents.indexed` may be returned as strings; cast to integers before numeric operations. Evaluate these fields alongside `isPending` for sitemap health.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                     | Description                                                                                                                                                                                                                                                                                  |
| --------------- | ------ | :------: | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `site_url`      | string |     ✅    | `"https://www.example.com/"`                | The site's URL, including protocol. For example: <https://www.example.com/> Must exactly match the Search Console property string — include trailing slash for URL-prefix properties or use `sc-domain:example.com` format for domain properties. An inexact match silently returns no data. |
| `sitemap_index` | string |          | `"http://www.example.com/sitemapindex.xml"` | A URL of a site's sitemap index file (e.g., <http://www.example.com/sitemapindex.xml>). When specified, lists the sitemaps contained within this sitemap index file instead of all sitemaps for the site.                                                                                    |

***

### `Google Search Console List Sites`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_LIST\_SITES**

Lists all verified sites (properties) owned by the authenticated user in Google Search Console. Response contains a siteEntry array — always iterate it, never assume a single object. Each entry includes permissionLevel, which varies per site; do not assume owner-level access for all returned properties. When calling downstream tools, use the site\_url value exactly as returned, including protocol, subdomain, sc-domain: prefix, and trailing slash — any deviation causes empty results or permission errors. Empty siteEntry may indicate missing OAuth scopes or no verified properties. Newly added properties may not appear immediately due to propagation delay.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Google Search Console Search Analytics Query`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_SEARCH\_ANALYTICS\_QUERY**

Queries Google Search Console for search analytics data including clicks, impressions, CTR, and position metrics. Only returns URLs with at least one impression; missing rows do not confirm non-indexing. Position is an impression-weighted average rank.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------- | ------- | :------: | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `end_date`                | string  |     ✅    | `"2023-12-31"`               | The end date of the date range for the query, in YYYY-MM-DD format.                                                                                                                                                                                                                                                                                                                                                                                  |
| `site_url`                | string  |     ✅    | `"https://www.example.com/"` | The site's URL, including protocol (e.g., <https://www.example.com/>) or a domain property (e.g., sc-domain:example.com). URL-prefix properties specify exact protocol and path, while domain properties aggregate data across all subdomains and protocols.                                                                                                                                                                                         |
| `row_limit`               | integer |          | —                            | The maximum number of rows to return. Must be between 1 and 25,000. Note: The API returns top results sorted by clicks (or date when grouping by date). Must be between 1 and 5000. Use start\_row to paginate; stop when response rows < row\_limit.                                                                                                                                                                                                |
| `start_row`               | integer |          | —                            | The first row to return from the result set. Used for pagination.                                                                                                                                                                                                                                                                                                                                                                                    |
| `data_state`              | string  |          | `"final"`                    | The data state to return.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `dimensions`              | array   |          | `["query","page"]`           | The dimensions to group the data by. Results are sorted by clicks descending, except when grouping by date (sorted by date ascending).                                                                                                                                                                                                                                                                                                               |
| `start_date`              | string  |     ✅    | `"2023-01-01"`               | The start date of the date range for the query, in YYYY-MM-DD format. Data lags 2–3 days (UTC); most recent 1–2 days may be incomplete. Data retention is \~16 months; older ranges return zero rows.                                                                                                                                                                                                                                                |
| `search_type`             | string  |          | `"web"`                      | The search type to filter results by.                                                                                                                                                                                                                                                                                                                                                                                                                |
| `aggregation_type`        | string  |          | `"auto"`                     | How data is aggregated.                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `dimension_filter_groups` | array   |          | —                            | Optional filters to apply to dimensions. Each filter group contains an array of filters with structure: \[{'filters': \[{'dimension': 'country', 'operator': 'equals', 'expression': 'USA'}]}]. Operators: equals, notEquals, contains, notContains, includingRegex, excludingRegex. Invalid dimension names, unsupported operators, or mismatched expressions return zero rows without an error — verify each filter before trusting empty results. |

***

### `Google Search Console Submit Sitemap`

Integration name: **GOOGLE\_SEARCH\_CONSOLE\_SUBMIT\_SITEMAP**

Submits a sitemap to Google Search Console for indexing. This action registers or resubmits a sitemap for a verified property in Google Search Console. The sitemap file must be accessible at the specified URL and properly formatted as XML. Supported sitemap types include standard sitemaps, sitemap index files, RSS feeds, and Atom feeds. The authenticated user must have site owner or full user permissions for the property. After submission, Google will crawl and process the sitemap according to its standard indexing schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                 | Description                                                                                                                                                                                                                                                                                                                                                          |
| ---------- | ------ | :------: | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `feedpath` | string |     ✅    | `"https://www.example.com/sitemap.xml"` | The full URL of the sitemap to submit (e.g., '<https://www.example.com/sitemap.xml>'). Must be accessible and properly formatted as a valid sitemap XML file. Can also be a sitemap index file or RSS/Atom feed URL. Must exactly match the registered sitemap URL including protocol, host, path, and trailing slash; mismatches return notFound or invalid errors. |
| `site_url` | string |     ✅    | `"https://www.example.com/"`            | The site URL as registered in Google Search Console. For URL-prefix properties, use the full URL with protocol (e.g., '<https://www.example.com/>'). For domain properties, use the sc-domain format (e.g., 'sc-domain:example.com'). The site must be verified and owned by the authenticated user.                                                                 |


# Google Sheets

Your Toolhouse AI Worker can connect to Googlesheets using 50 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](https://toolhouse.app/auth-connections?authkit_slugs=googlesheets).

## Tools (50)

### `Googlesheets Add Sheet`

Integration name: **GOOGLESHEETS\_ADD\_SHEET**

Adds a new sheet to a spreadsheet. Supports three sheet types: GRID, OBJECT, and DATA\_SOURCE.

**SHEET TYPES:**

* **GRID** (default): Standard spreadsheet with rows/columns. Use properties to set dimensions, tab color, etc.
* **OBJECT**: Sheet containing a chart. Requires `objectSheetConfig` with `chartSpec` (basicChart or pieChart).
* **DATA\_SOURCE**: Sheet connected to BigQuery. Requires `dataSourceConfig` with bigQuery spec and `bigquery.readonly` OAuth scope.

**OTHER NOTES:**

* Sheet names must be unique; use `forceUnique=true` to auto-append suffix (`_2`, `_3`) if name exists
* For tab colors, use EITHER `rgbColor` OR `themeColor`, not both
* Avoid `index` when creating sheets in parallel (causes errors)
* OBJECT sheets are created via `addChart` with `position.newSheet=true`
* DATA\_SOURCE sheets require `bigquery.readonly` OAuth scope

Use cases: Add standard grid sheet, create chart on dedicated sheet, connect to BigQuery data source.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                              |
| --------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `title`               | string  |          | —                                                | The name for the new sheet tab. Must be unique within the spreadsheet. Example: "Q3 Report", "Sales Data 2025". This is a convenience parameter - alternatively, you can set this via properties.title. Note: sheet\_name is also accepted as an alias for title.                                                        |
| `properties`          | object  |          | —                                                | Advanced sheet properties (grid dimensions, tab color, position, etc.). For simple cases, just use the 'title' parameter directly. Use this for additional customization.                                                                                                                                                |
| `force_unique`        | boolean |          | —                                                | When True (default), automatically ensures the sheet name is unique by appending a numeric suffix (e.g., '\_2', '\_3') if the requested name already exists. This makes the action resilient to retries and parallel workflows. When False, the action fails with an error if a sheet with the same name already exists. |
| `spreadsheet_id`      | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | REQUIRED. Cannot be empty. The ID of the target spreadsheet where the new sheet will be added. This is the long alphanumeric string in the Google Sheet URL (e.g., '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'). Use 'Search Spreadsheets' action to find the spreadsheet ID by name if you don't have it.            |
| `data_source_config`  | object  |          | —                                                | Configuration for creating a DATA\_SOURCE sheet. DATA\_SOURCE sheets connect to external data sources like BigQuery. The API uses addDataSource request which automatically creates the associated sheet. IMPORTANT: Requires additional OAuth scope: bigquery.readonly                                                  |
| `object_sheet_config` | object  |          | —                                                | Configuration for creating an OBJECT sheet (a sheet containing a chart). To create an OBJECT sheet, you must provide chart configuration. The API uses addChart with position.newSheet=true to create the chart on its own sheet.                                                                                        |

***

### `Googlesheets Aggregate Column Data`

Integration name: **GOOGLESHEETS\_AGGREGATE\_COLUMN\_DATA**

Searches for rows where a specific column matches a value and performs mathematical operations on data from another column.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                |
| -------------------- | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operation`          | string  |     ✅    | `"sum"`                                          | The mathematical operation to perform on the target column values.                                                                                                                                                                                                                                                         |
| `sheet_name`         | string  |     ✅    | `"Sheet1"`                                       | The name of the specific sheet within the spreadsheet. Matching is case-insensitive. If no exact match is found, partial matches will be attempted (e.g., 'overview' will match 'Overview 2025').                                                                                                                          |
| `search_value`       | string  |          | `"HSR"`                                          | The exact value to search for in the search column. Case-sensitive by default. If not provided (or if search\_column is not provided), all rows in the target column will be aggregated without filtering.                                                                                                                 |
| `search_column`      | string  |          | `"A"`                                            | The column to search in for filtering rows. Can be a letter (e.g., 'A', 'B') or column name from header row (e.g., 'Region', 'Department'). If not provided, all rows in the target column will be aggregated without filtering.                                                                                           |
| `target_column`      | string  |     ✅    | `"D"`                                            | The column to aggregate data from. Can be a letter (e.g., 'C', 'D') or column name from header row (e.g., 'Sales', 'Revenue').                                                                                                                                                                                             |
| `case_sensitive`     | boolean |          | `true`                                           | Whether the search should be case-sensitive.                                                                                                                                                                                                                                                                               |
| `has_header_row`     | boolean |          | `true`                                           | Whether the first row contains column headers. If True, column names can be used for `search_column` and `target_column`.                                                                                                                                                                                                  |
| `spreadsheet_id`     | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Sheets spreadsheet.                                                                                                                                                                                                                                                                    |
| `percentage_total`   | number  |          | `10000`                                          | For percentage operation, the total value to calculate percentage against. If not provided, uses sum of all values in target column.                                                                                                                                                                                       |
| `additional_filters` | array   |          | —                                                | Extra column=value conditions applied with AND logic on top of `search_column`/`search_value`. Use this to filter on multiple columns simultaneously. Example: `[{"column": "Region", "value": "APAC"}]` combined with `search_column=Product/search_value=Beacon` returns only rows where Product=Beacon AND Region=APAC. |

***

### `Googlesheets Append Dimension`

Integration name: **GOOGLESHEETS\_APPEND\_DIMENSION**

Tool to append new rows or columns to a sheet, increasing its size. Use when you need to add empty rows or columns to an existing sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                  | Description                                                                                                                                                                                                                             |
| --------------------------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `length`                          | integer |     ✅    | `10`                     | The number of rows or columns to append.                                                                                                                                                                                                |
| `sheet_id`                        | integer |     ✅    | `0`                      | The numeric ID of the sheet (not the sheet name). This is a non-negative integer found in the sheet's URL as the `gid` parameter (e.g., gid=0) or in the sheet properties. The first sheet in a spreadsheet typically has `sheet_id=0`. |
| `dimension`                       | string  |     ✅    | `"ROWS"`                 | Specifies whether to append rows or columns.                                                                                                                                                                                            |
| `spreadsheet_id`                  | string  |     ✅    | `"1q2w3e4r5t6y7u8i9o0p"` | The ID of the spreadsheet.                                                                                                                                                                                                              |
| `response_ranges`                 | array   |          | —                        | Limits the ranges of the spreadsheet to include in the response.                                                                                                                                                                        |
| `response_include_grid_data`      | boolean |          | —                        | True if grid data should be included in the response (if `includeSpreadsheetInResponse` is true).                                                                                                                                       |
| `include_spreadsheet_in_response` | boolean |          | —                        | True if the updated spreadsheet should be included in the response.                                                                                                                                                                     |

***

### `Googlesheets Auto Resize Dimensions`

Integration name: **GOOGLESHEETS\_AUTO\_RESIZE\_DIMENSIONS**

Auto-fit column widths or row heights for a dimension range using `batchUpdate.autoResizeDimensions`. Use when you need to automatically adjust row heights or column widths to fit content after writing data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                     |
| ---------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`       | integer |          | `0`                                              | The numeric ID of the sheet to resize. Either `sheet_id` or `sheet_name` must be provided. If both are provided, `sheet_name` takes precedence and will be resolved to `sheet_id`.                                              |
| `dimension`      | string  |     ✅    | `"COLUMNS"`                                      | The dimension to auto-resize. Use `ROWS` to auto-fit row heights or `COLUMNS` to auto-fit column widths.                                                                                                                        |
| `end_index`      | integer |     ✅    | `3`                                              | The zero-based end index of the dimension range to resize (exclusive). Must be greater than `start_index`. For example, to resize columns A-C, use `start_index=0` and `end_index=3`.                                           |
| `sheet_name`     | string  |          | `"Sheet1"`                                       | The name of the sheet to resize. Either `sheet_id` or `sheet_name` must be provided. Using `sheet_name` is recommended as it's more intuitive. If both `sheet_id` and `sheet_name` are provided, `sheet_name` takes precedence. |
| `start_index`    | integer |     ✅    | `0`                                              | The zero-based start index of the dimension range to resize (inclusive). For columns, 0 = column A. For rows, 0 = row 1.                                                                                                        |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet containing the sheet to resize.                                                                                                                                                                       |

***

### `Googlesheets Batch Clear Values By Data Filter`

Integration name: **GOOGLESHEETS\_BATCH\_CLEAR\_VALUES\_BY\_DATA\_FILTER**

Clears one or more ranges of values from a spreadsheet using data filters. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges matching any of the specified data filters will be cleared. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc..) are kept.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                              |
| --------------- | ------ | :------: | ------- | -------------------------------------------------------- |
| `dataFilters`   | array  |     ✅    | —       | The DataFilters used to determine which ranges to clear. |
| `spreadsheetId` | string |     ✅    | —       | The ID of the spreadsheet to update.                     |

***

### `Googlesheets Batch Get`

Integration name: **GOOGLESHEETS\_BATCH\_GET**

Retrieves data from specified cell ranges in a Google Spreadsheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------------ | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `ranges`                 | array   |          | `"Sheet1"`                                       | A list of cell ranges in A1 notation from which to retrieve data. If this list is omitted, empty, or contains only empty strings, all data from the first sheet of the spreadsheet will be fetched. Empty strings in the list are automatically filtered out. Supported formats: (1) Bare sheet name like `Sheet1` to get all data from that sheet, (2) Sheet with range like `Sheet1!A1:B2`, (3) Just cell reference like `A1:B2` (uses first sheet). For sheet names with spaces or special characters, enclose in single quotes (e.g., `"'My Sheet'"` or `"'My Sheet'!A1:B2"`). IMPORTANT: For large sheets, always use bounded ranges with explicit row limits (e.g., `Sheet1!A1:Z10000` instead of `Sheet1!A:Z`). Unbounded column ranges like `A:Z` on sheets with >10,000 rows may cause timeouts or errors. If you need all data from a large sheet, fetch in chunks of 10,000 rows at a time. |
| `majorDimension`         | string  |          | —                                                | The major dimension for organizing data in results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `spreadsheet_id`         | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Spreadsheet from which data will be retrieved. This is the ID found in the spreadsheet URL after `/d/`. You can provide either the spreadsheet ID directly or a full Google Sheets URL (the ID will be extracted automatically).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `valueRenderOption`      | string  |          | —                                                | How values should be rendered in the output. FORMATTED\_VALUE: Values are calculated and formatted (default). UNFORMATTED\_VALUE: Values are calculated but not formatted. FORMULA: Values are not calculated; the formula is returned instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `dateTimeRenderOption`   | string  |          | —                                                | How dates and times should be rendered in the output. SERIAL\_NUMBER: Dates are returned as serial numbers (default). FORMATTED\_STRING: Dates returned as formatted strings.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `empty_strings_filtered` | boolean |          | —                                                | Indicates whether empty strings were filtered from the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Googlesheets Batch Update`

Integration name: **GOOGLESHEETS\_BATCH\_UPDATE**

DEPRECATED: Use `GOOGLESHEETS_VALUES_UPDATE` instead.

Write values to ONE range in a Google Sheet, or append as new rows if no start cell is given.

**IMPORTANT:** This tool does NOT accept the Google Sheets API's native batch format:

* WRONG: `{"data": [{"range": "...", "values": [[...]]}], ...}`
* CORRECT: `{"sheet_name": "...", "values": [[...]], "first_cell_location": "...", ...}`

To update MULTIPLE ranges, make SEPARATE CALLS to this tool for each range.

Features:

* Auto-expands grid for large datasets (prevents range errors)
* Set `first_cell_location` to write at a specific position (e.g., `"A1"`, `"B5"`)
* Omit `first_cell_location` to append values as new rows at the end

Requirements: Target sheet must exist and spreadsheet must contain at least one worksheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                                                                                                                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ---------------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `values`                     | array   |     ✅    | `[["Item","Cost","Stocked","Ship Date"],["Wheel",20.5,true,"2020-06-01"],["Screw",0.5,true,"2020-06-03"],["Nut",0.25,false,"2020-06-02"]]` | A 2D array of cell values where each inner array represents a row. Values can be strings, numbers, booleans, or None/null for empty cells. Ensure columns are properly aligned across rows.                                                                                                                                                                                                                                                                                                                                    |
| `sheet_name`                 | string  |     ✅    | `"Sheet1"`                                                                                                                                 | The name of the specific sheet (tab) within the spreadsheet to update (required, separate from cell reference). Case-insensitive matching is supported (e.g., 'sheet1' will match 'Sheet1'). Note: Default sheet names are locale-dependent (e.g., 'Sheet1' in English, 'Foglio1' in Italian, 'Hoja 1' in Spanish, '시트1' in Korean, 'Feuille 1' in French). If you specify a common default name like 'Sheet1' and it doesn't exist, the action will automatically use the first sheet in the spreadsheet.                     |
| `spreadsheet_id`             | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"`                                                                                           | The unique identifier of the Google Sheets spreadsheet to be updated. Must be an alphanumeric string (with hyphens and underscores allowed) typically 44 characters long. Can be found in the spreadsheet URL between `/d/` and `/edit`. Example: `https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit` has ID `1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms`.                                                                                                                            |
| `value_input_option`         | string  |          | `"USER_ENTERED"`                                                                                                                           | How input data should be interpreted. `USER_ENTERED`: Values are parsed as if typed by a user (e.g., strings may become numbers/dates, formulas are calculated). `RAW`: Values are stored exactly as provided without parsing (e.g., `'123'` stays as string, `' =SUM(A1:B1)'` is not calculated).                                                                                                                                                                                                                             |
| `first_cell_location`        | string  |          | `"A1"`                                                                                                                                     | The starting cell for the update range, specified as a single cell in A1 notation WITHOUT sheet prefix (e.g., `'A1'`, `'B2'`, `'AA931'`). The update will extend from this cell to the right and down based on the provided values. Sheet name must be provided separately in the `sheet_name` field. If omitted or set to null, values are appended as new rows to the sheet. Note: Use only a single cell reference (e.g., `'AA931'`), NOT a range (e.g., `'AA931:AF931'`) or sheet-prefixed notation (e.g., `'Sheet1!A1'`). |
| `include_values_in_response` | boolean |          | `true`                                                                                                                                     | If set to True, the response will include the updated values in the `spreadsheet.responses[].updatedData` field. The updatedData object contains `range` (A1 notation), `majorDimension` (ROWS), and `values` (2D array of the actual cell values after the update).                                                                                                                                                                                                                                                           |

***

### `Googlesheets Batch Update Values By Data Filter`

Integration name: **GOOGLESHEETS\_BATCH\_UPDATE\_VALUES\_BY\_DATA\_FILTER**

Tool to update values in ranges matching data filters. Use when you need to update specific data in a Google Sheet based on criteria rather than fixed cell ranges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                             |
| ------------------------------ | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`                         | array   |     ✅    | —       | The new values to apply to the spreadsheet. If more than one range is matched by the specified DataFilter the specified values are applied to all of those ranges. Can be provided as a JSON string or as a list of DataFilterValueRange objects.                                                                       |
| `spreadsheetId`                | string  |     ✅    | —       | The ID of the spreadsheet to update.                                                                                                                                                                                                                                                                                    |
| `valueInputOption`             | string  |     ✅    | —       | How the input data should be interpreted. `RAW`: Values are stored exactly as entered, without parsing. `USER_ENTERED`: Values are parsed as if typed by a user (numbers stay numbers, strings prefixed with `=` become formulas, etc.). `INPUT_VALUE_OPTION_UNSPECIFIED`: Default input value option is not specified. |
| `includeValuesInResponse`      | boolean |          | —       | Determines if the update response should include the values of the cells that were updated. By default, responses do not include the updated values.                                                                                                                                                                    |
| `responseValueRenderOption`    | string  |          | —       | Determines how values in the response should be rendered. The default render option is `FORMATTED_VALUE`.                                                                                                                                                                                                               |
| `responseDateTimeRenderOption` | string  |          | —       | Determines how dates, times, and durations in the response should be rendered. This is ignored if `responseValueRenderOption` is `FORMATTED_VALUE`. The default dateTime render option is `SERIAL_NUMBER`.                                                                                                              |

***

### `Googlesheets Clear Basic Filter`

Integration name: **GOOGLESHEETS\_CLEAR\_BASIC\_FILTER**

Tool to clear the basic filter from a sheet. Use when you need to remove an existing basic filter from a specific sheet within a Google Spreadsheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example          | Description                                                                                                             |
| --------------------------------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`                        | integer |     ✅    | `0`              | The ID of the sheet on which the basic filter should be cleared.                                                        |
| `spreadsheet_id`                  | string  |     ✅    | `"abc123xyz789"` | The ID of the spreadsheet.                                                                                              |
| `response_ranges`                 | array   |          | —                | Limits the ranges included in the response spreadsheet. Only applicable when `include_spreadsheet_in_response` is true. |
| `response_include_grid_data`      | boolean |          | —                | True if grid data should be returned in the response. Only applicable when `include_spreadsheet_in_response` is true.   |
| `include_spreadsheet_in_response` | boolean |          | —                | Determines if the update response should include the spreadsheet resource.                                              |

***

### `Googlesheets Clear Values`

Integration name: **GOOGLESHEETS\_CLEAR\_VALUES**

Clears cell content (preserving formatting and notes) from a specified A1 notation range in a Google Spreadsheet; the range must correspond to an existing sheet and cells.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                          | Description                                                                                                                                                                                                  |
| ---------------- | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `range`          | string |     ✅    | `"Sheet1!A1:B10"`                                | The A1 notation of the range to clear values from (e.g., `'Sheet1!A1:B2'`, `'MySheet!C:C'`, or `'A1:D5'`). If the sheet name is omitted (e.g., `'A1:B2'`), the operation applies to the first visible sheet. |
| `spreadsheet_id` | string |     ✅    | `"1qZ_g6N0g3Z0s5hJ2xQ8vP9r7T_u6X3iY2o0kE_l5N7M"` | The unique identifier of the Google Spreadsheet from which to clear values. This ID can be found in the URL of the spreadsheet.                                                                              |

***

### `Googlesheets Create Chart`

Integration name: **GOOGLESHEETS\_CREATE\_CHART**

Create a chart in a Google Sheets spreadsheet using the specified data range and chart type.

**Conditional requirements:**

* Provide either a simple chart via `chart_type` + `data_range` (`basicChart`), OR supply a full `chart_spec` supporting all chart types. Exactly one approach should be used.
* When using `chart_spec`, set exactly one of the union fields (`basicChart | pieChart | bubbleChart | candlestickChart | histogramChart | waterfallChart | treemapChart | orgChart | scorecardChart`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                                                                                                                                                                                                                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------ | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `title`            | string  |          | `"Sales Data"`                                                                                                                                                                                                                                                                                                 | Optional title for the chart.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `sheet_id`         | integer |     ✅    | `0`                                                                                                                                                                                                                                                                                                            | The numeric `sheetId` (not the sheet name/title) of the worksheet where the chart will be created. This is a unique integer identifier for the sheet within the spreadsheet. The first/default sheet typically has `sheetId=0`. IMPORTANT: Use 'Get Spreadsheet Info' action to retrieve valid sheetIds - look for `sheets[].properties.sheetId` in the response. The `sheetId` must exist in the target spreadsheet; using an ID from a different spreadsheet will fail.                                                                              |
| `subtitle`         | string  |          | `"Q1 2024"`                                                                                                                                                                                                                                                                                                    | Optional subtitle for the chart.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `chart_spec`       | object  |          | `{"pieChart":{"domain":{"sourceRange":{"sources":[{"sheetId":0,"endRowIndex":5,"startRowIndex":0,"endColumnIndex":1,"startColumnIndex":0}]}},"series":{"sourceRange":{"sources":[{"sheetId":0,"endRowIndex":5,"startRowIndex":0,"endColumnIndex":2,"startColumnIndex":1}]}},"legendPosition":"RIGHT_LEGEND"}}` | Optional full ChartSpec object to send to the Google Sheets API. Use this to support ALL chart types and advanced options. Must set exactly one of: basicChart, pieChart, bubbleChart, candlestickChart, histogramChart, treemapChart, waterfallChart, orgChart, scorecardChart. See <https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/charts#ChartSpec>.                                                                                                                                                             |
| `chart_type`       | string  |     ✅    | `"COLUMN"`                                                                                                                                                                                                                                                                                                     | The type of chart to create. Case-insensitive. Supported types: BAR, LINE, AREA, COLUMN, SCATTER, COMBO, STEPPED\_AREA (basic charts with axes), PIE (pie/donut charts), HISTOGRAM, BUBBLE, CANDLESTICK (requires 4+ data columns for low/open/close/high), TREEMAP, WATERFALL, ORG (organizational charts), SCORECARD. Each chart type uses its appropriate Google Sheets API spec structure. For advanced customization, provide `chart_spec` instead.                                                                                               |
| `data_range`       | string  |     ✅    | `"A1:C10"`                                                                                                                                                                                                                                                                                                     | A single contiguous range of data for the chart in A1 notation (e.g., `'A1:C10'` or `'Sheet1!B2:D20'`). Must be a single continuous range - comma-separated multi-ranges (e.g., `'A1:A10,C1:C10'`) are not supported. When `chart_spec` is not provided, the first column is used as the domain/labels and the remaining columns as series. IMPORTANT: PIE charts require at least 2 columns - the first column for category labels (domain) and the second column for numeric values (series). Single-column ranges are not supported for PIE charts. |
| `x_axis_title`     | string  |          | `"Time Period"`                                                                                                                                                                                                                                                                                                | Optional title for the X-axis.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `y_axis_title`     | string  |          | `"Revenue ($)"`                                                                                                                                                                                                                                                                                                | Optional title for the Y-axis.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `background_red`   | number  |          | `0`                                                                                                                                                                                                                                                                                                            | Red component of chart background color (0.0-1.0). If not specified, uses default.                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `spreadsheet_id`   | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"`                                                                                                                                                                                                                                                               | The unique identifier of the Google Sheets spreadsheet where the chart will be created. Must be the actual spreadsheet ID from the URL (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`), NOT the spreadsheet name or title. Find it in the URL: <https://docs.google.com/spreadsheets/d/SPREADSHEET\\_ID/edit>                                                                                                                                                                                                                                 |
| `background_blue`  | number  |          | `0`                                                                                                                                                                                                                                                                                                            | Blue component of chart background color (0.0-1.0). If not specified, uses default.                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `legend_position`  | string  |          | `"BOTTOM_LEGEND"`                                                                                                                                                                                                                                                                                              | Position of the chart legend. Options: BOTTOM\_LEGEND, TOP\_LEGEND, LEFT\_LEGEND, RIGHT\_LEGEND, NO\_LEGEND.                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `background_green` | number  |          | `0`                                                                                                                                                                                                                                                                                                            | Green component of chart background color (0.0-1.0). If not specified, uses default.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Googlesheets Create Google Sheet1`

Integration name: **GOOGLESHEETS\_CREATE\_GOOGLE\_SHEET1**

Creates a new Google Spreadsheet in Google Drive. If a title is provided, the spreadsheet will be created with that name. If no title is provided, Google will create a spreadsheet with a default name like 'Untitled spreadsheet'.

Optionally create the spreadsheet in a specific folder by providing either:

* `folder_id`: The Google Drive folder ID (preferred, unambiguous)
* `folder_name`: The folder name (searches for exact match; if multiple folders match, returns choices)

If neither `folder_id` nor `folder_name` is provided, the spreadsheet is created in the root Drive folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                  | Description                                                                                                                                                                                                                                                                           |
| ------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string |          | `"Q4 Financial Report"`  | The title for the new Google Sheet. If omitted, Google will create a spreadsheet with a default name like 'Untitled spreadsheet'.                                                                                                                                                     |
| `folder_id`   | string |          | `"1a2b3c4d5e6f7g8h9i0j"` | Google Drive folder ID where the spreadsheet should be created. If provided, the spreadsheet will be moved to this folder after creation. Takes precedence over `folder_name`.                                                                                                        |
| `folder_name` | string |          | `"Marketing Materials"`  | Google Drive folder name where the spreadsheet should be created. If provided and `folder_id` is not provided, the action will search for a folder with this exact name. If multiple folders match, you'll receive a list to choose from. If no folder matches, an error is returned. |

***

### `Googlesheets Create Spreadsheet Column`

Integration name: **GOOGLESHEETS\_CREATE\_SPREADSHEET\_COLUMN**

Creates a new column in a Google Spreadsheet. Specify the target sheet using `sheet_id` (numeric) or `sheet_name` (text). If neither is provided, defaults to the first sheet (`sheet_id=0`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                         | Description                                                                                                                                                                                                                                                                                                       |
| --------------------------------- | ------- | :------: | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`                        | integer |          | `0`                                             | The numeric identifier of the specific sheet (tab) within the spreadsheet. Defaults to 0 (the first sheet) if neither `sheet_id` nor `sheet_name` is provided. Use `GOOGLESHEETS_GET_SHEET_NAMES` or `GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE` to obtain the `sheet_id` from a sheet name.                           |
| `sheet_name`                      | string  |          | `"Sheet1"`                                      | The name (title) of the sheet/tab where the column will be added. If provided, the action will look up the `sheet_id` automatically. If both `sheet_id` and `sheet_name` are provided, `sheet_id` takes precedence.                                                                                               |
| `insert_index`                    | integer |          | `0`                                             | The 0-based index at which the new column will be inserted. For example, an index of 0 inserts the column before the current first column (A), and an index of 1 inserts it between the current columns A and B.                                                                                                  |
| `spreadsheet_id`                  | string  |     ✅    | `"1qZysYd_N2cZ9gkZ8sR7M0rP8sX5vW2bA9gV3rF1cE0"` | The unique identifier of the Google Spreadsheet where the column will be created.                                                                                                                                                                                                                                 |
| `response_ranges`                 | array   |          | `["Sheet1!A1:D10"]`                             | Limits the ranges of the spreadsheet to include in the response. Only used if `includeSpreadsheetInResponse` is true.                                                                                                                                                                                             |
| `inherit_from_before`             | boolean |          | `true`                                          | If true, the new column inherits properties (e.g., formatting, width) from the column immediately to its left (the preceding column). If false (default), it inherits from the column immediately to its right (the succeeding column). This is ignored if there is no respective preceding or succeeding column. |
| `response_include_grid_data`      | boolean |          | `true`                                          | If true, grid data will be included in the response (only used if `includeSpreadsheetInResponse` is true).                                                                                                                                                                                                        |
| `include_spreadsheet_in_response` | boolean |          | `true`                                          | If true, the updated spreadsheet will be included in the response. Defaults to true if not specified.                                                                                                                                                                                                             |

***

### `Googlesheets Create Spreadsheet Row`

Integration name: **GOOGLESHEETS\_CREATE\_SPREADSHEET\_ROW**

Inserts a new, empty row into a specified sheet of a Google Spreadsheet at a given index, optionally inheriting formatting from the row above.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                         | Description                                                                                                                                                                                                                                    |
| --------------------------------- | ------- | :------: | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`                        | integer |          | `0`                                             | The numeric identifier of the sheet (tab) within the spreadsheet where the row will be inserted. This ID (`gid`) is found in the URL of the spreadsheet (e.g., `'0'` for the first sheet). Either `sheet_id` or `sheet_name` must be provided. |
| `sheet_name`                      | string  |          | `"Sheet1"`                                      | The human-readable name of the sheet (tab) within the spreadsheet where the row will be inserted (e.g., `'Sheet1'`). Either `sheet_id` or `sheet_name` must be provided. If both are provided, `sheet_id` takes precedence.                    |
| `insert_index`                    | integer |          | `0`                                             | The 0-based index at which the new row should be inserted. For example, an index of 0 inserts the row at the beginning of the sheet. If the index is greater than the current number of rows, the row is appended.                             |
| `spreadsheet_id`                  | string  |     ✅    | `"1qpyC0XzHc_-_d824s2VfopkHh7D0jW4aXCS1D_AlGA"` | The unique identifier of the Google Spreadsheet. Can be provided as the ID (e.g., `'1qpyC0XzHc_-_d824s2VfopkHh7D0jW4aXCS1D_AlGA'`) or as a full URL (the ID will be extracted automatically).                                                  |
| `response_ranges`                 | array   |          | `["Sheet1!A1:D10"]`                             | Limits the ranges included in the response spreadsheet. Only meaningful when `include_spreadsheet_in_response` is True. Use A1 notation (e.g., `['Sheet1!A1:D10']`).                                                                           |
| `inherit_from_before`             | boolean |          | `true`                                          | If True, the newly inserted row will inherit formatting and properties from the row immediately preceding its insertion point. If False, it will have default formatting.                                                                      |
| `response_include_grid_data`      | boolean |          | `true`                                          | If True, grid data will be included in the response spreadsheet. Only meaningful when `include_spreadsheet_in_response` is True. Default is False.                                                                                             |
| `include_spreadsheet_in_response` | boolean |          | `true`                                          | If True, the response will include the full updated Spreadsheet resource. Default behavior includes the spreadsheet when this parameter is not specified.                                                                                      |

***

### `Googlesheets Delete Chart`

Integration name: **GOOGLESHEETS\_DELETE\_CHART**

Delete an existing chart from a Google Sheets spreadsheet. Use this action when you need to remove a chart that is no longer needed or needs to be replaced. This action is irreversible — once a chart is deleted, it cannot be recovered. The chart data source (the cells containing the data) remains unchanged; only the chart visualization is removed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                |
| ---------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chart_id`       | integer |     ✅    | `707876808`                                      | The unique numeric identifier of the chart to delete (also known as objectId or chartId). This is the chart's ID within the spreadsheet, not the sheet ID. You can retrieve chart IDs using the 'Get Spreadsheet Info' action - look for `sheets[].charts[].chartId` in the response. Each chart has a unique ID that persists until the chart is deleted. |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Sheets spreadsheet containing the chart to delete. Must be the actual spreadsheet ID from the URL (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`), NOT the spreadsheet name or title. Find it in the URL: <https://docs.google.com/spreadsheets/d/SPREADSHEET\\_ID/edit>                                      |

***

### `Googlesheets Delete Dimension`

Integration name: **GOOGLESHEETS\_DELETE\_DIMENSION**

Tool to delete specified rows or columns from a sheet in a Google Spreadsheet. Use when you need to remove a range of rows or columns.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                                                     |
| --------------------------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`                        | integer |          | `0`                             | The unique numeric ID of the sheet (not the index/position). This ID is assigned by Google Sheets and does not change when sheets are reordered. Use `GOOGLESHEETS_GET_SPREADSHEET_INFO` to find the sheet ID, or use `sheet_name` instead. Either `sheet_id` or `sheet_name` must be provided. |
| `dimension`                       | string  |          | `"ROWS"`                        | The dimension to delete (ROWS or COLUMNS).                                                                                                                                                                                                                                                      |
| `end_index`                       | integer |          | `1`                             | The zero-based end index of the range to delete, exclusive. Must be greater than `start_index` and at most equal to the sheet's current row/column count. Note: Cannot delete all rows or columns from a sheet - at least one row and one column must remain.                                   |
| `sheet_name`                      | string  |          | `"Sheet1"`                      | The name/title of the sheet from which to delete the dimension. Using `sheet_name` is recommended as it's more intuitive than `sheet_id`. Either `sheet_id` or `sheet_name` must be provided.                                                                                                   |
| `start_index`                     | integer |          | `0`                             | The zero-based start index of the range to delete, inclusive. Must be less than `end_index` and within the sheet's current row/column count. Note: Cannot delete all rows or columns from a sheet - at least one row and one column must remain.                                                |
| `spreadsheet_id`                  | string  |     ✅    | `"abc123xyz789"`                | The ID of the spreadsheet.                                                                                                                                                                                                                                                                      |
| `response_ranges`                 | array   |          | `["Sheet1!A1:B2","Sheet2!C:C"]` | Limits the ranges of cells included in the response spreadsheet.                                                                                                                                                                                                                                |
| `delete_dimension_request`        | object  |          | —                               | The details for the delete dimension request object.                                                                                                                                                                                                                                            |
| `response_include_grid_data`      | boolean |          | `true`                          | True if grid data should be returned. This parameter is ignored if a field mask was set in the request.                                                                                                                                                                                         |
| `include_spreadsheet_in_response` | boolean |          | `true`                          | Determines if the update response should include the spreadsheet resource.                                                                                                                                                                                                                      |

***

### `Googlesheets Delete Sheet`

Integration name: **GOOGLESHEETS\_DELETE\_SHEET**

Tool to delete a sheet (worksheet) from a spreadsheet. Use when you need to remove a specific sheet from a Google Sheet document.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                             | Description                                                                                                                                                                                                         |
| ------------------------------ | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheetId`                      | integer |     ✅    | `123456789`                         | The ID of the sheet to delete. Note: A spreadsheet must contain at least one sheet, so you cannot delete the last remaining sheet. If the sheet is of DATA\_SOURCE type, the associated DataSource is also deleted. |
| `spreadsheetId`                | string  |     ✅    | `"abc123xyz789"`                    | The ID of the spreadsheet from which to delete the sheet.                                                                                                                                                           |
| `responseRanges`               | array   |          | `["Sheet1!A1:B10","Sheet2!C1:D20"]` | Limits which ranges are returned when `includeSpreadsheetInResponse` is true. Only meaningful if `includeSpreadsheetInResponse` is set to true. Ranges should be in A1 notation (e.g., `'Sheet1!A1:B10'`).          |
| `responseIncludeGridData`      | boolean |          | —                                   | True if grid data should be returned in the response spreadsheet. Only meaningful when `includeSpreadsheetInResponse` is true and no field mask is set on the request.                                              |
| `includeSpreadsheetInResponse` | boolean |          | —                                   | Determines if the spreadsheet resource should be returned in the response. If true, the response includes the updated spreadsheet resource with all its sheets, properties, and metadata.                           |

***

### `Googlesheets Execute Sql`

Integration name: **GOOGLESHEETS\_EXECUTE\_SQL**

DEPRECATED: Use direct Google Sheets actions instead:

* `GOOGLESHEETS_VALUES_GET` / `GOOGLESHEETS_BATCH_GET` for reads
* `GOOGLESHEETS_VALUES_UPDATE` / `GOOGLESHEETS_UPDATE_VALUES_BATCH` / `GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND` for writes

Execute SQL queries against Google Sheets tables. Supports `SELECT`, `INSERT`, `UPDATE`, `DELETE` operations and `WITH` clauses (CTEs) with familiar SQL syntax. Tables are automatically detected and mapped from the spreadsheet structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ---------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sql`            | string  |     ✅    | `"SELECT * FROM \"Sales_Data\" LIMIT 10"`        | Complete SQL query to execute. Must begin with SELECT, INSERT, UPDATE, DELETE, or WITH. Supports Common Table Expressions (CTEs) using WITH clause for complex queries. Note: WITH clauses require the sqlglot library for full support; simple SELECT/INSERT/UPDATE/DELETE operations work without it. Use table names (sheet names) in FROM/INTO clauses, not A1 range notation. The query must include proper SQL clauses (e.g., SELECT columns FROM table, not just a column name or condition). Example: `SELECT * FROM "Sheet1" WHERE A = 'value'` (correct) instead of just `A = 'value'` (incorrect). |
| `dry_run`        | boolean |          | —                                                | Preview changes without applying them (for write operations)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `delete_method`  | string  |          | —                                                | For DELETE operations: `'clear'` preserves row structure, `'remove_rows'` shifts data up                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique alphanumeric ID of the Google Spreadsheet extracted from the URL. Format: A long string of letters, numbers, hyphens, and underscores (typically 44 characters). Find it in the URL: <https://docs.google.com/spreadsheets/d/{SPREADSHEET\\_ID}/edit>. Must be a valid ID - values like `'auto'` are NOT valid and will fail.                                                                                                                                                                                                                                                                      |

***

### `Googlesheets Find Replace`

Integration name: **GOOGLESHEETS\_FIND\_REPLACE**

Tool to find and replace text in a Google Spreadsheet. Use when you need to fix formula errors, update values, or perform bulk text replacements across cells.

Common use cases:

* Fix `#ERROR!` cells by replacing with empty string or correct formula
* Update old values with new ones across multiple cells
* Fix formula references or patterns
* Clean up data formatting issues

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `find`             | string  |     ✅    | `"#ERROR!"`                                      | The text to find. Can be a literal string or a regular expression pattern.                                                                                                                                                                                                                                                                                                                                           |
| `range`            | string  |          | `"A1:B10"`                                       | A1 notation range string to search within (e.g., `'A1:B10'`, `'Sheet1!A1:B10'`). When using A1 notation with a sheet name, you must also provide `range_sheet_id` to specify the numeric sheet ID (the API requires numeric IDs). Alternatively, use the GridRange parameters (`range_sheet_id` with optional row/column indices) for explicit numeric control. Mutually exclusive with `sheet_id` and `all_sheets`. |
| `replace`          | string  |     ✅    | `""`                                             | The text to replace the found instances with.                                                                                                                                                                                                                                                                                                                                                                        |
| `sheetId`          | integer |          | `0`                                              | The numeric ID of the sheet to search the entire sheet (e.g., 0 for the first sheet). Mutually exclusive with `sheet_name`, `range/range_sheet_id` parameters, and `all_sheets`. You must specify exactly one scope: either `sheet_id` (entire sheet), `sheet_name`, `range/range_sheet_id` (specific range), or `all_sheets`.                                                                                       |
| `allSheets`        | boolean |          | `true`                                           | Whether to search across all sheets in the spreadsheet. Mutually exclusive with `sheet_id` and `range` parameters.                                                                                                                                                                                                                                                                                                   |
| `matchCase`        | boolean |          | `true`                                           | Whether the search should be case-sensitive.                                                                                                                                                                                                                                                                                                                                                                         |
| `sheetName`        | string  |          | `"Sheet1"`                                       | The name/title of the sheet (tab) to search within (e.g., `'Sheet1'`, `'Sales Data'`). The sheet name will be resolved to its numeric sheet ID. Mutually exclusive with `sheet_id`, `range/range_sheet_id` parameters, and `all_sheets`.                                                                                                                                                                             |
| `endRowIndex`      | integer |          | `10`                                             | The end row (0-indexed, exclusive) of the range. Only used when `range_sheet_id` is provided without a `range` parameter.                                                                                                                                                                                                                                                                                            |
| `rangeSheetId`     | integer |          | `0`                                              | The numeric sheet ID for a GridRange-based search. Required when using the `range` parameter with A1 notation. Can also be used alone or with row/column index parameters to define a specific range. Mutually exclusive with `sheet_id` and `all_sheets`.                                                                                                                                                           |
| `searchByRegex`    | boolean |          | `true`                                           | Whether to treat the find text as a regular expression.                                                                                                                                                                                                                                                                                                                                                              |
| `spreadsheetId`    | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet to update.                                                                                                                                                                                                                                                                                                                                                                                 |
| `startRowIndex`    | integer |          | `0`                                              | The start row (0-indexed, inclusive) of the range. Only used when `range_sheet_id` is provided without a `range` parameter.                                                                                                                                                                                                                                                                                          |
| `endColumnIndex`   | integer |          | `3`                                              | The end column (0-indexed, exclusive) of the range. Column A = 0, B = 1, etc. Only used when `range_sheet_id` is provided without a `range` parameter.                                                                                                                                                                                                                                                               |
| `includeFormulas`  | boolean |          | `true`                                           | Whether to include cells with formulas in the search. If true, formulas are searched and can be replaced. If false, only cell values (not formulas) are searched. If not specified, the default API behavior applies (both formulas and values are searched).                                                                                                                                                        |
| `matchEntireCell`  | boolean |          | `true`                                           | Whether to match only cells that contain the entire search term.                                                                                                                                                                                                                                                                                                                                                     |
| `startColumnIndex` | integer |          | `0`                                              | The start column (0-indexed, inclusive) of the range. Column A = 0, B = 1, etc. Only used when `range_sheet_id` is provided without a `range` parameter.                                                                                                                                                                                                                                                             |

***

### `Googlesheets Find Worksheet By Title`

Integration name: **GOOGLESHEETS\_FIND\_WORKSHEET\_BY\_TITLE**

DEPRECATED: Use `GetSpreadsheetInfo` instead.

Finds a worksheet by its exact, case-sensitive title within a Google Spreadsheet; returns a boolean indicating if found and the matched worksheet's metadata when found, or None when not found.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                         | Description                                                                                                                                                                                                                                                                                                                                |
| ----------------- | ------ | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `spreadsheet_id`  | string |     ✅    | `"1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789_drivE"` | The unique identifier of the Google Spreadsheet from the URL (e.g., `https://docs.google.com/spreadsheets/d/{spreadsheet_id}/edit`). Important: This is NOT the spreadsheet's display name/title. It is the long alphanumeric string (typically 40-45 characters) from the URL containing only letters, numbers, hyphens, and underscores. |
| `worksheet_title` | string |     ✅    | `"Sheet1"`                                      | The exact, case-sensitive title of the worksheet (tab name) to find.                                                                                                                                                                                                                                                                       |

***

### `Googlesheets Format Cell`

Integration name: **GOOGLESHEETS\_FORMAT\_CELL**

Applies text and background cell formatting to a specified range in a Google Sheets worksheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| -------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `red`                | number  |          | `"0.0"`                                          | Red component of the background color (0.0-1.0).                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `blue`               | number  |          | `"0.0"`                                          | Blue component of the background color (0.0-1.0).                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `bold`               | boolean |          | `"true"`                                         | Apply bold formatting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `green`              | number  |          | `"0.0"`                                          | Green component of the background color (0.0-1.0).                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `range`              | string  |          | `"A1"`                                           | OPTION 1: Cell range in A1 notation (RECOMMENDED). Supports: single cells (`'A1'`, `'F9'`), cell ranges (`'A1:B5'`), entire columns (`'A'`, `'I:J'`), entire rows (`'1'`, `'1:5'`). Also accepts sheet-prefixed ranges (`'Sheet1!A1'`, `'Instagram Calendar!A1:E1'`) for convenience - if provided, the sheet prefix is stripped and ignored. The actual sheet used is determined by the `sheet_name` or `worksheet_id` parameter. Provide EITHER this field OR all four index fields below, not both. |
| `italic`             | boolean |          | `"true"`                                         | Apply italic formatting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `fontSize`           | integer |          | `"10"`                                           | Font size in points.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `underline`          | boolean |          | `"true"`                                         | Apply underline formatting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `sheet_name`         | string  |          | `"Sheet1"`                                       | The worksheet name/title (e.g., `'Sheet1'`, `'Q3 Report'`). Provide either this field OR `worksheet_id`, not both. If both are provided, `sheet_name` takes precedence and will be resolved to `worksheet_id`.                                                                                                                                                                                                                                                                                         |
| `worksheet_id`       | integer |          | `0`                                              | The worksheet identifier. Accepts EITHER: (1) The `sheetId` from the Google Sheets API (a large number like `1534097477`, obtainable via `GOOGLESHEETS_GET_SPREADSHEET_INFO`), OR (2) The 0-based positional index of the worksheet (0 for first sheet, 1 for second, etc.). The action will first try to match by `sheetId`, then fall back to matching by index. Defaults to 0 (first sheet). Provide either this field OR `sheet_name`, not both.                                                   |
| `end_row_index`      | integer |          | `1`                                              | OPTION 2: 0-based index of the row AFTER the last row (exclusive). Required if `range` is not provided. Must provide ALL four index fields together.                                                                                                                                                                                                                                                                                                                                                   |
| `strikethrough`      | boolean |          | `"true"`                                         | Apply strikethrough formatting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `wrap_strategy`      | string  |          | `"WRAP"`                                         | How text wraps within cells.                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `spreadsheet_id`     | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | Identifier of the Google Sheets spreadsheet.                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `start_row_index`    | integer |          | `0`                                              | OPTION 2: 0-based row index (row 1 = index 0, row 9 = index 8). Required if `range` is not provided. Must provide ALL four index fields together.                                                                                                                                                                                                                                                                                                                                                      |
| `end_column_index`   | integer |          | `1`                                              | OPTION 2: 0-based index of the column AFTER the last column (exclusive). Required if `range` is not provided. Must provide ALL four index fields together.                                                                                                                                                                                                                                                                                                                                             |
| `start_column_index` | integer |          | `0`                                              | OPTION 2: 0-based column index (A = 0, B = 1, F = 5). Required if `range` is not provided. Must provide ALL four index fields together.                                                                                                                                                                                                                                                                                                                                                                |

***

### `Googlesheets Get Batch Values`

Integration name: **GOOGLESHEETS\_GET\_BATCH\_VALUES**

DEPRECATED: Use `GOOGLESHEETS_BATCH_GET` instead.

Tool to return one or more ranges of values from a spreadsheet. Use when you need to retrieve data from multiple ranges in a single request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                             |
| ------------------------- | ------ | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ranges`                  | array  |     ✅    | `["Sheet1!A1:B10"]`                              | The A1 notation or R1C1 notation of the ranges to retrieve values from. Specify one or more ranges (e.g., `['Sheet1!A1:B10', 'Sheet2!C1:D5']`). For sheet names with spaces or special characters, wrap in single quotes (e.g., `"'My Sheet'!A1:B10"`). |
| `spreadsheet_id`          | string |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet to retrieve data from. This is the unique identifier found in the spreadsheet URL between `/d/` and `/edit` (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`).                                                         |
| `major_dimension`         | string |          | —                                                | The major dimension for results.                                                                                                                                                                                                                        |
| `value_render_option`     | string |          | —                                                | How values should be rendered in the output.                                                                                                                                                                                                            |
| `date_time_render_option` | string |          | —                                                | How dates, times, and durations should be represented in the output.                                                                                                                                                                                    |

***

### `Googlesheets Get Conditional Format Rules`

Integration name: **GOOGLESHEETS\_GET\_CONDITIONAL\_FORMAT\_RULES**

List conditional formatting rules for each sheet (or a selected sheet) in a normalized, easy-to-edit form. Use when you need to view, audit, or prepare to modify conditional format rules.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                        | Description                                                                                                                                                                                                        |
| --------------------------------- | ------- | :------: | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sheet_id`                        | integer |          | `0`                                            | Optional filter: return rules only for the sheet with this exact numeric `sheetId`. If not provided, returns rules for all sheets. If both `sheet_title` and `sheet_id` are provided, `sheet_id` takes precedence. |
| `sheet_title`                     | string  |          | `"Sheet1"`                                     | Optional filter: return rules only for the sheet with this exact title. If not provided, returns rules for all sheets.                                                                                             |
| `spreadsheet_id`                  | string  |     ✅    | `"12345abcdefGHIJKLMNOPqrstuvwxyz67890UVWXYZ"` | Unique identifier of the Google Spreadsheet, typically found in its URL.                                                                                                                                           |
| `exclude_tables_in_banded_ranges` | boolean |          | —                                              | True if tables should be excluded in the banded ranges. False if not set.                                                                                                                                          |

***

### `Googlesheets Get Data Validation Rules`

Integration name: **GOOGLESHEETS\_GET\_DATA\_VALIDATION\_RULES**

Tool to extract data validation rules from a Google Sheets spreadsheet. Use when you need to understand dropdown lists, allowed values, custom formulas, or other validation constraints for cells.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                 | Description                                                                                                                             |
| --------------- | ------- | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `ranges`        | array   |          | `["A1:A100","B1:B100"]` | Optional list of A1 ranges to scan. If omitted, the entire sheet(s) will be scanned. WARNING: Scanning entire large sheets may be slow. |
| `sheetId`       | integer |          | `0`                     | Optional sheet ID to filter by. If omitted, all sheets will be scanned.                                                                 |
| `sheetTitle`    | string  |          | `"Sheet1"`              | Optional sheet title to filter by. If omitted, all sheets will be scanned.                                                              |
| `includeEmpty`  | boolean |          | —                       | If true, include cells without validation rules in the output. Default is false.                                                        |
| `spreadsheetId` | string  |     ✅    | `"abc123xyz789"`        | The ID of the spreadsheet to request.                                                                                                   |

***

### `Googlesheets Get Sheet Names`

Integration name: **GOOGLESHEETS\_GET\_SHEET\_NAMES**

Lists all worksheet names from a specified Google Spreadsheet (which must exist), useful for discovering sheets before further operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------------- | ------- | :------: | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `exclude_hidden` | boolean |          | —                                              | When True, hidden sheets will be excluded from the results. When False (default), all sheets including hidden ones are returned. Hidden sheets are sheets that have been hidden via the 'Hide sheet' option in Google Sheets UI.                                                                                                                                                                   |
| `spreadsheet_id` | string  |     ✅    | `"1qpyC0XzvTcKT6EISywY_7H7D7No1tpxEXAMPLE_ID"` | The unique identifier of the Google Spreadsheet (alphanumeric string, typically 44 characters). Extract only the ID portion from URLs - do not include leading/trailing slashes, `/edit` suffixes, query parameters, or URL fragments. From `https://docs.google.com/spreadsheets/d/1qpyC0XzvTcKT6EISywY_7H7D7No1tpxEXAMPLE_ID/edit#gid=0`, use only `1qpyC0XzvTcKT6EISywY_7H7D7No1tpxEXAMPLE_ID`. |

***

### `Googlesheets Get Spreadsheet By Data Filter`

Integration name: **GOOGLESHEETS\_GET\_SPREADSHEET\_BY\_DATA\_FILTER**

Returns the spreadsheet at the given ID, filtered by the specified data filters. Use this tool when you need to retrieve specific subsets of data from a Google Sheet based on criteria like A1 notation, developer metadata, or grid ranges. Important: This action is designed for filtered data retrieval. While it accepts empty filters and returns full metadata in that case, `GOOGLESHEETS_GET_SPREADSHEET_INFO` is the recommended action for unfiltered spreadsheet retrieval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example          | Description                                                                                                                                                                                                                                                                                                                                     |
| ----------------------------- | ------- | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dataFilters`                 | array   |          | —                | The DataFilters used to select which ranges to retrieve. Supports A1 notation (e.g., `'Sheet1!A1:B2'`), developer metadata lookup, or grid range filters. If empty or omitted, returns full spreadsheet metadata. Recommended: Use `GOOGLESHEETS_GET_SPREADSHEET_INFO` for unfiltered retrieval as it is the dedicated action for that purpose. |
| `spreadsheetId`               | string  |     ✅    | `"abc123xyz789"` | The ID of the spreadsheet to request.                                                                                                                                                                                                                                                                                                           |
| `includeGridData`             | boolean |          | `true`           | True if grid data should be returned. Ignored if a field mask is set.                                                                                                                                                                                                                                                                           |
| `excludeTablesInBandedRanges` | boolean |          | `false`          | True if tables should be excluded in the banded ranges. False if not set.                                                                                                                                                                                                                                                                       |

***

### `Googlesheets Get Spreadsheet Info`

Integration name: **GOOGLESHEETS\_GET\_SPREADSHEET\_INFO**

Retrieves metadata for a Google Spreadsheet using its ID. By default, returns essential information (ID, title, sheet properties) to avoid payload size issues. Use the `fields` parameter for comprehensive metadata or specific fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------------------- | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`                          | string  |          | `"sheets.properties(sheetId,title)"`             | Optional. Field mask specifying which fields to return. Uses Google's field mask syntax (comma-separated, dot-notation for nested fields). If not specified, a default mask returning common fields (spreadsheet ID, title, sheet properties) is applied to avoid payload size issues. For full metadata, use `*` (not recommended for large spreadsheets). When set, `includeGridData` is ignored. Examples: `'sheets.properties(sheetId,title)'`, `'properties.title,sheets.properties.sheetId'`. |
| `ranges`                          | array   |          | `["Sheet1!A1:D5"]`                               | Optional. The ranges to retrieve from the spreadsheet, specified using A1 notation (e.g., `'Sheet1!A1:D5'`, `'Sheet2!A1:C4'`). Multiple ranges can be requested simultaneously. If not specified, metadata for the entire spreadsheet is returned without grid data.                                                                                                                                                                                                                                |
| `spreadsheet_id`                  | string  |          | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | Required. The Google Sheets spreadsheet ID or full URL. Accepts either the ID alone (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`) or a full Google Sheets URL (e.g., `'https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit'`). The ID will be automatically extracted from URLs. Note: Published/embedded URLs (containing `/d/e/2PACX-...`) are not supported.                                                                                     |
| `include_grid_data`               | boolean |          | `true`                                           | Optional. If true, grid data will be returned. This parameter is ignored if a field mask was set in the request. When false or not specified, only metadata is returned without cell values.                                                                                                                                                                                                                                                                                                        |
| `exclude_tables_in_banded_ranges` | boolean |          | `true`                                           | Optional. If true, tables within banded ranges will be omitted from the response. Default is false when not specified.                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Googlesheets Get Table Schema`

Integration name: **GOOGLESHEETS\_GET\_TABLE\_SCHEMA**

DEPRECATED: Use `GOOGLESHEETS_GET_SHEET_NAMES` and `GOOGLESHEETS_GET_SPREADSHEET_INFO` for sheet structure metadata, and `GOOGLESHEETS_VALUES_GET` for direct range inspection.

This action is used to get the schema of a table in a Google Spreadsheet. Call this action to get the schema of a table in a spreadsheet BEFORE YOU QUERY THE TABLE. Analyze table structure and infer column names, types, and constraints. Uses statistical analysis of sample data to determine the most likely data type for each column. Call this action after calling the LIST\_TABLES action to get the schema of a table in a spreadsheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                          |
| ---------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sheet_name`     | string  |          | —                                                | Sheet/tab name if `table_name` is ambiguous across multiple sheets                                                                                                                                                                                                                   |
| `table_name`     | string  |     ✅    | `"Sales Data"`                                   | Table name from LIST\_TABLES response OR the visible Google Sheets tab name (e.g., `'Sales Data'`, `'Projections'`). Use `'auto'` to analyze the largest/most prominent table.                                                                                                       |
| `sample_size`    | integer |          | —                                                | Number of rows to sample for type inference                                                                                                                                                                                                                                          |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Spreadsheet. Must be a valid Google Sheets ID (typically a 44-character alphanumeric string). Do NOT use `'auto'` - only `table_name` supports auto-detection. You can get this ID from the spreadsheet URL or from SEARCH\_SPREADSHEETS action. |

***

### `Googlesheets Insert Dimension`

Integration name: **GOOGLESHEETS\_INSERT\_DIMENSION**

Tool to insert new rows or columns into a sheet at a specified location. Use when you need to add empty rows or columns within an existing Google Sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                 | Description                                                                                       |
| --------------------------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------- |
| `spreadsheet_id`                  | string  |     ✅    | `"abc123spreadsheetId"` | The ID of the spreadsheet to update.                                                              |
| `response_ranges`                 | array   |          | —                       | Limits the ranges of the spreadsheet to include in the response.                                  |
| `insert_dimension`                | object  |     ✅    | —                       | The details for the insert dimension request.                                                     |
| `response_include_grid_data`      | boolean |          | —                       | True if grid data should be included in the response (if `includeSpreadsheetInResponse` is true). |
| `include_spreadsheet_in_response` | boolean |          | —                       | True if the updated spreadsheet should be included in the response.                               |

***

### `Googlesheets List Tables`

Integration name: **GOOGLESHEETS\_LIST\_TABLES**

DEPRECATED: Use `GOOGLESHEETS_GET_SHEET_NAMES` for tab discovery and `GOOGLESHEETS_GET_SPREADSHEET_INFO` for full sheet metadata.

This action is used to list all tables in a Google Spreadsheet. Call this action to get the list of tables in a spreadsheet. Discover all tables in a Google Spreadsheet by analyzing sheet structure and detecting data patterns. Uses heuristic analysis to find header rows, data boundaries, and table structures.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ---------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `min_rows`       | integer |          | —                                                | Minimum number of data rows to consider a valid table                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `min_columns`    | integer |          | —                                                | Minimum number of columns to consider a valid table                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `min_confidence` | number  |          | —                                                | Minimum confidence score (0.0-1.0) to consider a valid table                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The actual Google Spreadsheet ID (not a placeholder or spreadsheet name). Find it in the spreadsheet URL: <https://docs.google.com/spreadsheets/d/{SPREADSHEET\\_ID}/edit>. It is the alphanumeric string between `/d/` and `/edit` (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`). IMPORTANT: Do NOT pass the spreadsheet name - only pass the alphanumeric ID from the URL. Do NOT pass template placeholders like `'{{spreadsheet_id}}'`, `'<spreadsheet_id>'`, or `'your-spreadsheet-id-here'`. |

***

### `Googlesheets Lookup Spreadsheet Row`

Integration name: **GOOGLESHEETS\_LOOKUP\_SPREADSHEET\_ROW**

Finds the first row in a Google Spreadsheet where a cell's entire content exactly matches the query string, searching within a specified A1 notation range or the first sheet by default.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                              | Description                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------------- | ------- | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `query`                   | string  |     ✅    | `"John"`                             | Exact text value to find; matches the entire content of a cell in a row.                                                                                                                                                                                                                                                                                                                               |
| `range`                   | string  |          | `"Sheet1!A1:D5"`                     | A1 notation range to search within. Supports cell ranges (e.g., `'Sheet1!A1:D5'`), column-only ranges (e.g., `'Sheet1!A:Z'`), and row-only ranges (e.g., `'Sheet1!1:1'`). Defaults to the first sheet if omitted. IMPORTANT: Sheet names with spaces must be single-quoted (e.g., `"'My Sheet'!A1:Z"`). Bare sheet names without ranges (e.g., `'Sheet1'`) are not supported - always specify a range. |
| `case_sensitive`          | boolean |          | —                                    | If True, the query string search is case-sensitive.                                                                                                                                                                                                                                                                                                                                                    |
| `spreadsheet_id`          | string  |     ✅    | `"1BiexwqQYjfC_BXy6zDQYJqb6zxzRyP9"` | Identifier of the Google Spreadsheet to search.                                                                                                                                                                                                                                                                                                                                                        |
| `value_render_option`     | string  |          | —                                    | How cell values are rendered in the returned row data. `unformatted`: raw values without display formatting — dates appear as serial numbers, e.g. `46009.47` (default, keeps consistency with UPSERT). `formatted`: display-formatted values — dates appear as strings, e.g. `'2025-12-18'`. `formula`: raw formulas instead of computed values.                                                      |
| `normalize_whitespace`    | boolean |          | —                                    | If True, strips leading and trailing whitespace from cell values before matching. This helps match cells like `' TOTAL '` or `'TOTAL '` when searching for `'TOTAL'`.                                                                                                                                                                                                                                  |
| `date_time_render_option` | string  |          | —                                    | How dates and times are represented. `FORMATTED_STRING`: human-readable strings (e.g. `'2025-12-18 11:17'`). `SERIAL_NUMBER`: Excel-style serial numbers. Works with all `value_render_option` settings.                                                                                                                                                                                               |

***

### `Googlesheets Mutate Conditional Format Rules`

Integration name: **GOOGLESHEETS\_MUTATE\_CONDITIONAL\_FORMAT\_RULES**

Add, update, delete, or reorder conditional format rules on a Google Sheet. Use when you need to create, modify, or remove conditional formatting without manually building batchUpdate requests. Supports four operations: ADD (create new rule), UPDATE (replace existing rule), DELETE (remove rule), MOVE (reorder rules by changing index).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ---------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rule`           | object  |          | —                                                | Conditional format rule specification.                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `index`          | integer |          | `0`                                              | Zero-based index for the operation. Required for UPDATE, DELETE, MOVE. Optional for ADD (defaults to end of list).                                                                                                                                                                                                                                                                                                                                         |
| `sheet_id`       | integer |     ✅    | `1534097477`                                     | The unique numeric identifier of the sheet/tab to modify (NOT a zero-based index). This is a specific ID assigned by Google Sheets when the sheet is created, not the position of the sheet. You MUST first call `GOOGLESHEETS_GET_SPREADSHEET_INFO` to retrieve the actual `sheetId` values from the `sheets` array in the response. Common mistake: Do not assume `sheet_id=0` exists - while some spreadsheets may have a sheet with ID 0, many do not. |
| `new_index`      | integer |          | `0`                                              | Destination index for MOVE operation. Required when operation is MOVE.                                                                                                                                                                                                                                                                                                                                                                                     |
| `operation`      | string  |     ✅    | `"ADD"`                                          | Operation type: ADD (add new rule), UPDATE (replace rule), DELETE (remove rule), MOVE (change rule order/index).                                                                                                                                                                                                                                                                                                                                           |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet containing the sheet to modify. Found in the Google Sheets URL between `/d/` and `/edit`.                                                                                                                                                                                                                                                                                                                                        |

***

### `Googlesheets Query Table`

Integration name: **GOOGLESHEETS\_QUERY\_TABLE**

DEPRECATED: Use `GOOGLESHEETS_VALUES_GET` / `GOOGLESHEETS_BATCH_GET` for table reads and `GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW` for row lookup/filter workflows.

Execute SQL-like `SELECT` queries against Google Spreadsheet tables. Table names correspond to sheet/tab names visible at the bottom of the spreadsheet. Use `GOOGLESHEETS_LIST_TABLES` first to discover available table names if unknown. Supports `WHERE` conditions, `ORDER BY`, `LIMIT` clauses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------ | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sql`              | string  |     ✅    | `"SELECT * FROM \"Sheet1\" LIMIT 10"`            | SQL SELECT query. The table name is the Google Sheets tab/sheet name (visible at the bottom of the spreadsheet). Use `GOOGLESHEETS_LIST_TABLES` to discover available table names if unknown. Supported: `SELECT cols FROM table WHERE conditions ORDER BY col LIMIT n`. Table names must be quoted with double quotes if they contain spaces or are numeric-only (e.g., `SELECT * FROM "My Sheet"` or `SELECT * FROM "415"`).               |
| `spreadsheet_id`   | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of a native Google Sheets file. Found in the spreadsheet URL after `/d/` (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`). Only native Google Sheets files (MIME type: application/vnd.google-apps.spreadsheet) are supported. Files uploaded to Google Drive that are not native Google Sheets (such as Excel `.xlsx` files, PDFs, or Google Docs) will not work even if they can be viewed in Google Sheets. |
| `include_formulas` | boolean |          | —                                                | Whether to return formula text instead of calculated values for formula columns                                                                                                                                                                                                                                                                                                                                                              |

***

### `Googlesheets Search Developer Metadata`

Integration name: **GOOGLESHEETS\_SEARCH\_DEVELOPER\_METADATA**

Tool to search for developer metadata in a spreadsheet. Use when you need to find specific metadata entries based on filters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                  | Description                                                                                           |
| --------------- | ------ | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------- |
| `dataFilters`   | array  |     ✅    | —                        | The data filters describing the criteria used to determine which DeveloperMetadata entries to return. |
| `spreadsheetId` | string |     ✅    | `"1q2w3e4r5t6y7u8i9o0p"` | The ID of the spreadsheet to retrieve metadata from.                                                  |

***

### `Googlesheets Search Spreadsheets`

Integration name: **GOOGLESHEETS\_SEARCH\_SPREADSHEETS**

Search for Google Spreadsheets using various filters including name, content, date ranges, and more.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`                 | string  |          | `"Budget Report"`        | Search query to filter spreadsheets. Behavior depends on the `search_type` parameter. For advanced searches, use Google Drive query syntax with fields like `name contains`, `fullText contains`, or boolean filters like `sharedWithMe = true`. DO NOT use spreadsheet IDs as search terms. Leave empty to get all spreadsheets.                                                                                                                                                             |
| `order_by`              | string  |          | —                        | Sort order (comma-separated list for multi-field sorting). Valid fields: createdTime, folder, modifiedByMeTime, modifiedTime, name, name\_natural, quotaBytesUsed, recency, sharedWithMeTime, starred, viewedByMeTime. Append `desc` for descending order (default is ascending). Examples: `modifiedTime desc`, `folder,name`, `starred,modifiedTime desc`.                                                                                                                                  |
| `page_token`            | string  |          | —                        | Token for retrieving the next page of results. Use the `next_page_token` value from a previous response to get subsequent pages. Leave empty to get the first page.                                                                                                                                                                                                                                                                                                                           |
| `max_results`           | integer |          | —                        | Maximum number of spreadsheets to return (1-1000). Defaults to 10.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `search_type`           | string  |          | —                        | How to search: `name` searches filenames only (prefix matching from the START of filenames), `content` uses fullText search which searches file content, name, description, and metadata (Google Drive API limitation: cannot search content exclusively without also matching filenames), `both` explicitly searches both name OR content with an OR condition. Note: `name` search only matches from the START of filenames (e.g., `'Budget'` finds `'Budget 2024'` but NOT `'Q1 Budget'`). |
| `starred_only`          | boolean |          | —                        | Whether to return only starred spreadsheets. Defaults to False.                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `created_after`         | string  |          | `"2024-01-01T00:00:00Z"` | Return spreadsheets created after this date. Use RFC 3339 format like `'2024-01-01T00:00:00Z'`.                                                                                                                                                                                                                                                                                                                                                                                               |
| `modified_after`        | string  |          | `"2024-01-01T00:00:00Z"` | Return spreadsheets modified after this date. Use RFC 3339 format like `'2024-01-01T00:00:00Z'`.                                                                                                                                                                                                                                                                                                                                                                                              |
| `shared_with_me`        | boolean |          | —                        | Whether to return only spreadsheets shared with the current user. Defaults to False.                                                                                                                                                                                                                                                                                                                                                                                                          |
| `include_trashed`       | boolean |          | —                        | Whether to include spreadsheets in trash. Defaults to False.                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `include_shared_drives` | boolean |          | —                        | Whether to include spreadsheets from shared drives you have access to. Defaults to True.                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Googlesheets Set Basic Filter`

Integration name: **GOOGLESHEETS\_SET\_BASIC\_FILTER**

Tool to set a basic filter on a sheet in a Google Spreadsheet. Use when you need to filter or sort data within a specific range on a sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                      |
| ------------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `filter`                       | object  |     ✅    | —       | The filter to set.                                                                                                                               |
| `spreadsheetId`                | string  |     ✅    | —       | The ID of the spreadsheet.                                                                                                                       |
| `responseRanges`               | array   |          | —       | Limits the ranges included in the response spreadsheet. Meaningful only if `includeSpreadsheetInResponse` is true.                               |
| `responseIncludeGridData`      | boolean |          | —       | True if grid data should be returned. Meaningful only if `includeSpreadsheetInResponse` is true. Ignored if a field mask was set in the request. |
| `includeSpreadsheetInResponse` | boolean |          | —       | Determines if the updated spreadsheet resource appears in the response. Default is false.                                                        |

***

### `Googlesheets Set Data Validation Rule`

Integration name: **GOOGLESHEETS\_SET\_DATA\_VALIDATION\_RULE**

Tool to set or clear data validation rules (including dropdowns) on a range in Google Sheets. Use when you need to apply dropdown lists, range-based dropdowns, or custom formula validation to cells.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------ | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`                   | string  |     ✅    | `"SET"`                                          | Operation mode: `'SET'` applies a validation rule to the range, `'CLEAR'` removes any existing validation from the range.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `strict`                 | boolean |          | `true`                                           | Whether to reject invalid data (true) or show a warning (false). Default is true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `values`                 | array   |          | `["Option 1","Option 2","Option 3"]`             | List of allowed values for dropdown. Required when validation\_type='ONE\_OF\_LIST'. Each item becomes a dropdown option.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `formula`                | string  |          | `"=A1>10"`                                       | Custom formula for validation. Required when validation\_type='CUSTOM\_FORMULA'. Formula should evaluate to TRUE/FALSE. Example: `=A1>10`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `sheet_id`               | integer |     ✅    | `0`                                              | The unique sheet ID (numeric identifier) where the validation rule will be applied. The first sheet created in a spreadsheet typically has ID 0, while additional sheets get unique IDs (e.g., `1534097477`). If a sheet is deleted, its ID is never reused - so if the original first sheet (ID 0) was deleted, attempting to use 0 will fail. Always verify the actual sheet ID exists using `GOOGLESHEETS_GET_SPREADSHEET_INFO` action (check `sheets[].properties.sheetId` field).                                                                                                                                                                                                                                                                                                                                                                  |
| `end_row_index`          | integer |     ✅    | `1`                                              | Ending row index (0-based, exclusive) for the validation range. To apply to row 1 only, use `start_row_index=0` and `end_row_index=1`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `input_message`          | string  |          | `"Please select a valid option"`                 | Optional message shown to the user when they select the cell. Helpful hint about what values are expected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `show_custom_ui`         | boolean |          | `true`                                           | Whether to show a dropdown UI for list-based validation. Default is true. Set to true for dropdown lists.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `spreadsheet_id`         | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Sheets spreadsheet. Can be found in the spreadsheet URL between `/d/` and `/edit`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `source_range_a1`        | string  |          | `"Sheet1!A1:A10"`                                | Source range in A1 notation for dropdown values. Required when validation\_type='ONE\_OF\_RANGE'. Example: `'Sheet1!A1:A10'` or `'A1:A10'`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `start_row_index`        | integer |     ✅    | `0`                                              | Starting row index (0-based, inclusive) for the validation range. Row 1 is index 0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `validation_type`        | string  |          | `"ONE_OF_LIST"`                                  | Type of validation rule to apply. Required when mode='SET'. Dropdown types: `'ONE_OF_LIST'` (dropdown from list), `'ONE_OF_RANGE'` (dropdown from range). Number validations: `'NUMBER_GREATER'`, `'NUMBER_GREATER_THAN_EQ'`, `'NUMBER_LESS'`, `'NUMBER_LESS_THAN_EQ'`, `'NUMBER_EQ'`, `'NUMBER_NOT_EQ'`, `'NUMBER_BETWEEN'`, `'NUMBER_NOT_BETWEEN'`. Text validations: `'TEXT_CONTAINS'`, `'TEXT_NOT_CONTAINS'`, `'TEXT_EQ'`, `'TEXT_NOT_EQ'`, `'TEXT_IS_EMAIL'`, `'TEXT_IS_URL'` (Note: `TEXT_STARTS_WITH` and `TEXT_ENDS_WITH` are only for conditional formatting, not data validation). Date validations: `'DATE_EQ'`, `'DATE_BEFORE'`, `'DATE_AFTER'`, `'DATE_ON_OR_BEFORE'`, `'DATE_ON_OR_AFTER'`, `'DATE_BETWEEN'`, `'DATE_NOT_BETWEEN'`, `'DATE_NOT_EQ'`, `'DATE_IS_VALID'`. Other: `'BLANK'`, `'NOT_BLANK'`, `'BOOLEAN'`, `'CUSTOM_FORMULA'`. |
| `condition_values`       | array   |          | `["100"]`                                        | Generic list of condition values for validation types that require specific values (e.g., `NUMBER_GREATER` requires one value, `NUMBER_BETWEEN` requires two values, `TEXT_CONTAINS` requires one value). For simple validations like `TEXT_IS_EMAIL`, `BLANK`, `NOT_BLANK`, `BOOLEAN`, `DATE_IS_VALID`, this can be omitted. Each value should be a string that will be parsed by Google Sheets.                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `end_column_index`       | integer |     ✅    | `1`                                              | Ending column index (0-based, exclusive) for the validation range. To apply to column A only, use `start_column_index=0` and `end_column_index=1`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `start_column_index`     | integer |     ✅    | `0`                                              | Starting column index (0-based, inclusive) for the validation range. Column A is index 0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `filtered_rows_included` | boolean |          | `true`                                           | Whether to apply validation to rows hidden by filters. Default is false. Set to true to ensure validation applies to both visible and filtered rows.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Googlesheets Sheet From Json`

Integration name: **GOOGLESHEETS\_SHEET\_FROM\_JSON**

DEPRECATED: Use `GOOGLESHEETS_CREATE_GOOGLE_SHEET1` + `GOOGLESHEETS_UPDATE_VALUES_BATCH` (or `GOOGLESHEETS_VALUES_UPDATE` / `GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND`) instead.

Creates a new Google Spreadsheet and populates its first worksheet from `sheet_json`. When data is provided, the first item's keys establish the headers. An empty list creates an empty worksheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                                                                  | Description                                                                                                                                                                                                                                                                                                     |
| ------------ | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`      | string |     ✅    | `"Q3 Sales Report"`                                                                                                      | The desired title for the new Google Spreadsheet.                                                                                                                                                                                                                                                               |
| `sheet_json` | array  |     ✅    | `"[{\"Name\": \"Alice\", \"Age\": 30, \"City\": \"New York\"}, {\"Name\": \"Bob\", \"Age\": 24, \"City\": \"London\"}]"` | A list of dictionaries representing the rows of the sheet. Each dictionary must have the same set of keys, which will form the header row. Values can be strings, numbers, booleans, or null (represented as empty cells). An empty list `[]` is allowed and will create a spreadsheet with an empty worksheet. |
| `sheet_name` | string |     ✅    | `"Sheet1"`                                                                                                               | The name for the first worksheet within the newly created spreadsheet. This name will appear as a tab at the bottom of the sheet.                                                                                                                                                                               |

***

### `Googlesheets Spreadsheets Sheets Copy To`

Integration name: **GOOGLESHEETS\_SPREADSHEETS\_SHEETS\_COPY\_TO**

Tool to copy a single sheet from a spreadsheet to another spreadsheet. Use when you need to duplicate a sheet into a different spreadsheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example     | Description                                             |
| ---------------------------- | ------- | :------: | ----------- | ------------------------------------------------------- |
| `sheet_id`                   | integer |     ✅    | `0`         | The ID of the sheet to copy.                            |
| `spreadsheet_id`             | string  |     ✅    | `"1qZ_..."` | The ID of the spreadsheet containing the sheet to copy. |
| `destination_spreadsheet_id` | string  |     ✅    | `"2rY_..."` | The ID of the spreadsheet to copy the sheet to.         |

***

### `Googlesheets Spreadsheets Values Append`

Integration name: **GOOGLESHEETS\_SPREADSHEETS\_VALUES\_APPEND**

Tool to append values to a spreadsheet. Use when you need to add new data to the end of an existing table in a Google Sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------------------------ | ------- | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `range`                        | string  |     ✅    | `"Sheet1"`                                       | A1 notation range used to locate a logical table. New rows are appended after the last row of that table within this range. Valid formats: sheet name only (e.g., `'Sheet1'`), column range (e.g., `'Sheet1!A:D'`), or cell range (e.g., `'Sheet1!A1:D100'`). Sheet names with spaces need single quotes (auto-added). The sheet name must exist in the spreadsheet; a non-existent sheet will cause an `'Unable to parse range'` error. IMPORTANT: The append may land in different columns than specified due to API table detection. For strict column placement, use `GOOGLESHEETS_SPREADSHEETS_VALUES_UPDATE` instead. Always check `updates.updatedRange` in the response to verify where data was actually written. |
| `values`                       | array   |     ✅    | `[["A1_val1","A1_val2"],["A2_val1","A2_val2"]]`  | 2D array of values to append. Typically, each inner list is a ROW (`majorDimension=ROWS`). Use null/None for empty cells.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `spreadsheetId`                | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The spreadsheet ID (typically 44 characters containing letters, numbers, hyphens, and underscores). Found in the URL between `/d/` and `/edit`. NOT the sheet name (tab name) - that belongs in the `range` parameter.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `majorDimension`               | string  |          | `"ROWS"`                                         | How to interpret the 2D values array. Use ROWS for row-wise data (most common for appends). Use COLUMNS for column-wise data. Example: if A1=1,B1=2,A2=3,B2=4 then `majorDimension=ROWS` yields `[[1,2],[3,4]]` and `majorDimension=COLUMNS` yields `[[1,3],[2,4]]`.                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `insertDataOption`             | string  |          | `"INSERT_ROWS"`                                  | How the input data should be inserted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `valueInputOption`             | string  |     ✅    | `"USER_ENTERED"`                                 | How the input data should be interpreted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `includeValuesInResponse`      | boolean |          | `true`                                           | Determines if the update response should include the values of the cells that were appended. By default, responses do not include the updated values.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `responseValueRenderOption`    | string  |          | `"FORMATTED_VALUE"`                              | Determines how values in the response should be rendered. The default render option is FORMATTED\_VALUE.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `responseDateTimeRenderOption` | string  |          | `"SERIAL_NUMBER"`                                | Determines how dates, times, and durations in the response should be rendered. This is ignored if `responseValueRenderOption` is FORMATTED\_VALUE. The default dateTime render option is SERIAL\_NUMBER.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Googlesheets Spreadsheets Values Batch Clear`

Integration name: **GOOGLESHEETS\_SPREADSHEETS\_VALUES\_BATCH\_CLEAR**

Tool to clear one or more ranges of values from a spreadsheet. Use when you need to remove data from specific cells or ranges while keeping formatting and other properties intact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                           | Description                                                                                                                                                                                                                                                                          |
| ---------------- | ------ | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `ranges`         | array  |     ✅    | `["Sheet1!A1:B2","Sheet1!C3:D4"]` | The ranges to clear, in A1 notation (e.g., `'Sheet1!A1:B2'`) or R1C1 notation. Each range should be a clean string without surrounding brackets or extra quotes. Valid examples: `'Sheet1!A1:B2'`, `'A1:Z100'`, `'Sheet1'`. Invalid examples: `"['Sheet1!A1:B2']"`, `'[Sheet1!A1]'`. |
| `spreadsheet_id` | string |     ✅    | `"1q2w3e4r5t6y7u8i9o0p"`          | The ID of the spreadsheet to update. Can be either a spreadsheet ID or a full Google Sheets URL (the ID will be extracted automatically).                                                                                                                                            |

***

### `Googlesheets Spreadsheets Values Batch Get By Data Filter`

Integration name: **GOOGLESHEETS\_SPREADSHEETS\_VALUES\_BATCH\_GET\_BY\_DATA\_FILTER**

Tool to return one or more ranges of values from a spreadsheet that match the specified data filters. Use when you need to retrieve specific data sets based on filtering criteria rather than entire sheets or fixed ranges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                              |
| ---------------------- | ------ | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dataFilters`          | array  |     ✅    | `[{"a1Range":"Sheet1!A1:B5"}]`                   | Required. An array of data filter objects used to match ranges of values to retrieve. Each filter can specify either `a1Range` (e.g., `'Sheet1!A1:B5'`) or `gridRange`. Must be provided as a list, e.g., `[{'a1Range': 'Sheet1!A1:B5'}]`. A single filter object will be automatically wrapped in a list.                                               |
| `spreadsheetId`        | string |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet to retrieve data from. This is the unique identifier found in the spreadsheet URL (e.g., in `'https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit'`, the ID is the SPREADSHEET\_ID part). Typical Google Sheets IDs are approximately 44 characters long and contain alphanumeric characters, hyphens, and underscores. |
| `majorDimension`       | string |          | —                                                | The major dimension that results should use. For example, if the spreadsheet data is: A1=1,B1=2,A2=3,B2=4, then a request that selects that range and sets `majorDimension=ROWS` returns `[[1,2],[3,4]]`, whereas a request that sets `majorDimension=COLUMNS` returns `[[1,3],[2,4]]`.                                                                  |
| `valueRenderOption`    | string |          | —                                                | How values should be represented in the output. The default render option is FORMATTED\_VALUE.                                                                                                                                                                                                                                                           |
| `dateTimeRenderOption` | string |          | —                                                | How dates, times, and durations should be represented in the output. This is ignored if `valueRenderOption` is FORMATTED\_VALUE. The default dateTime render option is SERIAL\_NUMBER.                                                                                                                                                                   |

***

### `Googlesheets Update Chart`

Integration name: **GOOGLESHEETS\_UPDATE\_CHART**

Update the specification of an existing chart in a Google Sheets spreadsheet. Use this action when you need to modify an existing chart's properties such as its title, chart type, data ranges, colors, axes, or other visual settings. This action updates the chart's specification but does not change its position or size on the sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                                                                                                                                                                                                                                                                                                                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ---------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chart_id`       | integer |     ✅    | `707876808`                                                                                                                                                                                                                                                                                                                                                                                      | The unique numeric identifier of the chart to update within the spreadsheet. This is the chartId value returned when the chart was created or can be retrieved using the 'Get Spreadsheet Info' action (look for `sheets[].charts[].chartId` in the response). The chart must already exist in the specified spreadsheet.                                                                                                                                                                                                    |
| `chart_spec`     | object  |     ✅    | `{"title":"Updated Sales Chart","basicChart":{"series":[{"series":{"sourceRange":{"sources":[{"sheetId":0,"endRowIndex":10,"startRowIndex":0,"endColumnIndex":2,"startColumnIndex":1}]}}}],"domains":[{"domain":{"sourceRange":{"sources":[{"sheetId":0,"endRowIndex":10,"startRowIndex":0,"endColumnIndex":1,"startColumnIndex":0}]}}}],"chartType":"COLUMN","legendPosition":"RIGHT_LEGEND"}}` | The complete ChartSpec object defining the updated chart specification. This replaces the chart's existing specification but does not move or resize the chart. Must set exactly one chart type field: basicChart, pieChart, bubbleChart, candlestickChart, histogramChart, treemapChart, waterfallChart, orgChart, or scorecardChart. To change chart position or size, use a separate UpdateEmbeddedObjectPosition request. See <https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/charts#ChartSpec> |
| `spreadsheet_id` | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"`                                                                                                                                                                                                                                                                                                                                                 | The unique identifier of the Google Sheets spreadsheet containing the chart to update. Must be the actual spreadsheet ID from the URL (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`), NOT the spreadsheet name or title. Find it in the URL: <https://docs.google.com/spreadsheets/d/SPREADSHEET\\_ID/edit>                                                                                                                                                                                                        |

***

### `Googlesheets Update Dimension Properties`

Integration name: **GOOGLESHEETS\_UPDATE\_DIMENSION\_PROPERTIES**

Tool to hide/unhide rows or columns and set row heights or column widths. Use when you need to change visibility or pixel sizing of dimensions in a Google Sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                          | Description                                                                                                                                                                              |
| --------------------------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sheet_id`                        | integer |          | `0`                                              | The numeric ID of the sheet (tab). Either `sheet_id` or `sheet_name` must be provided. If both are provided, `sheet_name` will be resolved to `sheet_id` and override this value.        |
| `dimension`                       | string  |     ✅    | `"ROWS"`                                         | Whether to update rows or columns.                                                                                                                                                       |
| `end_index`                       | integer |     ✅    | `1`                                              | The zero-based end index (exclusive) of the dimension range to update. For example, to update rows 5-9, use `start_index=5` and `end_index=10`.                                          |
| `pixel_size`                      | integer |          | `100`                                            | The height (for rows) or width (for columns) in pixels. Must be a positive integer. At least one of `hidden_by_user` or `pixel_size` must be provided.                                   |
| `sheet_name`                      | string  |          | `"Sheet1"`                                       | The name of the sheet (tab). If provided, this will be resolved to the numeric `sheet_id` using `GOOGLESHEETS_GET_SPREADSHEET_INFO`. Either `sheet_id` or `sheet_name` must be provided. |
| `start_index`                     | integer |     ✅    | `0`                                              | The zero-based start index (inclusive) of the dimension range to update. For rows, 0 is the first row; for columns, 0 is column A.                                                       |
| `hidden_by_user`                  | boolean |          | `true`                                           | Whether to hide (true) or unhide (false) the specified rows/columns. At least one of `hidden_by_user` or `pixel_size` must be provided.                                                  |
| `spreadsheet_id`                  | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The ID of the spreadsheet to update.                                                                                                                                                     |
| `response_ranges`                 | array   |          | `["Sheet1!A1:B10"]`                              | Limits the ranges included in the response spreadsheet (only if `includeSpreadsheetInResponse` is true).                                                                                 |
| `response_include_grid_data`      | boolean |          | `false`                                          | Whether to include grid data in the response (only if `includeSpreadsheetInResponse` is true).                                                                                           |
| `include_spreadsheet_in_response` | boolean |          | `false`                                          | Whether to include the updated spreadsheet in the response.                                                                                                                              |

***

### `Googlesheets Update Sheet Properties`

Integration name: **GOOGLESHEETS\_UPDATE\_SHEET\_PROPERTIES**

Tool to update properties of a sheet (worksheet) within a Google Spreadsheet, such as its title, index, visibility, tab color, or grid properties. Use this when you need to modify the metadata or appearance of a specific sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                                                  |
| ------------------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `spreadsheetId`                | string  |     ✅    | —       | The ID of the spreadsheet containing the sheet to update.                                                                                                                    |
| `responseRanges`               | array   |          | —       | Limits the ranges included in the response spreadsheet. Meaningful only if `includeSpreadsheetInResponse` is true. Ranges should be in A1 notation (e.g., `'Sheet1!A1:B2'`). |
| `updateSheetProperties`        | object  |     ✅    | —       | The details of the sheet properties to update.                                                                                                                               |
| `responseIncludeGridData`      | boolean |          | —       | True if grid data should be returned. Meaningful only if `includeSpreadsheetInResponse` is true. When true, the response will include cell data for the specified ranges.    |
| `includeSpreadsheetInResponse` | boolean |          | —       | Determines if the update response should include the spreadsheet resource. When true, the response will include the full updated spreadsheet.                                |

***

### `Googlesheets Update Spreadsheet Properties`

Integration name: **GOOGLESHEETS\_UPDATE\_SPREADSHEET\_PROPERTIES**

Tool to update SPREADSHEET-LEVEL properties such as the spreadsheet's title, locale, time zone, or auto-recalculation settings. Use when you need to modify the overall configuration of a Google Spreadsheet. NOTE: To update individual SHEET properties (like renaming a specific sheet/tab), use `GOOGLESHEETS_UPDATE_SHEET_PROPERTIES` instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------------------ | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`                       | string  |     ✅    | `"title"`                           | Field mask specifying which properties to update (comma-separated for multiple fields). Supports nested paths using dot notation (e.g., `'iterativeCalculationSettings.maxIterations'`) per Protocol Buffers FieldMask specification. The root `'properties'` is implied and must not be included. Special case: When updating `'spreadsheetTheme'`, use the field mask `'spreadsheetTheme'` (not nested paths like `'spreadsheetTheme.primaryFontFamily'`) and provide the complete theme object with all required fields. Wildcard `'*'` updates all properties. |
| `properties`                   | object  |     ✅    | —                                   | The spreadsheet-level properties to update (e.g., title, locale, timeZone, autoRecalc). At least one field within properties must be set. NOTE: To update individual sheet/tab properties (like renaming a specific sheet), use `GOOGLESHEETS_UPDATE_SHEET_PROPERTIES` instead.                                                                                                                                                                                                                                                                                    |
| `spreadsheetId`                | string  |     ✅    | `"abc123spreadsheetId"`             | The ID of the spreadsheet to update.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `responseRanges`               | array   |          | `["Sheet1!A1:B10","Sheet2!C1:D20"]` | Limits the ranges included in the response spreadsheet. Only meaningful if `includeSpreadsheetInResponse` is true. Ranges should be in A1 notation (e.g., `'Sheet1!A1:B2'`).                                                                                                                                                                                                                                                                                                                                                                                       |
| `responseIncludeGridData`      | boolean |          | —                                   | Determines if grid data (cell values) should be included in the response. Only meaningful if `includeSpreadsheetInResponse` is true. When true, the response will include cell data for the specified ranges or entire spreadsheet.                                                                                                                                                                                                                                                                                                                                |
| `includeSpreadsheetInResponse` | boolean |          | —                                   | Determines if the update response should include the full spreadsheet resource. When true, the response will include the entire updated spreadsheet with all sheets, properties, and metadata.                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Googlesheets Update Values Batch`

Integration name: **GOOGLESHEETS\_UPDATE\_VALUES\_BATCH**

Tool to set values in one or more ranges of a spreadsheet. Use when you need to update multiple ranges in a single operation for better performance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                           |
| ------------------------------ | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`                         | array   |     ✅    | —                                                | The new values to apply to the spreadsheet. Each ValueRange specifies a range and the values to write to that range. Multiple ranges can be updated in a single request.                                                                                                                                              |
| `spreadsheet_id`               | string  |     ✅    | `"16k0mZLTGKySpihrjTycQalUVQQwq4SuLSdD3r_T164A"` | The ID of the spreadsheet to update. This ID can be found in the URL of the spreadsheet (e.g., `https://docs.google.com/spreadsheets/d/{spreadsheet_id}/edit`). Must be a valid Google Sheets spreadsheet ID.                                                                                                         |
| `valueInputOption`             | string  |     ✅    | `"USER_ENTERED"`                                 | How the input data should be interpreted. RAW: Values are stored exactly as entered, without parsing. USER\_ENTERED: Values are parsed as if typed by a user (numbers stay numbers, strings prefixed with `=` become formulas, etc.). INPUT\_VALUE\_OPTION\_UNSPECIFIED: Default input value option is not specified. |
| `includeValuesInResponse`      | boolean |          | `false`                                          | Determines if the update response should include the values of the cells that were updated. By default, responses do not include the updated values.                                                                                                                                                                  |
| `responseValueRenderOption`    | string  |          | `"FORMATTED_VALUE"`                              | Determines how values in the response should be rendered. Only used if `includeValuesInResponse` is true. FORMATTED\_VALUE (default): Values are formatted as displayed in the UI. UNFORMATTED\_VALUE: Values are unformatted. FORMULA: Formulas are not evaluated.                                                   |
| `responseDateTimeRenderOption` | string  |          | `"SERIAL_NUMBER"`                                | Determines how dates, times, and durations in the response should be rendered. Only used if `includeValuesInResponse` is true. SERIAL\_NUMBER (default): Dates are returned as numbers. FORMATTED\_STRING: Dates are returned as formatted strings.                                                                   |

***

### `Googlesheets Upsert Rows`

Integration name: **GOOGLESHEETS\_UPSERT\_ROWS**

Upsert rows - update existing rows by key, append new ones. Automatically handles column mapping and partial updates. Use for: CRM syncs (match Lead ID), transaction imports (match Transaction ID), inventory updates (match SKU), calendar syncs (match Event ID).

Features:

* Auto-adds missing columns to sheet
* Partial column updates (only update Phone + Status, preserve other columns)
* Column order doesn't matter (auto-maps by header name)
* Prevents duplicates by matching key column

Example inputs:

* Contact update: `keyColumn='Email'`, `headers=['Email','Phone','Status']`, `data=[['john@ex.com','555-0101','Active']]`
* Inventory sync: `keyColumn='SKU'`, `headers=['SKU','Stock','Price']`, `data=[['WIDGET-001',50,9.99],['GADGET-002',30,19.99]]`
* CRM lead update: `keyColumn='Lead ID'`, `headers=['Lead ID','Score','Status']`, `data=[['L-12345',85,'Hot']]`
* Partial update: `keyColumn='Email'`, `headers=['Email','Phone']` (only updates Phone, preserves Name/Address/etc)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------------- | ------- | :------: | -------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rows`                  | array   |     ✅    | `[["john@example.com","555-0101","Active"],["jane@example.com","555-0102","Pending"]]` | 2D array of data rows to upsert. IMPORTANT: If `headers` is NOT provided, the FIRST row is treated as column headers and remaining rows are data - so you need at least 2 rows (1 header + 1 data). If `headers` IS provided separately, then ALL rows in this array are treated as data rows. Each row should have the same number of values as headers. If a row has MORE values than headers: with `strict_mode=true` (default), an error is returned showing which rows are affected; with `strict_mode=false`, extra values are silently truncated. If a row has FEWER values than headers, an error is returned during execution. Cell values can be strings, numbers, booleans, or null. Example with headers provided: `headers=['Email','Status']`, `rows=[['john@ex.com','Active']]` (1 data row). Example without headers: `rows=[['Email','Status'],['john@ex.com','Active']]` (row 1 = headers, row 2 = data). |
| `headers`               | array   |          | `["Email","Phone","Status"]`                                                           | List of column names for the data. These will be matched against sheet headers. If a column doesn't exist in the sheet, it will be added automatically. Order doesn't need to match sheet order. Can be auto-derived from the first row in `rows` if not provided. Example inputs: `['Email', 'Phone', 'Status']` for contact updates, `['Lead ID', 'Name', 'Score']` for CRM, `['SKU', 'Stock', 'Price']` for inventory.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `keyColumn`             | string  |          | `"Email"`                                                                              | The column NAME (header text) to use as unique identifier for matching rows. Must be an actual header name from the sheet (e.g., `'Email'`, `'Lead ID'`, `'SKU'`), NOT a column letter (e.g., `'A'`, `'B'`, `'C'`). If you provide a column letter like `'A'`, it will be automatically converted to the header name at that column position. If neither `key_column` nor `key_column_index` is provided, defaults to the first column (index 0).                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `sheetName`             | string  |     ✅    | `"Leads"`                                                                              | The name of the sheet/tab within the spreadsheet. Note: Google Sheets creates default sheets with localized names based on account language (e.g., `'Sheet1'` for English, `'工作表1'` for Chinese, `'Hoja1'` for Spanish, `'Feuille1'` for French, `'Planilha1'` for Portuguese, `'Лист1'` for Russian). If you specify a common default name and the sheet is not found, the action will automatically use the first sheet if only one exists.                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `strictMode`            | boolean |          | —                                                                                      | Controls how rows with mismatched column counts are handled. When True (default), an error is returned if any row has more values than headers - the error message shows exactly which rows are affected and what values would need to be removed. When False, extra values are silently truncated to match the header count. Set to False only if you explicitly want automatic truncation of extra values.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `tableStart`            | string  |          | `"A1"`                                                                                 | Cell where the table starts (where headers are located). Defaults to `'A1'`. Use this if your table is offset (e.g., `'C5'`, `'D10'`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `spreadsheetId`         | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"`                                       | The ID of the spreadsheet. Must be a non-empty string, typically a 44-character alphanumeric string found in the spreadsheet URL.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `key_column_index`      | —       |          | `0`                                                                                    | The 0-based column index to use as unique identifier for matching rows. Alternative to `key_column` - will be converted to column name using headers. If neither `key_column` nor `key_column_index` is provided, defaults to 0 (first column). Example: 0 for first column, 1 for second column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `normalization_message` | string  |          | —                                                                                      | Internal field to track input normalization (e.g., row truncation). Not part of API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Googlesheets Values Get`

Integration name: **GOOGLESHEETS\_VALUES\_GET**

Returns a range of values from a spreadsheet. Use when you need to read data from specific cells or ranges in a Google Sheet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `range`                   | string  |     ✅    | `"Sheet1!A1:B3"`                                 | The A1 notation or R1C1 notation of the range to retrieve values from. If the sheet name contains spaces or special characters, wrap the sheet name in single quotes (e.g., `"'My Sheet'!A1:B2"`). Without single quotes, the API will return a 400 error for sheet names with spaces. Examples: `'Sheet1!A1:B3'`, `"'Sheet With Spaces'!A1:D5"`, `'A1:D5'` (no sheet name uses first visible sheet), `'Sheet1!A:A'` (entire column), `'SheetName'` (entire sheet). |
| `end_row`                 | integer |          | —                                                | 1-based row number to stop reading at (inclusive). Use with `start_row` for pagination to avoid large response errors. Example: `start_row=501`, `end_row=1000` fetches rows 501-1000.                                                                                                                                                                                                                                                                              |
| `start_row`               | integer |          | —                                                | 1-based row number to start reading from (inclusive). Use with `end_row` for pagination to avoid large response errors. Example: `start_row=1`, `end_row=500` fetches the first 500 rows.                                                                                                                                                                                                                                                                           |
| `spreadsheet_id`          | string  |     ✅    | `"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"` | The unique identifier of the Google Spreadsheet from which to retrieve values. This is the long alphanumeric string found in the spreadsheet URL between `/d/` and `/edit` (e.g., `'1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'`). WARNING: Do NOT use the spreadsheet name or title (e.g., `'My Sales Report'`); you must use the actual ID from the URL.                                                                                                        |
| `major_dimension`         | string  |          | —                                                | The major dimension for results.                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `value_render_option`     | string  |          | —                                                | How values should be rendered in the output. FORMATTED\_VALUE: Values are calculated and formatted (default). UNFORMATTED\_VALUE: Values are calculated but not formatted. FORMULA: Values are not calculated; the formula is returned instead.                                                                                                                                                                                                                     |
| `date_time_render_option` | string  |          | —                                                | How dates, times, and durations should be represented in the output. SERIAL\_NUMBER: Dates are returned as serial numbers (default). FORMATTED\_STRING: Dates returned as formatted strings.                                                                                                                                                                                                                                                                        |

***

### `Googlesheets Values Update`

Integration name: **GOOGLESHEETS\_VALUES\_UPDATE**

Tool to set values in a range of a Google Spreadsheet. Use when you need to update or overwrite existing cell values in a specific range.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------------------------------- | ------- | :------: | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `range`                           | string  |     ✅    | `"Sheet1!A1:C2"`                                             | The A1 notation of the range to update values in (e.g., `'Sheet1!A1:C2'`, `'MySheet!C:C'`, or `'A1:D5'`). Must be actual cell references, not placeholder values. If the sheet name is omitted (e.g., `'A1:B2'`), the operation applies to the first visible sheet. IMPORTANT: The range must not exceed the sheet's grid dimensions. By default, new sheets have 1000 rows and 26 columns (A-Z). If you need to write to columns beyond Z (e.g., AA, AB), first expand the sheet using `GOOGLESHEETS_APPEND_DIMENSION` or check the current dimensions using `GOOGLESHEETS_GET_SPREADSHEET_INFO`. |
| `values`                          | array   |     ✅    | `[["Name","Age","City"],["Test User","25","San Francisco"]]` | The data to write. This is an array of arrays, the outer array representing all the data and each inner array representing a major dimension. Each item in the inner array corresponds with one cell.                                                                                                                                                                                                                                                                                                                                                                                              |
| `spreadsheet_id`                  | string  |     ✅    | `"13I9BjRCKl1iy7VZ-_Ir29qr5Yu79iIyIkooVqApymS8"`             | The unique identifier of the Google Spreadsheet to update. This ID can be found in the URL of the spreadsheet (e.g., `https://docs.google.com/spreadsheets/d/{spreadsheet_id}/edit`). Must be a non-empty string.                                                                                                                                                                                                                                                                                                                                                                                  |
| `major_dimension`                 | string  |          | `"ROWS"`                                                     | The major dimension of the values. ROWS (default) means each inner array is a row of values. COLUMNS means each inner array is a column of values. Defaults to ROWS if unspecified.                                                                                                                                                                                                                                                                                                                                                                                                                |
| `auto_expand_sheet`               | boolean |          | `true`                                                       | If True (default), automatically expands the sheet's dimensions (adds columns/rows) when the target range exceeds the current grid limits. If False, the operation will fail with an error if the range exceeds grid limits.                                                                                                                                                                                                                                                                                                                                                                       |
| `value_input_option`              | string  |     ✅    | `"USER_ENTERED"`                                             | How the input data should be interpreted. RAW: Values are stored exactly as entered, without parsing (dates, formulas, etc. remain as strings). USER\_ENTERED: Values are parsed as if typed by a user (numbers stay numbers, strings prefixed with `=` become formulas, etc.).                                                                                                                                                                                                                                                                                                                    |
| `include_values_in_response`      | boolean |          | `false`                                                      | Determines if the update response should include the values of the cells that were updated. By default, responses do not include the updated values.                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `response_value_render_option`    | string  |          | `"FORMATTED_VALUE"`                                          | Determines how values in the response should be rendered. Only used if `includeValuesInResponse` is true. FORMATTED\_VALUE (default): Values are formatted as displayed in the UI. UNFORMATTED\_VALUE: Values are unformatted (numbers, booleans, formulas). FORMULA: Formulas are not evaluated and remain as text.                                                                                                                                                                                                                                                                               |
| `response_datetime_render_option` | string  |          | `"SERIAL_NUMBER"`                                            | Determines how dates, times, and durations in the response should be rendered. Only used if `includeValuesInResponse` is true. SERIAL\_NUMBER (default): Dates are returned as numbers. FORMATTED\_STRING: Dates are returned as strings formatted per the cell's locale.                                                                                                                                                                                                                                                                                                                          |

***


# Google Slides

Your Toolhouse AI Worker can connect to Googleslides using 8 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](https://toolhouse.app/auth-connections?authkit_slugs=googleslides).

## Tools

### `Googleslides Create Presentation`

Integration name: **GOOGLESLIDES\_CREATE\_PRESENTATION**

Tool to create a blank Google Slides presentation. Use when you need to initialize a new presentation with a specific title, locale, or page size.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example             | Description                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------- | ------ | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`          | string |          | `"My Presentation"` | The title of the presentation. If omitted, the API uses a default title.                                                                                                                                                                                                                                                                                                                                                                  |
| `locale`         | string |          | `"en-US"`           | The locale of the presentation, as an IETF BCP 47 language tag (e.g., 'en-US', 'fr-FR', 'ja-JP'). If omitted, the API uses a default locale.                                                                                                                                                                                                                                                                                              |
| `pageSize`       | object |          | —                   | The size of a page in the presentation.                                                                                                                                                                                                                                                                                                                                                                                                   |
| `presentationId` | string |          | —                   | The ID to use for the new presentation. If provided, it is used as the ID of the new presentation. Otherwise, a new ID is automatically generated. Must be a valid Google Drive/Slides ID format (long alphanumeric string). Note: Human-readable IDs (e.g., 'my-presentation') are not valid and will cause API errors. Only provide this if you have a valid Google Drive/Slides ID format; otherwise omit to let the API generate one. |

### `Googleslides Create Slides Markdown`

Integration name: **GOOGLESLIDES\_CREATE\_SLIDES\_MARKDOWN**

Creates a new Google Slides presentation from Markdown text. Automatically splits content into slides using '---' separators and applies appropriate templates based on content structure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                    | Description                                       |
| --------------- | ------ | :------: | ------------------------------------------------------------------------------------------ | ------------------------------------------------- |
| `title`         | string |     ✅    | `"Q4 Business Review"`                                                                     | The title for the new Google Slides presentation. |
| `markdown_text` | string |     ✅    | \`"# 🚀 Product Launch\nRevolutionary AI-powered platform\n\n---\n\n# 📊 Market Analysis\n | Segment                                           |

### `Googleslides Get Page Thumbnail2`

Integration name: **GOOGLESLIDES\_GET\_PAGE\_THUMBNAIL2**

Tool to generate a thumbnail of the latest version of a specified page. Use when you need a preview image URL for a slide page. This request counts as an expensive read request for quota purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type   | Required | Example                                          | Description                                                                                                           |
| ----------------------------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- |
| `pageObjectId`                      | string |     ✅    | `"p"`                                            | The object ID of the page whose thumbnail to retrieve.                                                                |
| `presentationId`                    | string |     ✅    | `"1l0UiR1k56BzDPiAfOHNbkbHsegbTn3BZMvomy02N0cM"` | The ID of the presentation to retrieve.                                                                               |
| `thumbnailProperties.mimeType`      | string |          | `"PNG"`                                          | The optional mime type of the thumbnail image. Defaults to PNG if not specified.                                      |
| `thumbnailProperties.thumbnailSize` | string |          | `"LARGE"`                                        | The optional thumbnail image size. LARGE = 1600px, MEDIUM = 800px, SMALL = 200px. Defaults to LARGE if not specified. |

### `Googleslides Presentations Batch Update`

Integration name: **GOOGLESLIDES\_PRESENTATIONS\_BATCH\_UPDATE**

Update Google Slides presentations using markdown content or raw API text. Supports professional themes, auto-formatting, and multiple slide types (title, bullet, table, quote, image, two-column).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `requests`       | array  |          | —       | List of update requests, each a dict with one of these valid Slides API request types: **Common requests:** createSlide, createShape, createTable, createImage, insertText, updateTextStyle, updateShapeProperties, updatePageProperties, updateParagraphStyle, deleteObject, updateTableCellProperties, updateTableColumnProperties, replaceAllText **IMPORTANT:** To update slide backgrounds, use `updatePageProperties` (NOT `updateSlideProperties`). The field `pageBackgroundFill` exists in PageProperties, not SlideProperties. Required if markdown\_text is not provided.                                                                                                                                     |
| `writeControl`   | object |          | —       | Options that control how write requests are executed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `markdown_text`  | string |          | —       | Markdown content to add as new slides to an existing presentation. Separate slides with '\n---\n'. Each slide auto-detects its type from content. Slide types: title ('# Title\nSubtitle'), bullets ('-'/'+'/'\*'), tables (markdown tables), quotes ('> text'), images (''), two-column ('\|\|\|' separator), plain text. Add `Theme: <name>` as the first line to apply a theme. Available themes: default, corporate\_blue, modern\_dark, professional\_gray, creative\_purple, warm\_orange, forest\_green, minimal\_beige. Font sizes auto-scale based on content length (28pt down to 8pt). Supports **bold**, emoji, and auto-centering of tables. Images must be publicly accessible URLs (PNG/JPEG/GIF, <50MB). |
| `presentationId` | string |     ✅    | —       | The ID of the presentation to apply the updates to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

### `Googleslides Presentations Copy From Template`

Integration name: **GOOGLESLIDES\_PRESENTATIONS\_COPY\_FROM\_TEMPLATE**

Tool to create a new Google Slides presentation by duplicating an existing template deck via Drive file copy. Use when you need to preserve themes, masters, and layouts exactly as they appear in the template. After copying, use GOOGLESLIDES\_PRESENTATIONS\_BATCH\_UPDATE to replace placeholder text or images.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type   | Required | Example                    | Description                                                                                                                                                                     |
| -------------------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `new_title`                | string |          | `"Q4 Sales Deck"`          | The name/title for the copied presentation. If omitted, a default name like 'Copy of \[original]' is used.                                                                      |
| `parent_folder_id`         | string |          | `"0B1a2b3c4d5e6f7g8h9i0j"` | The ID of the destination folder in Google Drive. If provided, the copied presentation will be placed in this folder. If omitted, the copy is placed in the user's root folder. |
| `template_presentation_id` | string |     ✅    | `"1a2B3c4D5eF6gH7iJ8kL"`   | The Drive file ID of the Slides template to copy. This is the presentationId of the existing deck you want to duplicate.                                                        |

### `Googleslides Presentations Get`

Integration name: **GOOGLESLIDES\_PRESENTATIONS\_GET**

Tool to retrieve the latest version of a presentation. Use after obtaining the presentation ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------ | ------ | :------: | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`           | string |          | `"presentationId,title,slides"` | Comma-separated selector specifying which fields to include in a partial response. Nested fields use parentheses that must be properly balanced. Top-level fields: presentationId, title, locale, revisionId, pageSize, slides, masters, layouts, notesMaster. For slides/masters/layouts, valid Page fields: objectId, pageType, pageElements, pageProperties, revisionId. For pageElements, valid fields: objectId, size, transform, title, description, shape, image, video, line, table, wordArt, elementGroup, sheetsChart, speakerSpotlight. For shape, valid fields: shapeType, text, shapeProperties, placeholder. Note: 'autofit' is under shapeProperties, not directly under shape. Use shape(shapeProperties(autofit)), not shape(autofit). Examples: 'presentationId,title', 'slides(objectId,pageElements(objectId,size))', 'slides(objectId,pageElements(objectId,shape(shapeType,text,shapeProperties(autofit))))' |
| `presentationId`   | string |          | `"1a2B3c4D5eF6gH7iJ8kL"`        | The ID of the presentation to retrieve. Either presentation\_id or presentation\_name must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `presentationName` | string |          | `"Q4 Sales Report"`             | The name of the presentation to search for and retrieve. If provided, the action will search Google Drive for a presentation with this name. Either presentation\_id or presentation\_name must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

### `Googleslides Presentations Pages Get`

Integration name: **GOOGLESLIDES\_PRESENTATIONS\_PAGES\_GET**

Tool to get the latest version of a specific page in a presentation. Use when you need to inspect slide, layout, master, or notes page details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example | Description                                              |
| ---------------- | ------ | :------: | ------- | -------------------------------------------------------- |
| `pageObjectId`   | string |     ✅    | —       | The object ID of the page to retrieve.                   |
| `presentationId` | string |     ✅    | —       | The ID of the presentation from which to fetch the page. |

### `Googleslides Presentations Pages Get Thumbnail`

Integration name: **GOOGLESLIDES\_PRESENTATIONS\_PAGES\_GET\_THUMBNAIL**

DEPRECATED: Use GOOGLESLIDES\_GET\_PAGE\_THUMBNAIL2 instead. Tool to generate and return a thumbnail image URL for a specific page. Use when you need a quick preview of a slide page after loading it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type   | Required | Example                  | Description                                                                                                                    |
| ----------------------------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `pageObjectId`                      | string |     ✅    | `"p"`                    | The object ID of the page whose thumbnail to retrieve.                                                                         |
| `presentationId`                    | string |     ✅    | `"1a2B3c4D5eF6gH7iJ8kL"` | The ID of the presentation containing the page.                                                                                |
| `thumbnailProperties.mimeType`      | string |          | `"PNG"`                  | Optional thumbnail image MIME type. Currently only 'PNG' is supported by the API. Defaults to 'PNG' if omitted.                |
| `thumbnailProperties.thumbnailSize` | string |          | `"LARGE"`                | Optional thumbnail size. One of 'LARGE', 'MEDIUM', 'SMALL', or 'THUMBNAIL\_SIZE\_UNSPECIFIED'. Defaults to 'LARGE' if omitted. |


# Google Tasks

Your Toolhouse AI Worker can connect to Google Tasks using 18 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](https://toolhouse.app/auth-connections?authkit_slugs=googletasks).

## Tools (18)

### `Googletasks Batch Execute`

Integration name: **GOOGLETASKS\_BATCH\_EXECUTE**

Executes multiple Google Tasks API operations in a single HTTP batch request and returns structured per-item results. Use this to reduce LLM tool invocations when performing bulk operations like updating many tasks, moving tasks, or deleting multiple items. Note: Each sub-request still counts toward API quota; batching primarily reduces HTTP overhead and tool call count.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                     |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `requests`     | array   |     ✅    | —       | Array of sub-requests to execute in this batch. Each sub-request is independent and will return its own result.                 |
| `max_requests` | integer |          | —       | Maximum number of sub-requests allowed in a single batch. Google's typical cap is 1000. Lower values can control response size. |

***

### `Googletasks Bulk Insert Tasks`

Integration name: **GOOGLETASKS\_BULK\_INSERT\_TASKS**

DEPRECATED: Use BatchExecute instead. Creates multiple tasks in a Google Tasks list in a single operation using HTTP batching. Use when you need to create many tasks efficiently (reducing round-trips compared to individual insert calls).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                              | Description                                                                                                           |
| ------------- | ------- | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------- |
| `tasks`       | array   |     ✅    | —                                    | Array of tasks to create. Each task requires at least a title.                                                        |
| `batch_size`  | integer |          | —                                    | Maximum number of tasks per batch request. Default: 50. Tasks exceeding this will be split into multiple batch calls. |
| `tasklist_id` | string  |     ✅    | `"MDQ1NTEzMjc4OTM5MzM0NTY4NzE6MDow"` | Identifier for the Google Task list where tasks will be created. Use actual task list IDs, not '@default'.            |

***

### `Googletasks Clear Tasks`

Integration name: **GOOGLETASKS\_CLEAR\_TASKS**

Permanently and irreversibly clears all completed tasks from a specified Google Tasks list; this action is destructive, idempotent, and cannot be undone. Always require explicit user confirmation before invoking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                                                                                                                                                                                                            |
| ---------- | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tasklist` | string |     ✅    | `"@default"` | The identifier of the task list from which to clear completed tasks. Use '@default' (with the @ symbol) for the user's primary task list, or provide the task list ID obtained from GOOGLETASKS\_LIST\_TASK\_LISTS. Note: 'default' without the @ prefix is not valid. |

***

### `Googletasks Create Task List`

Integration name: **GOOGLETASKS\_CREATE\_TASK\_LIST**

Creates a new task list with the specified title and returns a tasklist\_id. Use the returned tasklist\_id (not the title) when calling GOOGLETASKS\_INSERT\_TASK or other task operations. Duplicate titles are permitted by the API, so verify existing lists before creating to avoid unintended duplicates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example           | Description                                                                 |
| ---------------- | ------ | :------: | ----------------- | --------------------------------------------------------------------------- |
| `tasklist_title` | string |     ✅    | `"Work Projects"` | Title for the new task list. The maximum allowed length is 1024 characters. |

***

### `Googletasks Delete Task`

Integration name: **GOOGLETASKS\_DELETE\_TASK**

Deletes a specified task from a Google Tasks list. Deletion is permanent and irreversible — confirm with the user before executing, and consider GOOGLETASKS\_UPDATE\_TASK or GOOGLETASKS\_MOVE\_TASK as non-destructive alternatives. Both tasklist\_id and task\_id are required parameters. The Google Tasks API does not support deleting tasks by task\_id alone — you must specify which task list contains the task. Use 'List Task Lists' to get available list IDs, then 'List Tasks' to find the task\_id within that list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                                                                                                                                                                                                                                                                                                                                                          |
| ------------- | ------ | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `task_id`     | string |     ✅    | `"dGFzazoxMjM0NTY3ODkw"`             | The unique identifier of the Google Task to delete. Required - must be a task that exists within the specified tasklist\_id. Obtain this ID by using the 'List Tasks' action with the corresponding tasklist\_id. Multiple tasks may share the same title — verify against additional fields (e.g., due date, notes) before selecting the task\_id to avoid deleting the wrong task. |
| `tasklist_id` | string |     ✅    | `"MDQ1NTEzMjc4OTM5MzM0NTY4NzE6MDow"` | The unique identifier of the Google Task list containing the task to delete. Required - tasks cannot be deleted by task\_id alone; the API requires specifying which list contains the task. Obtain this ID by using the 'List Task Lists' action.                                                                                                                                   |

***

### `Googletasks Delete Task List`

Integration name: **GOOGLETASKS\_DELETE\_TASK\_LIST**

Permanently deletes an existing Google Task list, identified by `tasklist_id`, along with all its tasks; this operation is irreversible. Require explicit user confirmation before calling; do not invoke in read-only or exploratory flows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                                                                          |
| ------------- | ------ | :------: | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| `tasklist_id` | string |     ✅    | `"MDQ1MDM5NzY1MzA4NDM4MTIzNDE6MDow"` | Unique identifier of the Google Task list to be deleted. This field is required and cannot be empty. |

***

### `Googletasks Get Task`

Integration name: **GOOGLETASKS\_GET\_TASK**

Retrieve a specific Google Task. REQUIRES both `tasklist_id` and `task_id`. Tasks cannot be retrieved by ID alone - you must always specify which task list contains the task. Use this to refresh task details before display or edits rather than relying on potentially stale results from GOOGLETASKS\_LIST\_TASKS.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                                                                                                                                     |
| ------------- | ------ | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task_id`     | string |     ✅    | `"MVFfNEN3QUhUSmpZRVk0RQ"`           | REQUIRED. Unique identifier of the Google Task to retrieve. Must be used together with tasklist\_id.                                                            |
| `tasklist_id` | string |     ✅    | `"MDQ1NDcwMTQ0OTQ3MTA4MTQ4MTg6MDow"` | REQUIRED. Unique identifier of the Google Tasks list containing the task. You must always provide this parameter - tasks cannot be retrieved by task\_id alone. |

***

### `Googletasks Get Task List`

Integration name: **GOOGLETASKS\_GET\_TASK\_LIST**

Retrieves a specific task list from the user's Google Tasks if the `tasklist_id` exists for the authenticated user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                            |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `tasklist_id` | string |     ✅    | `"7f574d94-ae28-4f2e-a69a-fb37978ec62e"` | The unique identifier of the task list to retrieve, assigned by Google Tasks when the list is created. |

***

### `Googletasks Insert Task`

Integration name: **GOOGLETASKS\_INSERT\_TASK**

Creates a new task in a given `tasklist_id`, optionally as a subtask of an existing `task_parent` or positioned after an existing `task_previous` sibling, where both `task_parent` and `task_previous` must belong to the same `tasklist_id` if specified. IMPORTANT: Date fields (due, completed) accept various formats like '28 Sep 2025', '11:59 PM, 22 Sep 2025', or ISO format '2025-09-21T15:30:00Z' and will automatically convert them to RFC3339 format required by the API. Not idempotent — repeated calls with identical parameters create duplicate tasks; track returned task IDs to avoid duplication. High-volume inserts may trigger 403 rateLimitExceeded or 429; apply exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| --------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`            | string  |          | —                        | Unique identifier for the task. Generated by Google Tasks API when creating a task. Used for updating or deleting existing tasks.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `due`           | string  |          | `"2025-09-28T23:59:00Z"` | Due date for the task (optional). NOTE: Google Tasks only stores the date portion (YYYY-MM-DD) - any time component provided will be automatically stripped before sending to the API. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC. |
| `etag`          | string  |          | —                        | ETag of the resource for concurrency control. Prevents accidental overwrites when multiple clients modify the same task. Auto-generated by the API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `notes`         | string  |          | —                        | Additional details or description for the task. Supports plain text only (no HTML/markdown). Maximum 8192 characters. Example: 'Include Q3 sales data and projections'                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `title`         | string  |     ✅    | —                        | Title/name of the task (REQUIRED). This is the main text displayed for the task. Maximum 1024 characters. Example: 'Complete quarterly report'                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `hidden`        | boolean |          | —                        | Whether the task is hidden from the default view. Hidden tasks can still be accessed via API but won't show in UI. Default: false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `status`        | string  |          | —                        | Status of the task. Must be either 'needsAction' (task is pending) or 'completed' (task is done). Defaults to 'needsAction' if not provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `deleted`       | boolean |          | —                        | Whether the task has been deleted. Deleted tasks are marked but not immediately removed, allowing for recovery. Default: false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `completed`     | string  |          | `"2025-09-28T23:59:00Z"` | Date/time when the task was marked as completed. Only applicable when status='completed'. Unlike 'due', this field preserves the time component. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.                                       |
| `task_parent`   | string  |          | —                        | Identifier of an existing task to serve as parent; if provided, creates a subtask, otherwise a top-level task in the specified list.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `tasklist_id`   | string  |     ✅    | `"@default"`             | Task list identifier where the new task will be created. Valid values: (1) '@default' - special identifier that references the user's default/primary task list, or (2) an actual task list ID obtained from the 'List Task Lists' action (GOOGLETASKS\_LIST\_TASK\_LISTS). Task list IDs are opaque strings generated by Google (typically base64-encoded, e.g., 'MDQ1NTEzMjc4OTM5MzM0NTY4NzE6MDow').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `task_previous` | string  |          | —                        | Identifier of an existing task after which the new task will be placed, at the same hierarchical level (as a sibling).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Googletasks List All Tasks`

Integration name: **GOOGLETASKS\_LIST\_ALL\_TASKS**

Tool to list all tasks across all of the user's task lists with optional filters. Use when the agent needs to see all tasks without knowing which list to query first. Each returned task is annotated with its tasklist\_id and tasklist\_title for context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ----------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dueMax`          | string  |          | `"2025-09-28T23:59:00Z"` | Only include tasks due on or before this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.       |
| `dueMin`          | string  |          | `"2025-09-28T23:59:00Z"` | Only include tasks due on or after this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.        |
| `showHidden`      | boolean |          | —                        | Include hidden tasks in results. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `updatedMin`      | string  |          | `"2025-09-28T23:59:00Z"` | Only include tasks updated on or after this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.    |
| `showDeleted`     | boolean |          | —                        | Include deleted tasks in results. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `completedMax`    | string  |          | `"2025-09-28T23:59:00Z"` | Only include tasks completed on or before this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC. |
| `completedMin`    | string  |          | `"2025-09-28T23:59:00Z"` | Only include tasks completed on or after this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.  |
| `showAssigned`    | boolean |          | —                        | Include tasks assigned to the current user in results. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `showCompleted`   | boolean |          | —                        | Include completed tasks in results. Defaults to true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `max_tasks_total` | integer |          | —                        | Hard limit on total number of tasks returned across all lists to prevent large payloads. Defaults to 1000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Googletasks List Task Lists`

Integration name: **GOOGLETASKS\_LIST\_TASK\_LISTS**

Fetches the authenticated user's task lists from Google Tasks; results may be paginated. Response contains task lists under the `items` key. Multiple lists may share similar names — confirm the correct list by ID before passing to other tools.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                          |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `pageToken`  | string  |          | —       | Token for the page of results to return; omit for the first page, use `nextPageToken` from a previous response for subsequent pages. |
| `maxResults` | integer |          | `"10"`  | Maximum number of task lists to return per page. Capped at 100; values above 100 are silently truncated to 100.                      |

***

### `Googletasks List Tasks`

Integration name: **GOOGLETASKS\_LIST\_TASKS**

Retrieves tasks from a Google Tasks list; all date/time strings must be RFC3339 UTC, and `showCompleted` must be true if `completedMin` or `completedMax` are specified. Response key for tasks is `tasks` (not `items`). No full-text search; filter client-side by title/notes. Results ordered by position, not by date.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------------- | ------- | :------: | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `dueMax`        | string  |          | `"2025-09-28T23:59:00Z"`                                                     | Exclude tasks due after this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.                           |
| `dueMin`        | string  |          | `"2025-09-28T23:59:00Z"`                                                     | Exclude tasks due before this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.                          |
| `pageToken`     | string  |          | `"CiAKGjBpbmRXUTA1Y1cxVWF6b2hVbkprZWxTelNVUWdRMBoOCL2q0qcCELqGmgsQ0KG3jAE="` | Token from a previous list operation for fetching a specific page; if omitted, retrieves the first page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `maxResults`    | integer |          | `"20"`                                                                       | Maximum number of tasks to return. API default: 20, maximum: 100. Use `nextPageToken` from the response in successive calls until absent to avoid missing tasks beyond the first page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `showHidden`    | boolean |          | —                                                                            | Include hidden tasks. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `tasklistId`    | string  |     ✅    | `"@default"`                                                                 | Identifier of the task list. IMPORTANT: For the user's primary/default task list, you MUST use the literal string '@default' (NOT 'primary', 'default', or any other variation). The value 'primary' is NOT valid and will be rejected by the API. Either use '@default' for the primary list or provide a valid task list ID obtained from list\_task\_lists.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `updatedMin`    | string  |          | `"2025-09-28T23:59:00Z"`                                                     | Lower bound for task's last modification time (for syncing). Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC. |
| `showDeleted`   | boolean |          | —                                                                            | Include deleted tasks. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `completedMax`  | string  |          | `"2025-09-28T23:59:00Z"`                                                     | Exclude tasks completed after this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.                     |
| `completedMin`  | string  |          | `"2025-09-28T23:59:00Z"`                                                     | Exclude tasks completed before this date. Google Tasks API requires dates in RFC3339 format (e.g., 2025-09-22T13:48:27Z). We automatically convert various human-readable formats to RFC3339: Accepted formats: • 2025-09-28T23:59:00Z → RFC3339/ISO-8601 format (preferred) - September 28, 2025 at 11:59 PM UTC • 28 Sep 2025 → Simple date format - Will be converted to midnight UTC on that date • 11:59 PM, 22 Sep 2025 → Time with date - Assumes UTC timezone if not specified • 1:00 PM, 21 Sep 2025 → 12-hour format with date - Converted to 13:00 UTC • UTC-5:30, 6:50 PM → With timezone offset - Converted to UTC automatically • UTC+1, 11:59 PM, 31 Dec → Timezone with date - Next occurrence of Dec 31 • 2025-09-21T15:30:00+02:00 → RFC3339 with timezone offset Note: If no timezone is specified, UTC is assumed. Dates without times default to midnight UTC.                    |
| `showCompleted` | boolean |          | —                                                                            | Include completed tasks. Defaults to true. (See action docstring for interaction with `completedMin`/`Max`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Googletasks Move Task`

Integration name: **GOOGLETASKS\_MOVE\_TASK**

Moves the specified task to another position in the task list or to a different task list. Use cases:

* Reorder tasks within a list (use `previous` parameter)
* Create subtasks by moving a task under a parent (use `parent` parameter)
* Move tasks between different task lists (use `destinationTasklist` parameter)
* Move a subtask back to top-level (omit `parent` parameter)

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                    | Description                                                                                                                                                                                                                                                                                                               |
| --------------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `task`                | string |     ✅    | `"UXViX2VqVlBJaWJ3bEw1ag"` | Task identifier of the task to move. Must be a valid task ID from the source tasklist. Obtain this from 'List Tasks' or 'Insert Task' actions.                                                                                                                                                                            |
| `parent`              | string |          | `"newParentTaskId1"`       | New parent task identifier. If provided, the task becomes a subtask of this parent. The parent must exist in the destination list (or source list if no destinationTasklist is specified). Omit to move task to top level.                                                                                                |
| `previous`            | string |          | `"previousTaskId1"`        | New previous sibling task identifier. The task will be positioned immediately after this sibling. Omit to position the task first among its siblings. Must exist in the same list as the task's destination (destinationTasklist if specified, otherwise source tasklist). Cross-list sibling references are unsupported. |
| `tasklist`            | string |     ✅    | `"@default"`               | Source task list identifier where the task currently exists. Use '@default' for the user's primary task list, or provide a specific task list ID obtained from 'List Task Lists'. The task must exist in this list.                                                                                                       |
| `destinationTasklist` | string |          | `"destinationTaskListId1"` | Destination task list identifier. If set, the task is moved from the source tasklist to this list. Omit to reorder within the same list. Note: Recurrent tasks cannot be moved between lists.                                                                                                                             |

***

### `Googletasks Patch Task`

Integration name: **GOOGLETASKS\_PATCH\_TASK**

Partially updates an existing task (identified by `task_id`) within a specific Google Task list (identified by `tasklist_id`), modifying only the provided attributes from `TaskInput` (e.g., `title`, `notes`, `due` date, `status`) and requiring both the task and list to exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------- | ------- | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |          | —                                                | Unique identifier for the task. Generated by Google Tasks API when creating a task. Used for updating or deleting existing tasks.                                                                                                                                                                                                                                                                                                                                           |
| `due`         | string  |          | —                                                | Due date for the task (optional). NOTE: Google Tasks only stores the date portion (YYYY-MM-DD) - any time component provided will be automatically stripped before sending to the API. Accepts RFC3339 format (e.g., '2025-09-28T23:59:00Z') or various human-readable formats like '28 Sep 2025', '11:59 PM, 22 Sep 2025'. Normalized to midnight UTC — naive local dates without timezone offset may shift ±1 day. Time-based reminders are not supported via this field. |
| `etag`        | string  |          | —                                                | ETag of the resource for concurrency control. Prevents accidental overwrites when multiple clients modify the same task. Auto-generated by the API.                                                                                                                                                                                                                                                                                                                         |
| `notes`       | string  |          | —                                                | Additional details or description for the task. Supports plain text only (no HTML/markdown). Maximum 8192 characters. Example: 'Include Q3 sales data and projections'                                                                                                                                                                                                                                                                                                      |
| `title`       | string  |          | —                                                | Title/name of the task. This is the main text displayed for the task. Maximum 1024 characters. Example: 'Complete quarterly report'                                                                                                                                                                                                                                                                                                                                         |
| `hidden`      | boolean |          | —                                                | Whether the task is hidden from the default view. Hidden tasks can still be accessed via API but won't show in UI. Default: false                                                                                                                                                                                                                                                                                                                                           |
| `status`      | string  |          | —                                                | Current status of the task. Must be either 'needsAction' (task is pending) or 'completed' (task is done).                                                                                                                                                                                                                                                                                                                                                                   |
| `deleted`     | boolean |          | —                                                | Whether the task has been deleted. Deleted tasks are marked but not immediately removed, allowing for recovery. Default: false                                                                                                                                                                                                                                                                                                                                              |
| `task_id`     | string  |     ✅    | `"MDQ1NzM3ODI0NzM2NzY0NjA4MDk6MTU4MzM3MDQ4OTow"` | Identifier of the Google Task to be updated within the specified task list.                                                                                                                                                                                                                                                                                                                                                                                                 |
| `completed`   | string  |          | —                                                | Date/time when the task was marked as completed. Only applicable when status='completed'. Unlike 'due', this field preserves the time component. Accepts RFC3339 format or human-readable date formats. Malformed or non-RFC3339 values will be rejected.                                                                                                                                                                                                                   |
| `tasklist_id` | string  |     ✅    | `"MDQ1NzM3ODI0NzM2NzY0NjA4MDk6MDow"`             | Identifier of the Google Task list that contains the task to be updated.                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Googletasks Patch Task List`

Integration name: **GOOGLETASKS\_PATCH\_TASK\_LIST**

Updates the title of an existing Google Tasks task list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                              | Description                                                                                                                                    |
| --------------- | ------ | :------: | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `tasklist_id`   | string |     ✅    | `"MDQ1MjA4MTA5NzQxNzYxMjM0NTY6MDow"` | The unique identifier of the task list to be updated.                                                                                          |
| `updated_title` | string |          | `"Project Alpha Tasks Q3"`           | The new title for the task list. Optional for PATCH semantics - only include if you want to update the title. Maximum length: 1024 characters. |

***

### `Googletasks Update Task`

Integration name: **GOOGLETASKS\_UPDATE\_TASK**

DEPRECATED: Use GOOGLETASKS\_PATCH\_TASK instead. Full-update (PUT-style) operation that overwrites unspecified fields with empty/default values, which can cause data loss. Prefer GOOGLETASKS\_PATCH\_TASK unless a complete field replacement is explicitly required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                                                                                                                                               |
| ------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `due`         | string |          | —       | Due date of the task (RFC 3339 timestamp).                                                                                                                                                                |
| `notes`       | string |          | —       | Notes describing the task.                                                                                                                                                                                |
| `title`       | string |          | —       | Title of the task.                                                                                                                                                                                        |
| `status`      | string |          | —       | Status of the task. Valid values: "needsAction" or "completed". When setting to "completed", the completion date will be auto-set to the current time if not explicitly provided via the completed field. |
| `task_id`     | string |     ✅    | —       | Task identifier.                                                                                                                                                                                          |
| `completed`   | string |          | —       | Completion date of the task (RFC 3339 timestamp).                                                                                                                                                         |
| `tasklist_id` | string |     ✅    | —       | Task list identifier.                                                                                                                                                                                     |

***

### `Googletasks Update Task Full`

Integration name: **GOOGLETASKS\_UPDATE\_TASK\_FULL**

Tool to fully replace an existing Google Task using PUT method. Use when you need to update the entire task resource, not just specific fields. This method requires all required fields (id, title) and replaces the complete task, unlike PATCH which supports partial updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                          | Description                                                                                                                                                                   |
| ------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string  |     ✅    | —                                                | Task identifier (REQUIRED). Must match the task\_id parameter. This field is required by the Google Tasks API for PUT operations.                                             |
| `due`         | string  |          | —                                                | Due date for the task. NOTE: Google Tasks only stores the date portion (YYYY-MM-DD). Accepts RFC3339 format (e.g., '2025-09-28T00:00:00Z') or date strings like '2025-09-28'. |
| `etag`        | string  |          | —                                                | ETag of the resource for concurrency control. Prevents accidental overwrites when multiple clients modify the same task.                                                      |
| `links`       | array   |          | —                                                | Collection of links attached to the task. This collection is read-only.                                                                                                       |
| `notes`       | string  |          | —                                                | Additional details or description for the task. Supports plain text only. Maximum 8192 characters.                                                                            |
| `title`       | string  |     ✅    | —                                                | Title/name of the task (REQUIRED). This is the main text displayed for the task. Maximum 1024 characters.                                                                     |
| `hidden`      | boolean |          | —                                                | Whether the task is hidden. This is read-only and set by the API when task list is cleared. Default: false                                                                    |
| `parent`      | string  |          | —                                                | Parent task identifier for subtasks. This field is read-only. Use the 'move' method to change parent.                                                                         |
| `status`      | string  |          | —                                                | Current status of the task. Must be either 'needsAction' (task is pending) or 'completed' (task is done).                                                                     |
| `deleted`     | boolean |          | —                                                | Whether the task has been deleted. Deleted tasks are marked but not immediately removed. Default: false                                                                       |
| `task_id`     | string  |     ✅    | `"MDQ1NzM3ODI0NzM2NzY0NjA4MDk6MTU4MzM3MDQ4OTow"` | Identifier of the Google Task to be fully replaced within the specified task list. This must also be included in the 'id' field of the request body.                          |
| `position`    | string  |          | —                                                | Position of the task among siblings. This field is read-only. Use the 'move' method to change position.                                                                       |
| `completed`   | string  |          | —                                                | Date/time when the task was marked as completed. Only applicable when status='completed'. Unlike 'due', this field preserves the time component. Accepts RFC3339 format.      |
| `tasklist_id` | string  |     ✅    | `"MDQ1NzM3ODI0NzM2NzY0NjA4MDk6MDow"`             | Identifier of the Google Task list that contains the task to be updated.                                                                                                      |

***

### `Googletasks Update Task List`

Integration name: **GOOGLETASKS\_UPDATE\_TASK\_LIST**

Updates the authenticated user's specified task list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                                      |
| ------------- | ------ | :------: | ------------------------------------ | ---------------------------------------------------------------- |
| `title`       | string |     ✅    | `"New Task List Title"`              | Title of the task list. Maximum length allowed: 1024 characters. |
| `tasklist_id` | string |     ✅    | `"MDQ1NTE1OTM4NDM5MzM2MTQ4NzM6MDow"` | Task list identifier.                                            |


# Gorgias

Your Toolhouse AI Worker can connect to Gorgias using 32 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](https://toolhouse.app/auth-connections?authkit_slugs=gorgias).

## Tools (32)

### `Gorgias Add Ticket Tags`

Integration name: **GORGIAS\_ADD\_TICKET\_TAGS**

Adds tags to a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                          |
| ----------- | ------- | :------: | ------- | ------------------------------------ |
| `tag_ids`   | array   |     ✅    | —       | List of tag IDs to add to the ticket |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket                 |

### `Gorgias Create Account Setting`

Integration name: **GORGIAS\_CREATE\_ACCOUNT\_SETTING**

Creates a new account setting in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                |
| ------------- | ------ | :------: | ------- | -------------------------- |
| `name`        | string |     ✅    | —       | The name of the setting    |
| `value`       | string |     ✅    | —       | The value of the setting   |
| `description` | string |          | —       | Description of the setting |

### `Gorgias Create Customer`

Integration name: **GORGIAS\_CREATE\_CUSTOMER**

Creates a new customer in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                           |
| ------------- | ------ | :------: | ------- | ------------------------------------- |
| `data`        | object |          | —       | Additional customer data              |
| `name`        | string |     ✅    | —       | The customer's full name              |
| `email`       | string |          | —       | The customer's email address          |
| `address`     | object |          | —       | The customer's address information    |
| `channels`    | array  |          | —       | The customer's communication channels |
| `external_id` | string |          | —       | External identifier for the customer  |

### `Gorgias Create Team`

Integration name: **GORGIAS\_CREATE\_TEAM**

Creates a new team in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                           |
| ------------- | ------ | :------: | ------- | ----------------------------------------------------- |
| `name`        | string |     ✅    | —       | Name of the team                                      |
| `members`     | array  |          | —       | The list of users within the team                     |
| `decoration`  | object |          | —       | Object describing how the team appears on the webpage |
| `description` | string |          | —       | Longer description of the team                        |

### `Gorgias Create Ticket`

Integration name: **GORGIAS\_CREATE\_TICKET**

Creates a new ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                                                |
| ------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------- |
| `via`              | string  |     ✅    | —       | How the first message of the ticket has been received or sent from Gorgias |
| `meta`             | object  |          | —       | Extra metadata about the ticket                                            |
| `tags`             | array   |          | —       | List of tag IDs to apply to the ticket                                     |
| `status`           | string  |          | —       | The status of the ticket                                                   |
| `channel`          | string  |          | —       | The channel of the ticket (email, chat, etc.)                              |
| `subject`          | string  |          | —       | The subject of the ticket                                                  |
| `customer`         | object  |          | —       | Customer information (id, name, or email)                                  |
| `language`         | string  |          | —       | The language of the ticket                                                 |
| `messages`         | array   |     ✅    | —       | Messages of the ticket                                                     |
| `priority`         | string  |          | —       | The priority of the ticket                                                 |
| `external_id`      | string  |          | —       | External identifier for the ticket                                         |
| `assignee_team_id` | integer |          | —       | ID of the team to assign the ticket to                                     |
| `assignee_user_id` | integer |          | —       | ID of the user to assign the ticket to                                     |

### `Gorgias Delete Customer`

Integration name: **GORGIAS\_DELETE\_CUSTOMER**

Deletes a specific customer from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                      |
| ------------- | ------- | :------: | ------- | -------------------------------- |
| `customer_id` | integer |     ✅    | —       | The ID of the customer to delete |

### `Gorgias Delete Customer Field Value`

Integration name: **GORGIAS\_DELETE\_CUSTOMER\_FIELD\_VALUE**

Deletes a specific field value for a customer in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                |
| ------------- | ------- | :------: | ------- | -------------------------- |
| `field_id`    | integer |     ✅    | —       | The ID of the custom field |
| `customer_id` | integer |     ✅    | —       | The ID of the customer     |

### `Gorgias Delete Customers`

Integration name: **GORGIAS\_DELETE\_CUSTOMERS**

Deletes multiple customers from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type  | Required | Example | Description                    |
| -------------- | ----- | :------: | ------- | ------------------------------ |
| `customer_ids` | array |     ✅    | —       | List of customer IDs to delete |

### `Gorgias Delete Team`

Integration name: **GORGIAS\_DELETE\_TEAM**

Deletes a specific team from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                  |
| --------- | ------- | :------: | ------- | ---------------------------- |
| `team_id` | integer |     ✅    | —       | The ID of the team to delete |

### `Gorgias Delete Ticket`

Integration name: **GORGIAS\_DELETE\_TICKET**

Deletes a specific ticket from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                    |
| ----------- | ------- | :------: | ------- | ------------------------------ |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket to delete |

### `Gorgias Delete Ticket Field Value`

Integration name: **GORGIAS\_DELETE\_TICKET\_FIELD\_VALUE**

Deletes a specific field value for a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                |
| ----------- | ------- | :------: | ------- | -------------------------- |
| `field_id`  | integer |     ✅    | —       | The ID of the custom field |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket       |

### `Gorgias Get Account`

Integration name: **GORGIAS\_GET\_ACCOUNT**

Retrieves your Gorgias account information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

### `Gorgias Get Customer`

Integration name: **GORGIAS\_GET\_CUSTOMER**

Retrieves a specific customer from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                        |
| ------------- | ------- | :------: | ------- | ---------------------------------- |
| `customer_id` | integer |     ✅    | —       | The ID of the customer to retrieve |

### `Gorgias Get Event`

Integration name: **GORGIAS\_GET\_EVENT**

Retrieves a specific event from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                     |
| ---------- | ------- | :------: | ------- | ------------------------------- |
| `event_id` | integer |     ✅    | —       | The ID of the event to retrieve |

### `Gorgias Get Team`

Integration name: **GORGIAS\_GET\_TEAM**

Retrieves a specific team from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                    |
| --------- | ------- | :------: | ------- | ------------------------------ |
| `team_id` | integer |     ✅    | —       | The ID of the team to retrieve |

### `Gorgias Get Ticket`

Integration name: **GORGIAS\_GET\_TICKET**

Retrieves a specific ticket from Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                      |
| ----------- | ------- | :------: | ------- | -------------------------------- |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket to retrieve |

### `Gorgias List Account Settings`

Integration name: **GORGIAS\_LIST\_ACCOUNT\_SETTINGS**

Lists all account settings in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                          |
| --------- | ------- | :------: | ------- | ---------------------------------------------------- |
| `limit`   | integer |          | —       | Number of settings to return (default: 20, max: 100) |
| `offset`  | integer |          | —       | Offset for pagination                                |

### `Gorgias List Customer Field Values`

Integration name: **GORGIAS\_LIST\_CUSTOMER\_FIELD\_VALUES**

Lists all field values for a customer in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description            |
| ------------- | ------- | :------: | ------- | ---------------------- |
| `customer_id` | integer |     ✅    | —       | The ID of the customer |

### `Gorgias List Customers`

Integration name: **GORGIAS\_LIST\_CUSTOMERS**

Lists customers in Gorgias with various filtering options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                           |
| -------------- | ------- | :------: | ------- | ----------------------------------------------------- |
| `name`         | string  |          | —       | Filter by customer name                               |
| `email`        | string  |          | —       | Filter by customer email                              |
| `limit`        | integer |          | —       | Number of customers to return (default: 20, max: 100) |
| `offset`       | integer |          | —       | Offset for pagination                                 |
| `order_by`     | string  |          | —       | Field to order by (e.g., 'created\_datetime')         |
| `order_dir`    | string  |          | —       | Order direction ('asc' or 'desc')                     |
| `created_to`   | string  |          | —       | Filter by creation date (ISO format)                  |
| `external_id`  | string  |          | —       | Filter by external ID                                 |
| `created_from` | string  |          | —       | Filter by creation date (ISO format)                  |

### `Gorgias List Events`

Integration name: **GORGIAS\_LIST\_EVENTS**

Lists events in Gorgias with various filtering options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                            |
| -------------- | ------- | :------: | ------- | -------------------------------------- |
| `type`         | string  |          | —       | Filter by event type                   |
| `limit`        | integer |          | —       | Number of events to return ( max: 100) |
| `offset`       | integer |          | —       | Offset for pagination                  |
| `context`      | string  |          | —       | Filter by context UUID                 |
| `user_id`      | integer |          | —       | Filter by user ID                      |
| `object_id`    | integer |          | —       | Filter by object ID                    |
| `created_to`   | string  |          | —       | Filter by creation date (ISO format)   |
| `object_type`  | string  |          | —       | Filter by object type                  |
| `created_from` | string  |          | —       | Filter by creation date (ISO format)   |

### `Gorgias List Teams`

Integration name: **GORGIAS\_LIST\_TEAMS**

Lists teams in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                  |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------ |
| `limit`   | integer |          | —       | Maximum number of teams to return per page (default: 20, max: 100).                                          |
| `cursor`  | string  |          | —       | Cursor for pagination. Use the value of 'meta.next\_cursor' from a previous response to fetch the next page. |

### `Gorgias List Ticket Field Values`

Integration name: **GORGIAS\_LIST\_TICKET\_FIELD\_VALUES**

Lists all field values for a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description          |
| ----------- | ------- | :------: | ------- | -------------------- |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket |

### `Gorgias List Tickets`

Integration name: **GORGIAS\_LIST\_TICKETS**

Lists tickets in Gorgias with various filtering options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                                         |
| ------------------ | ------- | :------: | ------- | --------------------------------------------------- |
| `limit`            | integer |          | —       | Number of tickets to return (default: 20, max: 100) |
| `offset`           | integer |          | —       | Offset for pagination                               |
| `status`           | string  |          | —       | Filter by ticket status                             |
| `tag_id`           | integer |          | —       | Filter by tag ID                                    |
| `channel`          | string  |          | —       | Filter by ticket channel                            |
| `language`         | string  |          | —       | Filter by language                                  |
| `order_by`         | string  |          | —       | Field to order by (e.g., 'created\_datetime')       |
| `priority`         | string  |          | —       | Filter by ticket priority                           |
| `order_dir`        | string  |          | —       | Order direction ('asc' or 'desc')                   |
| `created_to`       | string  |          | —       | Filter by creation date (ISO format)                |
| `updated_to`       | string  |          | —       | Filter by update date (ISO format)                  |
| `customer_id`      | integer |          | —       | Filter by customer ID                               |
| `external_id`      | string  |          | —       | Filter by external ID                               |
| `created_from`     | string  |          | —       | Filter by creation date (ISO format)                |
| `updated_from`     | string  |          | —       | Filter by update date (ISO format)                  |
| `assignee_team_id` | integer |          | —       | Filter by assigned team ID                          |
| `assignee_user_id` | integer |          | —       | Filter by assigned user ID                          |

### `Gorgias List Ticket Tags`

Integration name: **GORGIAS\_LIST\_TICKET\_TAGS**

Lists all tags for a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description          |
| ----------- | ------- | :------: | ------- | -------------------- |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket |

### `Gorgias Merge Customers`

Integration name: **GORGIAS\_MERGE\_CUSTOMERS**

Merges two customers in Gorgias, combining their data and history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                    |
| -------------------- | ------- | :------: | ------- | -------------------------------------------------------------- |
| `source_customer_id` | integer |     ✅    | —       | The ID of the source customer (will be merged into the target) |
| `target_customer_id` | integer |     ✅    | —       | The ID of the target customer (will remain after merge)        |

### `Gorgias Remove Ticket Tags`

Integration name: **GORGIAS\_REMOVE\_TICKET\_TAGS**

Removes tags from a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                               |
| ----------- | ------- | :------: | ------- | ----------------------------------------- |
| `tag_ids`   | array   |     ✅    | —       | List of tag IDs to remove from the ticket |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket                      |

### `Gorgias Set Customer Data`

Integration name: **GORGIAS\_SET\_CUSTOMER\_DATA**

Sets the complete data object for a customer in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                      |
| ------------- | ------- | :------: | ------- | ------------------------------------------------ |
| `data`        | object  |     ✅    | —       | The complete data object to set for the customer |
| `customer_id` | integer |     ✅    | —       | The ID of the customer                           |

### `Gorgias Set Ticket Tags`

Integration name: **GORGIAS\_SET\_TICKET\_TAGS**

Sets the complete list of tags for a ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                           |
| ----------- | ------- | :------: | ------- | ------------------------------------- |
| `tag_ids`   | array   |     ✅    | —       | List of tag IDs to set for the ticket |
| `ticket_id` | integer |     ✅    | —       | The ID of the ticket                  |

### `Gorgias Update Account Setting`

Integration name: **GORGIAS\_UPDATE\_ACCOUNT\_SETTING**

Updates an existing account setting in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                        |
| ------------- | ------- | :------: | ------- | ---------------------------------- |
| `value`       | string  |     ✅    | —       | The new value of the setting       |
| `setting_id`  | integer |     ✅    | —       | The ID of the setting to update    |
| `description` | string  |          | —       | Updated description of the setting |

### `Gorgias Update Customer`

Integration name: **GORGIAS\_UPDATE\_CUSTOMER**

Updates an existing customer in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                           |
| ------------- | ------- | :------: | ------- | ------------------------------------- |
| `data`        | object  |          | —       | Additional customer data              |
| `name`        | string  |          | —       | The customer's full name              |
| `email`       | string  |          | —       | The customer's email address          |
| `address`     | object  |          | —       | The customer's address information    |
| `channels`    | array   |          | —       | The customer's communication channels |
| `customer_id` | integer |     ✅    | —       | The ID of the customer to update      |
| `external_id` | string  |          | —       | External identifier for the customer  |

### `Gorgias Update Team`

Integration name: **GORGIAS\_UPDATE\_TEAM**

Updates an existing team in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                           |
| ------------- | ------- | :------: | ------- | ----------------------------------------------------- |
| `name`        | string  |          | —       | Name of the team                                      |
| `members`     | array   |          | —       | The list of users within the team                     |
| `team_id`     | integer |     ✅    | —       | The ID of the team to update                          |
| `decoration`  | object  |          | —       | Object describing how the team appears on the webpage |
| `description` | string  |          | —       | Longer description of the team                        |

### `Gorgias Update Ticket`

Integration name: **GORGIAS\_UPDATE\_TICKET**

Updates an existing ticket in Gorgias.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example | Description                            |
| ------------------ | ------- | :------: | ------- | -------------------------------------- |
| `meta`             | object  |          | —       | Extra metadata about the ticket        |
| `status`           | string  |          | —       | The status of the ticket               |
| `subject`          | string  |          | —       | The subject of the ticket              |
| `language`         | string  |          | —       | The language of the ticket             |
| `priority`         | string  |          | —       | The priority of the ticket             |
| `ticket_id`        | integer |     ✅    | —       | The ID of the ticket to update         |
| `customer_id`      | integer |          | —       | The ID of the customer for this ticket |
| `external_id`      | string  |          | —       | External identifier for the ticket     |
| `assignee_team_id` | integer |          | —       | ID of the team to assign the ticket to |
| `assignee_user_id` | integer |          | —       | ID of the user to assign the ticket to |


# Gumroad

Your Toolhouse AI Worker can connect to Gumroad using 7 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](https://toolhouse.app/auth-connections?authkit_slugs=gumroad).

## Tools (7)

### `Gumroad Get Resource Subscriptions`

**Integration name:** `GUMROAD_GET_RESOURCE_SUBSCRIPTIONS`

Tool to show all active subscriptions of the user for the input resource. Use when you need to review existing webhooks before adding a new one.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example  | Description                                                                             |
| --------------- | ------ | :------: | -------- | --------------------------------------------------------------------------------------- |
| `resource_name` | string |     ✅    | `"sale"` | Name of the resource to list subscriptions for. One of the eight supported event types. |

***

### `Gumroad Get Sales`

**Integration name:** `GUMROAD_GET_SALES`

Tool to retrieve all successful sales by the authenticated user; excludes failed charges, abandoned carts, and page views — conversion rates cannot be derived from this data. Use when you need to list your Gumroad sales, optionally filtering by email, date range, product, or pagination. For high sales volumes, combine `product_id` and/or `after`/`before` filters with `page` to avoid large unfiltered result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                  | Description                                                                     |
| ------------ | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------- |
| `page`       | integer |          | `1`                      | Page number for paginated results; minimum is 1.                                |
| `after`      | string  |          | —                        | Only include sales after this ISO8601 date/time (e.g., '2023-01-01T00:00:00Z'). |
| `email`      | string  |          | `"customer@example.com"` | Filter sales by customer email address.                                         |
| `before`     | string  |          | —                        | Only include sales before this ISO8601 date/time.                               |
| `product_id` | string  |          | `"prod_ABC123"`          | Filter sales by a specific product ID.                                          |

***

### `Gumroad Get User`

**Integration name:** `GUMROAD_GET_USER`

Tool to retrieve the authenticated user's data. Use when you need the current user's profile details after authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gumroad List Products`

**Integration name:** `GUMROAD_LIST_PRODUCTS`

Tool to retrieve all products for the authenticated Gumroad account. Use when you need product IDs for downstream operations like license verification, subscriber retrieval, or offer-code management.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Gumroad Subscribe To Resource`

**Integration name:** `GUMROAD_SUBSCRIBE_TO_RESOURCE`

Tool to subscribe to a resource. Use when you need to receive real-time event webhooks after creating your webhook endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                         | Description                                                   |
| --------------- | ------ | :------: | ------------------------------- | ------------------------------------------------------------- |
| `post_url`      | string |     ✅    | `"https://example.com/webhook"` | Your endpoint URL that will receive HTTP POST notifications.  |
| `resource_name` | string |     ✅    | `"sale"`                        | One of the eight supported Gumroad resources to subscribe to. |

***

### `Gumroad Unsubscribe From Resource`

**Integration name:** `GUMROAD_UNSUBSCRIBE_FROM_RESOURCE`

Tool to unsubscribe from a resource. Use after verifying the subscription ID exists to remove webhook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type   | Required | Example                      | Description                                      |
| -------------------------- | ------ | :------: | ---------------------------- | ------------------------------------------------ |
| `resource_subscription_id` | string |     ✅    | `"G_-mnBf9b1j9A7a4ub4nFQ=="` | Unique ID of the resource subscription to delete |

***

### `Gumroad Verify License`

**Integration name:** `GUMROAD_VERIFY_LICENSE`

Tool to verify a Gumroad license key against a specific product. Use when you need to check if a license key is valid, check usage count, or verify membership entitlement for software licensing or gated content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                 | Description                                                                                          |
| ---------------------- | ------- | :------: | ----------------------- | ---------------------------------------------------------------------------------------------------- |
| `product_id`           | string  |     ✅    | `"prod_ABC123"`         | The product ID to verify the license against. Required for products created on or after Jan 9, 2023. |
| `license_key`          | string  |     ✅    | `"ABCD-EFGH-IJKL-MNOP"` | The license key to verify.                                                                           |
| `increment_uses_count` | boolean |          | —                       | Whether to increment the uses count for the license. Defaults to true if not specified.              |

***


# Harvest

Your Toolhouse AI Worker can connect to Harvest using 57 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](https://toolhouse.app/auth-connections?authkit_slugs=harvest).

## Tools (57)

### `Harvest Create Client`

Integration name: **HARVEST\_CREATE\_CLIENT**

Tool to create a new client. Use after gathering client details to register a new client in Harvest.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                            | Description                                                                           |
| ----------- | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------- |
| `name`      | string  |     ✅    | `"Acme Corporation"`               | The name of the client or company.                                                    |
| `address`   | string  |          | `"123 Main St\nAnytown, CA 12345"` | The client's physical address. May include new line characters.                       |
| `currency`  | string  |          | `"EUR"`                            | ISO currency code for the client. If omitted, the company's default currency is used. |
| `is_active` | boolean |          | —                                  | Whether the client is active, or archived. Defaults to true.                          |

***

### `Harvest Create Client Contact`

Integration name: **HARVEST\_CREATE\_CLIENT\_CONTACT**

Tool to create a new client contact. Use when you need to add a contact under an existing client. Call after you've retrieved or confirmed the client\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                    | Description                                     |
| -------------- | ------- | :------: | -------------------------- | ----------------------------------------------- |
| `fax`          | string  |          | `"+1-555-8765"`            | Contact's fax number.                           |
| `email`        | string  |          | `"john.doe@example.com"`   | Contact's email address.                        |
| `title`        | string  |          | `"Director of Operations"` | Title of the contact (e.g., 'Director of Ops'). |
| `client_id`    | integer |     ✅    | `12345`                    | ID of the client associated with this contact.  |
| `last_name`    | string  |          | `"Doe"`                    | Last name of the contact.                       |
| `first_name`   | string  |     ✅    | `"John"`                   | First name of the contact.                      |
| `phone_mobile` | string  |          | `"+1-555-5678"`            | Contact's mobile phone number.                  |
| `phone_office` | string  |          | `"+1-555-1234"`            | Contact's office phone number.                  |

***

### `Harvest Create Estimate`

Integration name: **HARVEST\_CREATE\_ESTIMATE**

Tool to create a new estimate. Use after gathering client and line item details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                          | Description                                                       |
| ---------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------- |
| `tax`            | number  |          | `10`                             | First tax percentage applied to subtotal, e.g., 10.0 for 10%.     |
| `tax2`           | number  |          | `5`                              | Second tax percentage applied to subtotal, e.g., 5.0 for 5%.      |
| `notes`          | string  |          | `"Thank you for your business."` | Additional notes to include on the estimate.                      |
| `number`         | string  |          | `"2023-0001"`                    | If not set, the estimate number will be auto-generated.           |
| `subject`        | string  |          | `"Website Redesign"`             | Estimate subject.                                                 |
| `currency`       | string  |          | `"USD"`                          | Currency for the estimate; defaults to client's currency.         |
| `discount`       | number  |          | `15`                             | Discount percentage subtracted from subtotal, e.g., 15.0 for 15%. |
| `client_id`      | integer |     ✅    | `123456`                         | ID of the client this estimate belongs to.                        |
| `issue_date`     | string  |          | `"2023-04-01"`                   | Date the estimate was issued (YYYY-MM-DD); defaults to today.     |
| `line_items`     | array   |          | —                                | List of line items to include on the estimate.                    |
| `purchase_order` | string  |          | `"PO-7890"`                      | The purchase order number.                                        |

***

### `Harvest Create Estimate Item Category`

Integration name: **HARVEST\_CREATE\_ESTIMATE\_ITEM\_CATEGORY**

Tool to create a new estimate item category in Harvest. Use after deciding to categorize line items within an estimate.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                             |
| --------- | ------ | :------: | ------------- | --------------------------------------- |
| `name`    | string |     ✅    | `"Materials"` | The name of the estimate item category. |

***

### `Harvest Create Estimate Message`

Integration name: **HARVEST\_CREATE\_ESTIMATE\_MESSAGE**

Tool to create a new message for an estimate. Use when you have an estimate ID and want to send a message or run an event (send, accept, decline, re-open) on the estimate.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example   | Description                                                                             |
| ---------------- | ------- | :------: | --------- | --------------------------------------------------------------------------------------- |
| `body`           | string  |          | —         | The message body.                                                                       |
| `subject`        | string  |          | —         | The message subject.                                                                    |
| `event_type`     | string  |          | —         | If provided, runs an event on the estimate. Options: accept, decline, re-open, or send. |
| `recipients`     | array   |          | —         | Array of recipient parameters. Required unless performing an event-only call.           |
| `estimate_id`    | integer |     ✅    | `1439818` | ID of the estimate to add a message to.                                                 |
| `send_me_a_copy` | boolean |          | —         | Whether to email a copy of the message to the current user. Defaults to false.          |

***

### `Harvest Create Expense`

Integration name: **HARVEST\_CREATE\_EXPENSE**

Tool to create a new expense entry. Use when recording costs against projects. Ensure either units or total\_cost is provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example               | Description                                                                               |
| --------------------- | ------- | :------: | --------------------- | ----------------------------------------------------------------------------------------- |
| `notes`               | string  |          | `"Lunch with client"` | Textual notes describing the expense.                                                     |
| `units`               | number  |          | `1`                   | Quantity of units to use for calculating total\_cost. Required for unit-based categories. |
| `receipt`             | string  |          | —                     | Receipt file to attach. Multipart/form-data upload not supported by this tool.            |
| `user_id`             | integer |          | `1782959`             | ID of the user associated with this expense. Defaults to the authenticated user.          |
| `billable`            | boolean |          | `true`                | Whether the expense is billable. Defaults to true.                                        |
| `project_id`          | integer |     ✅    | `14308069`            | ID of the project associated with this expense.                                           |
| `spent_date`          | string  |     ✅    | `"2017-03-01"`        | Date the expense occurred (YYYY-MM-DD).                                                   |
| `total_cost`          | number  |          | `13.59`               | Total amount of the expense. Required if not using a unit-based category.                 |
| `expense_category_id` | integer |     ✅    | `4195926`             | ID of the expense category this expense is tracked against.                               |

***

### `Harvest Create Invoice`

Integration name: **HARVEST\_CREATE\_INVOICE**

Tool to create a new invoice. Use when you have gathered all invoice details and need to bill a client in Harvest.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                          | Description                                                       |
| ---------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------- |
| `tax`            | —       |          | `5`                              | First tax rate applied to the invoice (0-100).                    |
| `tax2`           | —       |          | `2.5`                            | Second tax rate applied to the invoice (0-100).                   |
| `notes`          | string  |          | `"Thank you for your business!"` | Additional notes on the invoice.                                  |
| `state`          | string  |          | —                                | State of the invoice. Options: 'draft', 'open', 'paid', 'closed'. |
| `number`         | string  |          | `"INV-1001"`                     | Custom invoice number (e.g., 'INV-1001').                         |
| `subject`        | string  |          | `"January Consulting"`           | Subject of the invoice.                                           |
| `currency`       | string  |          | `"USD"`                          | Currency code (e.g., 'USD').                                      |
| `discount`       | —       |          | `10`                             | Percentage discount applied to the invoice (0-100).               |
| `due_date`       | string  |          | `"2023-02-15"`                   | Date the invoice is due (YYYY-MM-DD).                             |
| `client_id`      | integer |     ✅    | `12345`                          | ID of the client to associate with the invoice.                   |
| `issue_date`     | string  |          | `"2023-01-15"`                   | Date the invoice was issued (YYYY-MM-DD).                         |
| `line_items`     | array   |     ✅    | —                                | Array of line item objects to include in the invoice.             |
| `purchase_order` | string  |          | `"PO-1234"`                      | Purchase order number.                                            |

***

### `Harvest Create Invoice Item Category`

Integration name: **HARVEST\_CREATE\_INVOICE\_ITEM\_CATEGORY**

Tool to create a new invoice item category. Use after you have decided on the category name to register it in Harvest.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                            |
| --------- | ------ | :------: | ----------- | -------------------------------------- |
| `name`    | string |     ✅    | `"Hosting"` | The name of the invoice item category. |

***

### `Harvest Create Invoice Message`

Integration name: **HARVEST\_CREATE\_INVOICE\_MESSAGE**

Creates a new message for an invoice in Harvest. Use this to send invoice notifications to clients, create draft messages, or change invoice states (close/reopen). Requires a valid invoice ID. The invoice must be in the appropriate state for the requested event\_type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                                                                                                      |
| -------------------------------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `body`                           | string  |          | `"Please review the attached invoice."` | The message body                                                                                                                                                                                                                                                                                                                                 |
| `subject`                        | string  |          | `"Your Invoice is Ready"`               | The message subject                                                                                                                                                                                                                                                                                                                              |
| `thank_you`                      | boolean |          | —                                       | If true, send a thank you message email                                                                                                                                                                                                                                                                                                          |
| `attach_pdf`                     | boolean |          | —                                       | If true, attach a PDF of the invoice to the message email                                                                                                                                                                                                                                                                                        |
| `event_type`                     | string  |          | `"send"`                                | Invoice event type controls message sending and invoice state changes. Options: null/'send' - sends the message (invoice must be draft); 'draft' - creates message without sending; 'close' - closes invoice as written off (invoice must be open); 're-open' - reopens closed invoice (invoice must be closed). Default: null (same as 'send'). |
| `invoice_id`                     | integer |     ✅    | `123456`                                | ID of the invoice to message                                                                                                                                                                                                                                                                                                                     |
| `recipients`                     | array   |          | —                                       | List of message recipients. If omitted and send\_me\_a\_copy is false, the message will have no recipients and the request may fail. Required when event\_type is 'send' or omitted (null) and send\_me\_a\_copy is false.                                                                                                                       |
| `send_me_a_copy`                 | boolean |          | —                                       | If true, send a copy of the message email to the current user                                                                                                                                                                                                                                                                                    |
| `include_link_to_client_invoice` | boolean |          | —                                       | Deprecated. Ignored if true; if false, clears payment options on the invoice.                                                                                                                                                                                                                                                                    |

***

### `Harvest Create Invoice Payment`

Integration name: **HARVEST\_CREATE\_INVOICE\_PAYMENT**

Tool to create a new payment on an invoice. Use when recording a payment against an existing invoice.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                  | Description                                                                                                                                                                                                                                        |
| ---------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `notes`          | string  |          | `"Paid by phone"`        | Any notes to be associated with the payment.                                                                                                                                                                                                       |
| `amount`         | —       |     ✅    | `1575.86`                | The amount of the payment.                                                                                                                                                                                                                         |
| `paid_at`        | string  |          | `"2017-07-24T13:32:18Z"` | Date and time the payment was made (ISO 8601 format). Provide either paid\_at or paid\_date (at least one is required), but not both.                                                                                                              |
| `paid_date`      | string  |          | `"2017-07-24"`           | Date the payment was made (YYYY-MM-DD format). Provide either paid\_date or paid\_at (at least one is required), but not both.                                                                                                                     |
| `invoice_id`     | integer |     ✅    | `13150378`               | ID of the invoice to add a payment to.                                                                                                                                                                                                             |
| `send_thank_you` | boolean |          | `true`                   | Whether to send a thank you email to the client. Emails are only sent when the invoice becomes fully paid after this payment. Defaults to true if not specified. Requires account email settings to be enabled in Invoices > Configure > Messages. |

***

### `Harvest Create Project`

Integration name: **HARVEST\_CREATE\_PROJECT**

Create a new project in Harvest. A project is a container for tracking time, expenses, and invoices for a specific client engagement. Required: You must provide a valid client\_id (use list\_clients or create\_client first), project name, and billing configuration (is\_billable, bill\_by, budget\_by). Common use cases: - Time & Materials: is\_billable=true, bill\_by="Tasks", budget\_by="project" - Fixed Fee: is\_billable=true, bill\_by="Project", budget\_by="none", is\_fixed\_fee=true - Internal/Non-billable: is\_billable=false, bill\_by="none", budget\_by="none"

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                             | Type    | Required | Example              | Description                                                                 |
| ------------------------------------- | ------- | :------: | -------------------- | --------------------------------------------------------------------------- |
| `fee`                                 | number  |          | `2000`               | The fee for the project when billing by project.                            |
| `code`                                | string  |          | `"PRJ001"`           | The project code.                                                           |
| `name`                                | string  |     ✅    | `"Website Redesign"` | Name of the project.                                                        |
| `notes`                               | string  |          | —                    | Any additional notes about the project.                                     |
| `budget`                              | number  |          | `1000`               | The monetary budget for the project.                                        |
| `bill_by`                             | string  |     ✅    | `"Tasks"`            | The method by which the project is invoiced. Required by the Harvest API.   |
| `ends_on`                             | string  |          | —                    | Date the project ends (YYYY-MM-DD).                                         |
| `budget_by`                           | string  |     ✅    | `"project"`          | The method by which the project is budgeted. Required by the Harvest API.   |
| `client_id`                           | integer |     ✅    | `123`                | ID of the client to associate this project with.                            |
| `is_active`                           | boolean |          | —                    | Whether the project is active (true) or archived (false). Defaults to true. |
| `starts_on`                           | string  |          | —                    | Date the project starts (YYYY-MM-DD).                                       |
| `cost_budget`                         | number  |          | `500`                | The monetary cost budget for the project.                                   |
| `hourly_rate`                         | number  |          | `150`                | The default hourly rate to use for this project when billing by project.    |
| `is_billable`                         | boolean |     ✅    | —                    | Whether the project is billable. Required by the Harvest API.               |
| `is_fixed_fee`                        | boolean |          | —                    | Whether the project is a fixed-fee project.                                 |
| `budget_is_monthly`                   | boolean |          | —                    | Whether the budget resets every month.                                      |
| `show_budget_to_all`                  | boolean |          | —                    | Whether the budget is visible to all project members.                       |
| `notify_when_over_budget`             | boolean |          | —                    | Whether to send a notification when the project exceeds its budget.         |
| `cost_budget_include_expenses`        | boolean |          | —                    | Whether expenses are included in the cost budget.                           |
| `over_budget_notification_percentage` | number  |          | `80`                 | Percentage at which the over budget notification is triggered.              |

***

### `Harvest Create Task`

Integration name: **HARVEST\_CREATE\_TASK**

Creates a new task in Harvest. Tasks are reusable activity types (e.g., "Development", "Design", "Consulting") that can be assigned to projects for time tracking. Use this to define billable or non-billable work categories that your team will track time against.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example         | Description                                                                                                                               |
| --------------------- | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string  |     ✅    | `"Development"` | The name of the task to create. Must be unique across all tasks (both active and archived) in the Harvest account.                        |
| `is_active`           | boolean |          | —               | Whether the task is active (true) or archived (false). Archived tasks cannot be assigned to projects. If not specified, defaults to true. |
| `is_default`          | boolean |          | —               | Whether this task should be automatically added to all future projects. If not specified, defaults to false.                              |
| `billable_by_default` | boolean |          | —               | Whether the task is billable by default when added to a project. If not specified, defaults to true.                                      |
| `default_hourly_rate` | number  |          | `100`           | The default hourly rate (in account currency) for this task when added to a project. If not specified, defaults to 0.                     |

***

### `Harvest Create Time Entry`

Integration name: **HARVEST\_CREATE\_TIME\_ENTRY**

Tool to create a new time entry. Use when logging hours for a project by specifying start/end times or duration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| -------------------- | ------- | :------: | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `hours`              | —       |          | `8.5`          | Total hours to log. Only used when the Harvest account is configured for duration-based time tracking. If the account uses timestamp timers, this parameter is ignored and a running timer is started instead. Use started\_time and ended\_time for timestamp-based tracking.                                                                                                                                                                                          |
| `notes`              | string  |          | —              | Notes or description of the work performed                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `task_id`            | integer |     ✅    | `67890`        | ID of the task to associate with the time entry. The task must be assigned to the specified project. To find valid task IDs, use GET /projects/{project\_id}/task\_assignments to list tasks assigned to your project - the task ID is found in the 'task.id' field of each assignment. Using HARVEST\_LIST\_TASKS returns global tasks which may not be assigned to your project. The task must also be active; inactive tasks cause a 422 'Task doesn't exist' error. |
| `user_id`            | integer |          | `111`          | ID of the user; defaults to the authenticated user                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `ended_time`         | string  |          | —              | Time the entry ended (e.g., '5:00pm', '17:00'). Only used when the Harvest account is configured for timestamp-based time tracking. If omitted with started\_time, creates a running timer.                                                                                                                                                                                                                                                                             |
| `project_id`         | integer |     ✅    | `12345`        | ID of the project to associate with the time entry. Use HARVEST\_LIST\_PROJECTS to retrieve available project IDs. The authenticated user must be assigned to the project.                                                                                                                                                                                                                                                                                              |
| `spent_date`         | string  |     ✅    | `"2021-09-15"` | Date the time entry was spent (YYYY-MM-DD) Use the user's local date, not UTC, to avoid logging hours on the wrong date.                                                                                                                                                                                                                                                                                                                                                |
| `started_time`       | string  |          | —              | Time the entry started (e.g., '9:00am', '14:30'). Only used when the Harvest account is configured for timestamp-based time tracking. Omit ended\_time to create a running timer.                                                                                                                                                                                                                                                                                       |
| `external_reference` | object  |          | —              | Links this entry to an external system (task, project, etc.).                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Harvest Create User`

Integration name: **HARVEST\_CREATE\_USER**

Creates a new user in Harvest and sends an invitation email to the specified address. Use this action to add team members to your Harvest account. You can specify their role, permissions, rates, and whether they are employees or contractors. The user will receive an invitation email to activate their account. Required: first\_name, last\_name, and email. Optional: timezone, access roles, rates, weekly capacity, and business roles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ----------------------------------- | ------- | :------: | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email`                             | string  |     ✅    | `"george@example.com"`         | The email address of the user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `roles`                             | array   |          | —                              | Descriptive names of the business roles assigned to this person. Used for filtering reports, with no impact on permissions.                                                                                                                                                                                                                                                                                                                                                                                                      |
| `timezone`                          | string  |          | `"Eastern Time (US & Canada)"` | The user's timezone in Rails timezone format. Defaults to the company's timezone if not specified. Common values: 'Eastern Time (US & Canada)', 'Pacific Time (US & Canada)', 'Central Time (US & Canada)', 'Mountain Time (US & Canada)', 'UTC', 'London', 'Paris', 'Tokyo', 'Sydney', etc.                                                                                                                                                                                                                                     |
| `cost_rate`                         | number  |          | —                              | The cost rate to use for this user when calculating project costs. Defaults to 0.0.                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `is_active`                         | boolean |          | —                              | Whether the user is active or archived. Defaults to true.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `last_name`                         | string  |     ✅    | `"Frank"`                      | The last name of the user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `first_name`                        | string  |     ✅    | `"George"`                     | The first name of the user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `access_roles`                      | array   |          | `["administrator"]`            | Access role(s) that determine the user's permissions in Harvest. Primary roles (choose one): 'member' (default), 'manager', or 'administrator'. Additional manager-only roles (combine with 'manager'): 'project\_creator', 'billable\_rates\_manager', 'managed\_projects\_invoice\_drafter', 'managed\_projects\_invoice\_manager', 'client\_and\_task\_manager', 'time\_and\_expenses\_manager', 'estimates\_manager'. Note: Some roles have dependencies (e.g., invoice/estimates roles require 'billable\_rates\_manager'). |
| `is_contractor`                     | boolean |          | —                              | Whether the user is a contractor or an employee. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `weekly_capacity`                   | integer |          | `126000`                       | The number of hours per week this person is available to work in seconds. Defaults to 126000 (35 hours).                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `default_hourly_rate`               | number  |          | —                              | The billable rate to use for this user when added to a project. Defaults to 0.0.                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `has_access_to_all_future_projects` | boolean |          | —                              | Whether the user should be automatically added to future projects. Defaults to false.                                                                                                                                                                                                                                                                                                                                                                                                                                            |

***

### `Harvest Delete Client`

Integration name: **HARVEST\_DELETE\_CLIENT**

Tool to delete a client. Use when you need to remove a client that has no associated projects, invoices, or estimates. Call after confirming the client\_id exists and has no dependent resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example  | Description                     |
| ----------- | ------- | :------: | -------- | ------------------------------- |
| `client_id` | integer |     ✅    | `123456` | The ID of the client to delete. |

***

### `Harvest Delete Client Contact`

Integration name: **HARVEST\_DELETE\_CLIENT\_CONTACT**

Permanently deletes a client contact from Harvest. Use when you need to remove a contact that is no longer relevant. Requires Administrator or Manager permissions. The deletion cannot be undone, so verify the contact\_id before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                       |
| ------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------- |
| `contact_id` | integer |     ✅    | —       | The ID of the contact to delete. Returns 404 error if the contact does not exist. |

***

### `Harvest Delete Estimate`

Integration name: **HARVEST\_DELETE\_ESTIMATE**

Tool to delete an estimate. Use when you need to remove an estimate that is no longer needed. Call after confirming the estimate\_id exists and has no dependent resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example  | Description                       |
| ------------- | ------- | :------: | -------- | --------------------------------- |
| `estimate_id` | integer |     ✅    | `123456` | The ID of the estimate to delete. |

***

### `Harvest Delete Estimate Message`

Integration name: **HARVEST\_DELETE\_ESTIMATE\_MESSAGE**

Tool to delete an estimate message. Use when you need to remove a message from an estimate. Call after confirming estimate\_id and message\_id are correct.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example  | Description                                        |
| ------------- | ------- | :------: | -------- | -------------------------------------------------- |
| `message_id`  | integer |     ✅    | `654321` | The ID of the message to delete from the estimate. |
| `estimate_id` | integer |     ✅    | `123456` | The ID of the estimate.                            |

***

### `Harvest Delete Invoice`

Integration name: **HARVEST\_DELETE\_INVOICE**

Delete an invoice from Harvest. Removes the specified invoice permanently. Requires Administrator or Manager permissions with invoice editing access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                      |
| ------------ | ------- | :------: | -------- | -------------------------------- |
| `invoice_id` | integer |     ✅    | `123456` | The ID of the invoice to delete. |

***

### `Harvest Delete Invoice Item Category`

Integration name: **HARVEST\_DELETE\_INVOICE\_ITEM\_CATEGORY**

Tool to delete an invoice item category from Harvest. Returns 200 OK on success with no response body. Important: Deletion is only possible if both use\_as\_service and use\_as\_expense are false. Categories actively used for billable hours or expenses cannot be deleted. Use when you need to remove an obsolete or unused invoice item category. Requires Admin or Project Manager permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example  | Description                                    |
| -------------------------- | ------- | :------: | -------- | ---------------------------------------------- |
| `invoice_item_category_id` | integer |     ✅    | `123456` | The ID of the invoice item category to delete. |

***

### `Harvest Delete Invoice Message`

Integration name: **HARVEST\_DELETE\_INVOICE\_MESSAGE**

Tool to delete a message from an invoice. Use when you need to remove a specific message that is no longer relevant. Call after confirming the invoice\_id and message\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                     |
| ------------ | ------- | :------: | ---------- | ----------------------------------------------- |
| `invoice_id` | integer |     ✅    | `13150403` | The ID of the invoice to delete a message from. |
| `message_id` | integer |     ✅    | `27835324` | The ID of the message to be deleted.            |

***

### `Harvest Delete Invoice Payment`

Integration name: **HARVEST\_DELETE\_INVOICE\_PAYMENT**

Tool to delete an invoice payment. Use when you need to remove a payment from an invoice after confirming payment details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                             |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------- |
| `invoice_id` | integer |     ✅    | `1234`  | The ID of the invoice containing the payment to delete. |
| `payment_id` | integer |     ✅    | `5678`  | The ID of the invoice payment to delete.                |

***

### `Harvest Delete Project`

Integration name: **HARVEST\_DELETE\_PROJECT**

Tool to delete a project. Use when you need to remove a project and all its associated time entries and expenses; invoices remain intact. Call after confirming the project\_id exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                      |
| ------------ | ------- | :------: | -------- | -------------------------------- |
| `project_id` | integer |     ✅    | `987654` | The ID of the project to delete. |

***

### `Harvest Delete Task`

Integration name: **HARVEST\_DELETE\_TASK**

Tool to delete a task. Use when you need to remove a task that has no associated time entries. Call after confirming the task\_id exists and has no dependent time entries.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                   |
| --------- | ------- | :------: | -------- | ----------------------------- |
| `task_id` | integer |     ✅    | `123456` | The ID of the task to delete. |

***

### `Harvest Delete Time Entry`

Integration name: **HARVEST\_DELETE\_TIME\_ENTRY**

Tool to delete a time entry. Use when removing an existing time entry that is deletable (not closed or on archived projects/tasks). Call after confirming the time\_entry\_id exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example  | Description                         |
| --------------- | ------- | :------: | -------- | ----------------------------------- |
| `time_entry_id` | integer |     ✅    | `123456` | The ID of the time entry to delete. |

***

### `Harvest Delete User`

Integration name: **HARVEST\_DELETE\_USER**

Tool to delete a user. Use when you need to remove a user that has no associated time entries or expenses. Call after confirming the user\_id exists and has no dependent time entries or expenses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                   |
| --------- | ------- | :------: | -------- | ----------------------------- |
| `user_id` | integer |     ✅    | `123456` | The ID of the user to delete. |

***

### `Harvest Get Client`

Integration name: **HARVEST\_GET\_CLIENT**

Retrieves a specific client by ID from Harvest. Use this to get detailed information about a client including their name, active status, address, currency, and timestamps. Returns complete client details needed for invoicing, reporting, or verifying client information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                       |
| ----------- | ------- | :------: | ------- | --------------------------------- |
| `client_id` | integer |     ✅    | `12345` | The ID of the client to retrieve. |

***

### `Harvest Get Company Info`

Integration name: **HARVEST\_GET\_COMPANY\_INFO**

Retrieves detailed information about the company associated with the authenticated Harvest account. This endpoint returns comprehensive company settings including: - Basic information (name, domain, active status) - Time tracking preferences (format, week start day, timer type) - Localization settings (date/time format, currency, separators) - Feature flags (expenses, invoices, estimates, approvals, team scheduling) - Weekly capacity and other operational settings No parameters required. Use this to understand company configuration before performing other operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Harvest Get Estimate`

Integration name: **HARVEST\_GET\_ESTIMATE**

Tool to retrieve a specific estimate by ID. Use after confirming the estimate ID. Example: "Get estimate with ID 123456".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example  | Description                     |
| ------------- | ------- | :------: | -------- | ------------------------------- |
| `estimate_id` | integer |     ✅    | `123456` | ID of the estimate to retrieve. |

***

### `Harvest Get Invoice`

Integration name: **HARVEST\_GET\_INVOICE**

Tool to retrieve a specific invoice by ID. Use when you need the full details of an invoice after selecting or creating it. Example: 'Get invoice with ID 13150378.'

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                           |
| ------------ | ------- | :------: | ---------- | ------------------------------------- |
| `invoice_id` | integer |     ✅    | `13150378` | Unique ID of the invoice to retrieve. |

***

### `Harvest Get Project`

Integration name: **HARVEST\_GET\_PROJECT**

Tool to retrieve a specific Harvest project by ID. Use when you have a project ID and need its details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example  | Description                                |
| ------------ | ------- | :------: | -------- | ------------------------------------------ |
| `project_id` | integer |     ✅    | `123456` | The ID of the Harvest project to retrieve. |

***

### `Harvest Get Task`

Integration name: **HARVEST\_GET\_TASK**

Tool to retrieve a specific task by ID. Use when you have a task ID and need its detailed information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example  | Description                        |
| --------- | ------- | :------: | -------- | ---------------------------------- |
| `task_id` | integer |     ✅    | `123456` | Unique ID of the task to retrieve. |

***

### `Harvest Get Time Entry`

Integration name: **HARVEST\_GET\_TIME\_ENTRY**

Tool to retrieve a single time entry by ID. Use when you have a specific time entry ID and need its full details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example  | Description                           |
| --------------- | ------- | :------: | -------- | ------------------------------------- |
| `time_entry_id` | integer |     ✅    | `123456` | The ID of the time entry to retrieve. |

***

### `Harvest Get User`

Integration name: **HARVEST\_GET\_USER**

Tool to retrieve a specific user by ID. Use after obtaining a valid user ID (for example via List Users). Example: "Get details of user 3230547".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                            |
| --------- | ------- | :------: | ------- | -------------------------------------- |
| `user_id` | integer |     ✅    | `123`   | The unique ID of the user to retrieve. |

***

### `Harvest List Client Contacts`

Integration name: **HARVEST\_LIST\_CLIENT\_CONTACTS**

Tool to list client contacts. Use when you need to retrieve contacts with optional filtering and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                   |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number to use in pagination.                             |
| `per_page`      | integer |          | `100`                    | Number of records to return per page.                         |
| `client_id`     | integer |          | `123456`                 | Only return contacts belonging to the client with this ID.    |
| `updated_since` | string  |          | `"2021-03-01T00:00:00Z"` | Only return contacts updated since this date/time (ISO 8601). |

***

### `Harvest List Clients`

Integration name: **HARVEST\_LIST\_CLIENTS**

Tool to list clients. Use when you need to retrieve a paginated list of clients from Harvest. Ensure you have a valid access token in metadata before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                   |
| --------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | DEPRECATED. Page number for pagination. Defaults to 1.                                        |
| `per_page`      | integer |          | `100`                    | The number of records to return per page. Min 1, max 2000. Defaults to 2000.                  |
| `is_active`     | boolean |          | `true`                   | Pass true to only return active clients and false to return inactive clients.                 |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return clients that have been updated since the given date and time, in ISO 8601 format. |

***

### `Harvest List Estimate Messages`

Integration name: **HARVEST\_LIST\_ESTIMATE\_MESSAGES**

Lists all messages associated with a specific estimate in Harvest. Returns messages sorted by creation date (most recent first). Use this tool when you need to: - View communication history for an estimate - Check what messages have been sent to clients regarding an estimate - Track events that occurred on an estimate (send, accept, decline, re-open) - Filter messages by update time to find recent communications Requires a valid estimate\_id. Supports pagination via per\_page parameter (default 2000, max 2000).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                              |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------- |
| `page`          | integer |          | `2`                      | DEPRECATED. Page number for pagination. Defaults to 1.                                   |
| `per_page`      | integer |          | `1000`                   | Number of records per page, between 1 and 2000. Defaults to 2000.                        |
| `estimate_id`   | integer |     ✅    | `1439818`                | ID of the estimate to retrieve messages for.                                             |
| `updated_since` | string  |          | `"2020-01-01T00:00:00Z"` | Only return estimate messages updated since the given date and time, in ISO 8601 format. |

***

### `Harvest List Expense Categories`

Integration name: **HARVEST\_LIST\_EXPENSE\_CATEGORIES**

Tool to list expense categories. Use when you need to retrieve a paginated list of expense categories, optionally filtering by active status or last update timestamp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                   |
| --------------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number for pagination.                                                                   |
| `per_page`      | integer |          | `100`                    | Number of records to return per page (1–2000).                                                |
| `is_active`     | boolean |          | `true`                   | Pass true to return only active expense categories; false to return only inactive categories. |
| `updated_since` | string  |          | `"2023-01-01T00:00:00Z"` | Only return expense categories updated since the given date and time (ISO 8601).              |

***

### `Harvest List Invoice Item Categories`

Integration name: **HARVEST\_LIST\_INVOICE\_ITEM\_CATEGORIES**

Tool to retrieve invoice item categories. Use when you need to fetch a paginated list of invoice item categories in Harvest.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                   |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | DEPRECATED. Page number for pagination. Defaults to 1.                                                        |
| `per_page`      | integer |          | `100`                    | The number of records to return per page. Min 1, max 2000. Defaults to 2000.                                  |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return invoice item categories that have been updated since the given date and time, in ISO 8601 format. |

***

### `Harvest List Invoice Messages`

Integration name: **HARVEST\_LIST\_INVOICE\_MESSAGES**

Tool to list messages associated with a given invoice. Use when you need to retrieve invoice messages with optional filtering by update time and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                      |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number to use in pagination (deprecated, defaults to 1).    |
| `per_page`      | integer |          | `100`                    | Number of records to return per page (1-2000, defaults to 2000). |
| `invoice_id`    | integer |     ✅    | `123456`                 | ID of the invoice to retrieve messages for.                      |
| `updated_since` | string  |          | `"2021-04-01T00:00:00Z"` | Only return messages updated since this date/time (ISO 8601).    |

***

### `Harvest List Invoice Payments`

Integration name: **HARVEST\_LIST\_INVOICE\_PAYMENTS**

List all payments recorded for a specific invoice. Returns payment details including amounts, dates, payment gateway information, and who recorded each payment. Supports filtering by updated\_since date and pagination. Returns an empty list if the invoice has no payments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                   |
| --------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number for pagination. Note: This parameter is deprecated by Harvest in favor of cursor-based pagination. Defaults to 1. |
| `per_page`      | integer |          | `100`                    | Number of payment records to return per page. Must be between 1 and 2000. Defaults to 2000 (maximum).                         |
| `invoice_id`    | integer |     ✅    | `12345`                  | The ID of the invoice whose payments you want to list. Required.                                                              |
| `updated_since` | string  |          | `"2021-03-01T00:00:00Z"` | Filter to only payments updated after this date/time. ISO 8601 format (e.g., '2021-03-01T00:00:00Z'). Optional.               |

***

### `Harvest List Invoices`

Integration name: **HARVEST\_LIST\_INVOICES**

Tool to list invoices. Use when you need to retrieve invoices filtered by client, project, date range, or state. Example: 'List invoices for client 5735776 from 2023-01-01 to 2023-01-31.'

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                    |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number for pagination. Defaults to 1.                                                     |
| `state`         | string  |          | `"open"`                 | Only return invoices with a state matching this value.                                         |
| `to_date`       | string  |          | `"2021-03-31"`           | Only return invoices with an issue\_date on or before the given date (YYYY-MM-DD).             |
| `per_page`      | integer |          | `100`                    | Number of records to return per page. 1–2000. Defaults to 100.                                 |
| `client_id`     | integer |          | `5735776`                | Only return invoices belonging to the client with the given ID.                                |
| `from_date`     | string  |          | `"2021-03-01"`           | Only return invoices with an issue\_date on or after the given date (YYYY-MM-DD).              |
| `project_id`    | integer |          | `14308069`               | Only return invoices associated with the project with the given ID.                            |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return invoices that have been updated since the given date and time, in ISO 8601 format. |

***

### `Harvest List Projects`

Integration name: **HARVEST\_LIST\_PROJECTS**

Tool to list projects. Use when you need to retrieve a paginated list of projects from Harvest. Ensure a valid access token is present in metadata before calling. Results span multiple pages; check total\_pages in the response and increment page to retrieve all projects. Large result sets may be returned as remote files rather than inline JSON; use structure\_info to parse the response correctly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                        |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------ |
| `page`          | integer |          | `1`                      | Page number for pagination. Defaults to 1.                         |
| `client`        | integer |          | `123456`                 | Filter projects by the client ID.                                  |
| `per_page`      | integer |          | `50`                     | Number of records per page. Min 1, max 100. Defaults to 100.       |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return projects updated since the given date/time (ISO 8601). |

***

### `Harvest List Tasks`

Integration name: **HARVEST\_LIST\_TASKS**

Tool to list tasks. Use when you need to retrieve a paginated list of tasks from Harvest. Ensure you have a valid access token in metadata before calling. Response includes `total_pages` to iterate all pages when task count exceeds `per_page`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                                                                                                                                            |
| --------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | Page number for pagination. Defaults to 1.                                                                                                                                                                             |
| `per_page`      | integer |          | `100`                    | The number of records to return per page. Min 1, max 100. Defaults to 100.                                                                                                                                             |
| `is_active`     | boolean |          | `true`                   | Pass true to only return active tasks and false to return archived tasks. Use `true` to obtain valid task IDs for time entry creation; passing an inactive task ID to HARVEST\_CREATE\_TIME\_ENTRY causes a 422 error. |
| `is_default`    | boolean |          | `true`                   | Pass true to only return default tasks.                                                                                                                                                                                |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return tasks that have been updated since the given date and time, in ISO 8601 format.                                                                                                                            |

***

### `Harvest List Time Entries`

Integration name: **HARVEST\_LIST\_TIME\_ENTRIES**

Tool to retrieve a list of time entries. Use when you need to fetch tracked hours with filters or date ranges for reporting or invoicing. Example: "List time entries for project 123 between 2023-01-01 and 2023-01-31".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                  | Description                                                                      |
| ----------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------- |
| `to`                    | string  |          | `"2023-01-31"`           | Only return time entries with a spent\_date on or before this date (YYYY-MM-DD). |
| `page`                  | integer |          | `1`                      | Page number for pagination.                                                      |
| `task_id`               | integer |          | `321`                    | Only return time entries belonging to the task with the given ID.                |
| `user_id`               | integer |          | `123`                    | Only return time entries belonging to the user with the given ID.                |
| `per_page`              | integer |          | `100`                    | Number of records to return per page (1–2000).                                   |
| `client_id`             | integer |          | `456`                    | Only return time entries belonging to the client with the given ID.              |
| `from_date`             | string  |          | `"2023-01-01"`           | Only return time entries with a spent\_date on or after this date (YYYY-MM-DD).  |
| `is_billed`             | boolean |          | `true`                   | Pass true to return invoiced entries, false for unbilled entries.                |
| `is_running`            | boolean |          | `true`                   | Pass true to return running timers, false for stopped entries.                   |
| `project_id`            | integer |          | `789`                    | Only return time entries belonging to the project with the given ID.             |
| `updated_since`         | string  |          | `"2023-03-01T00:00:00Z"` | Only return time entries updated since this date and time (ISO 8601).            |
| `external_reference_id` | string  |          | `"ref-123"`              | Only return time entries with the given external reference ID.                   |

***

### `Harvest List Users`

Integration name: **HARVEST\_LIST\_USERS**

Tool to list users. Use when you need to retrieve a paginated list of users from Harvest.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                  | Description                                                                                 |
| --------------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------- |
| `page`          | integer |          | `1`                      | DEPRECATED. Page number for pagination. Defaults to 1.                                      |
| `per_page`      | integer |          | `100`                    | The number of records to return per page. Min 1, max 2000. Defaults to 2000.                |
| `is_active`     | boolean |          | `true`                   | Pass true to only return active users and false to return inactive users.                   |
| `updated_since` | string  |          | `"2021-03-15T12:00:00Z"` | Only return users that have been updated since the given date and time, in ISO 8601 format. |

***

### `Harvest Update Client`

Integration name: **HARVEST\_UPDATE\_CLIENT**

Tool to update an existing client. Use after retrieving client details to modify its properties. Supports partial updates; omit fields to leave them unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                            | Description                                                     |
| ----------- | ------- | :------: | ---------------------------------- | --------------------------------------------------------------- |
| `name`      | string  |          | `"Acme Corporation Updated"`       | A textual description of the client.                            |
| `address`   | string  |          | `"123 Main St\nAnytown, CA 12345"` | The client's physical address. May include new line characters. |
| `currency`  | string  |          | `"USD"`                            | ISO currency code for the client.                               |
| `client_id` | integer |     ✅    | `123456`                           | Unique ID of the client to update                               |
| `is_active` | boolean |          | `true`                             | Whether the client is active or archived.                       |

***

### `Harvest Update Client Contact`

Integration name: **HARVEST\_UPDATE\_CLIENT\_CONTACT**

Tool to update a client contact. Use when you have a contact\_id and need to modify its details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                   | Description                                     |
| -------------- | ------- | :------: | ------------------------- | ----------------------------------------------- |
| `email`        | string  |          | `"john.doe@example.com"`  | Contact's email address.                        |
| `title`        | string  |          | `"Director of Marketing"` | Title of the contact (e.g., 'Director of Ops'). |
| `last_name`    | string  |          | `"Doe"`                   | Last name of the contact.                       |
| `contact_id`   | integer |     ✅    | `12345`                   | ID of the contact to update.                    |
| `first_name`   | string  |          | `"John"`                  | First name of the contact.                      |
| `phone_mobile` | string  |          | `"+1-555-5678"`           | Contact's mobile phone number.                  |
| `phone_office` | string  |          | `"+1-555-1234"`           | Contact's office phone number.                  |

***

### `Harvest Update Company Info`

Integration name: **HARVEST\_UPDATE\_COMPANY\_INFO**

Updates company time tracking settings in Harvest. This endpoint allows modification of two company settings: 1. wants\_timestamp\_timers - Controls whether time is tracked via duration or start/end times 2. weekly\_capacity - Sets the expected working hours per week (in seconds) Returns the complete updated company object. Requires admin permissions. Note: Other company settings (name, timezone, currency, date/time formats, color scheme, etc.) cannot be modified via the API and must be changed through the Harvest web interface.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example  | Description                                                                                                                                                                              |
| ------------------------ | ------- | :------: | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `weekly_capacity`        | integer |          | `144000` | The weekly capacity in seconds. This represents the expected number of working hours per week. For example, 144000 seconds = 40 hours (40 \* 60 \* 60). Must be non-negative.            |
| `wants_timestamp_timers` | boolean |          | `true`   | Whether time is tracked via duration (false) or start and end times (true). When true, users must enter start/end times for time entries. When false, users can enter just the duration. |

***

### `Harvest Update Estimate`

Integration name: **HARVEST\_UPDATE\_ESTIMATE**

Tool to update an existing estimate. Use when you need to modify specific fields of an estimate; omit parameters to leave other fields unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                    | Description                                                           |
| ---------------- | ------- | :------: | -------------------------- | --------------------------------------------------------------------- |
| `tax`            | number  |          | `10`                       | First tax percentage applied to the subtotal, e.g., 10.0 for 10%.     |
| `tax2`           | number  |          | `5`                        | Second tax percentage applied to the subtotal, e.g., 5.0 for 5%.      |
| `notes`          | string  |          | `"Please review changes."` | Additional notes for the estimate.                                    |
| `number`         | string  |          | `"2023-0001"`              | Custom estimate number. Auto-generated if omitted.                    |
| `subject`        | string  |          | `"Updated Project Quote"`  | Estimate subject line.                                                |
| `currency`       | string  |          | `"USD"`                    | Currency code for the estimate; defaults to client's currency.        |
| `discount`       | number  |          | `15`                       | Discount percentage subtracted from the subtotal, e.g., 15.0 for 15%. |
| `client_id`      | integer |          | `5735776`                  | The ID of the client this estimate belongs to.                        |
| `issue_date`     | string  |          | `"2023-06-01"`             | Date the estimate was issued (YYYY-MM-DD).                            |
| `line_items`     | array   |          | —                          | List of line items to update or add. Omit unchanged items.            |
| `estimate_id`    | integer |     ✅    | `1439827`                  | Unique ID of the estimate to update.                                  |
| `purchase_order` | string  |          | `"PO-2345"`                | The purchase order number.                                            |

***

### `Harvest Update Estimate Item Category`

Integration name: **HARVEST\_UPDATE\_ESTIMATE\_ITEM\_CATEGORY**

Updates an existing estimate item category's name in Harvest. Estimate item categories are used to organize line items within estimates. Provide the category ID and the new name you want to set.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example               | Description                                       |
| --------------------------- | ------- | :------: | --------------------- | ------------------------------------------------- |
| `name`                      | string  |          | `"Materials Updated"` | The new name for the estimate item category.      |
| `estimate_item_category_id` | integer |     ✅    | `123`                 | Unique ID of the estimate item category to update |

***

### `Harvest Update Expense`

Integration name: **HARVEST\_UPDATE\_EXPENSE**

Tool to update an existing expense. Use after retrieving an expense to modify project, category, date, cost, or delete a receipt; omit fields to leave unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                    | Description                                            |
| --------------------- | ------- | :------: | -------------------------- | ------------------------------------------------------ |
| `notes`               | string  |          | `"Client dinner expenses"` | Notes or description for the expense.                  |
| `units`               | —       |          | `3.5`                      | Quantity of units used to calculate the expense total. |
| `billable`            | boolean |          | `true`                     | Whether the expense is billable.                       |
| `expense_id`          | integer |     ✅    | `123456`                   | Unique ID of the expense to update                     |
| `project_id`          | integer |          | `654321`                   | ID of the project associated with this expense.        |
| `spent_date`          | string  |          | `"2021-09-15"`             | Date the expense occurred (YYYY-MM-DD)                 |
| `total_cost`          | —       |          | `150.75`                   | Total amount of the expense.                           |
| `delete_receipt`      | boolean |          | `true`                     | Pass true to delete the attached receipt.              |
| `expense_category_id` | integer |          | `98765`                    | ID of the expense category for this expense.           |

***

### `Harvest Update Invoice`

Integration name: **HARVEST\_UPDATE\_INVOICE**

Tool to update an existing invoice. Use after retrieving invoice details to modify its fields. Supports partial updates; omit fields to leave unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                          | Description                                                                   |
| ----------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------- |
| `tax`             | —       |          | `10`                             | Tax percentage applied to the invoice.                                        |
| `tax2`            | —       |          | `2.5`                            | Additional tax percentage applied.                                            |
| `notes`           | string  |          | `"Thank you for your business!"` | Additional notes to include on the invoice.                                   |
| `number`          | string  |          | `"INV-1001"`                     | Custom invoice number.                                                        |
| `subject`         | string  |          | `"Consulting Services"`          | The invoice subject.                                                          |
| `currency`        | string  |          | `"USD"`                          | Currency code (e.g., USD).                                                    |
| `discount`        | —       |          | `5`                              | Discount percentage applied to the invoice.                                   |
| `due_date`        | string  |          | `"2023-02-15"`                   | Date the invoice is due (YYYY-MM-DD).                                         |
| `client_id`       | integer |          | `12345`                          | ID of the client this invoice belongs to.                                     |
| `invoice_id`      | integer |     ✅    | `789`                            | Unique ID of the invoice to update.                                           |
| `issue_date`      | string  |          | `"2023-01-15"`                   | Date the invoice was issued (YYYY-MM-DD).                                     |
| `line_items`      | array   |          | —                                | Array of line item objects to update or add.                                  |
| `estimate_id`     | integer |          | `234`                            | ID of the estimate associated with this invoice.                              |
| `retainer_id`     | integer |          | `678`                            | ID of the retainer associated with this invoice.                              |
| `payment_term`    | string  |          | `"net 30"`                       | Payment timeframe: 'upon receipt', 'net 15', 'net 30', 'net 45', or 'net 60'. |
| `purchase_order`  | string  |          | `"PO-1234"`                      | The purchase order number.                                                    |
| `payment_options` | array   |          | —                                | Payment options available: 'ach', 'credit\_card', or 'paypal'.                |

***

### `Harvest Update Project`

Integration name: **HARVEST\_UPDATE\_PROJECT**

Tool to update an existing project. Use when you need to modify one or more fields of a project by its ID. Invoke after confirming the project ID and desired changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                             | Type    | Required | Example                          | Description                                                                                                                                                                           |
| ------------------------------------- | ------- | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fee`                                 | number  |          | `7500`                           | Fixed-fee amount to invoice for fixed-fee projects                                                                                                                                    |
| `code`                                | string  |          | `"WR2023Q2"`                     | Project code identifier                                                                                                                                                               |
| `name`                                | string  |          | `"Website Redesign Q2"`          | Name of the project                                                                                                                                                                   |
| `notes`                               | string  |          | `"Kickoff scheduled for May 1."` | Project notes or description                                                                                                                                                          |
| `budget`                              | number  |          | `200`                            | Time budget in hours when budgeting by hours                                                                                                                                          |
| `bill_by`                             | string  |          | `"Project"`                      | Billing method: 'Project', 'Tasks', 'People', or 'none'                                                                                                                               |
| `ends_on`                             | string  |          | `"2023-12-31"`                   | Project end date (YYYY-MM-DD)                                                                                                                                                         |
| `budget_by`                           | string  |          | `"project"`                      | Budgeting method: 'project' (hours per project), 'project\_cost' (total fees), 'task' (hours per task), 'task\_fees' (fees per task), 'person' (hours per person), or 'none'          |
| `client_id`                           | integer |          | `5735776`                        | ID of the client to associate this project with                                                                                                                                       |
| `is_active`                           | boolean |          | `true`                           | Whether the project is active (true) or archived (false)                                                                                                                              |
| `starts_on`                           | string  |          | `"2023-05-01"`                   | Project start date (YYYY-MM-DD)                                                                                                                                                       |
| `project_id`                          | integer |     ✅    | `14308112`                       | Unique ID of the project to update. This must be an existing project ID obtained from Harvest, typically by using LIST\_PROJECTS first. Do not use arbitrary numbers or placeholders. |
| `cost_budget`                         | number  |          | `5000`                           | Monetary budget when budgeting by money                                                                                                                                               |
| `hourly_rate`                         | number  |          | `100`                            | Hourly rate when billed by project hourly rate                                                                                                                                        |
| `is_billable`                         | boolean |          | `true`                           | Whether time on this project is billable                                                                                                                                              |
| `is_fixed_fee`                        | boolean |          | `false`                          | Whether this is a fixed-fee project                                                                                                                                                   |
| `budget_is_monthly`                   | boolean |          | `false`                          | If true, reset budget each month; defaults to false                                                                                                                                   |
| `show_budget_to_all`                  | boolean |          | `false`                          | Show budget to all employees; defaults to false                                                                                                                                       |
| `notify_when_over_budget`             | boolean |          | `false`                          | Email managers when over budget; defaults to false                                                                                                                                    |
| `cost_budget_include_expenses`        | boolean |          | `false`                          | Include tracked expenses in 'project\_cost' budgets; defaults to false                                                                                                                |
| `over_budget_notification_percentage` | number  |          | `80`                             | Threshold percent to trigger over-budget alerts (e.g., 80.0)                                                                                                                          |

***

### `Harvest Update Task`

Integration name: **HARVEST\_UPDATE\_TASK**

Tool to update an existing task. Use after retrieving task details to modify its attributes such as name, billing defaults, or status. Supports partial updates; omit fields to leave them unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                         |
| --------------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------- |
| `name`                | string  |          | `"Design Review"` | New name for the task.                                              |
| `task_id`             | integer |     ✅    | `123456`          | Unique ID of the task to update                                     |
| `is_active`           | boolean |          | `true`            | Whether this task is active (true) or archived (false).             |
| `is_default`          | boolean |          | `true`            | Whether this task should be automatically added to future projects. |
| `billable_by_default` | boolean |          | `true`            | Whether new projects with this task are billable by default.        |
| `default_hourly_rate` | number  |          | `150`             | Default hourly rate when this task is added to a project.           |

***

### `Harvest Update Time Entry`

Integration name: **HARVEST\_UPDATE\_TIME\_ENTRY**

Tool to update an existing time entry. Use after retrieving the entry to adjust hours, notes, project, or task details. Supports partial updates; omit fields to leave unchanged.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                       | Description                                                                     |
| --------------- | ------- | :------: | ----------------------------- | ------------------------------------------------------------------------------- |
| `hours`         | —       |          | `1.5`                         | The updated number of hours for the time entry.                                 |
| `notes`         | string  |          | `"Completed API integration"` | The updated notes for the time entry.                                           |
| `task_id`       | integer |          | `67890`                       | ID of the task associated with the time entry.                                  |
| `ended_time`    | string  |          | —                             | The time the entry ended (e.g., '5:00pm'); if omitted, timer remains running    |
| `project_id`    | integer |          | `12345`                       | ID of the project associated with the time entry.                               |
| `spent_date`    | string  |          | `"2021-09-15"`                | The date the time entry was spent (YYYY-MM-DD)                                  |
| `started_time`  | string  |          | —                             | The time the entry started (e.g., '9:00am'); omit ended\_time for running timer |
| `time_entry_id` | integer |     ✅    | `123456`                      | Unique ID of the time entry to update                                           |

***

### `Harvest Update User`

Integration name: **HARVEST\_UPDATE\_USER**

Tool to update an existing user. Use when you need to modify a user's profile or settings after confirming the user ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type    | Required | Example                        | Description                                                                                                                                                                                                                                                                                                         |
| ----------------------------------- | ------- | :------: | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email`                             | string  |          | `"george@example.com"`         | The email address of the user. Cannot be updated if the user is inactive.                                                                                                                                                                                                                                           |
| `roles`                             | array   |          | —                              | Descriptive names of the business roles assigned to this person. Used for filtering reports, with no impact on permissions.                                                                                                                                                                                         |
| `user_id`                           | integer |     ✅    | `123456`                       | Unique ID of the user to update                                                                                                                                                                                                                                                                                     |
| `timezone`                          | string  |          | `"Eastern Time (US & Canada)"` | The user’s timezone. Defaults to the company’s timezone. See supported time zones in the Harvest docs.                                                                                                                                                                                                              |
| `is_active`                         | boolean |          | —                              | Whether the user is active or archived.                                                                                                                                                                                                                                                                             |
| `last_name`                         | string  |          | `"Frank"`                      | The last name of the user. Cannot be updated if the user is inactive.                                                                                                                                                                                                                                               |
| `first_name`                        | string  |          | `"George"`                     | The first name of the user. Cannot be updated if the user is inactive.                                                                                                                                                                                                                                              |
| `access_roles`                      | array   |          | —                              | Access roles that determine the user’s permissions in Harvest. Possible values: administrator, manager, member, project\_creator, billable\_rates\_manager, managed\_projects\_invoice\_drafter, managed\_projects\_invoice\_manager, client\_and\_task\_manager, time\_and\_expenses\_manager, estimates\_manager. |
| `is_contractor`                     | boolean |          | —                              | Whether the user is a contractor or an employee. Defaults to false.                                                                                                                                                                                                                                                 |
| `weekly_capacity`                   | integer |          | `126000`                       | The number of hours per week this person is available to work, in seconds. Must be non-negative.                                                                                                                                                                                                                    |
| `has_access_to_all_future_projects` | boolean |          | —                              | Whether the user should be automatically added to future projects. Defaults to false.                                                                                                                                                                                                                               |


# Hubspot

Your Toolhouse AI Worker can connect to Hubspot using 233 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](https://toolhouse.app/auth-connections?authkit_slugs=hubspot).

## Tools (233)

### `Hubspot Add Asset Association`

Integration name: **HUBSPOT\_ADD\_ASSET\_ASSOCIATION**

Associates an existing asset (`FORM`, `OBJECT_LIST`, or `EXTERNAL_WEB_URL`) with a specified HubSpot marketing campaign.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| -------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `assetId`      | string |     ✅    | `"12345"`                                | The unique identifier of the asset to be associated with the campaign. This ID is specific to the assetType. For FORMs, use the form's numeric ID. For OBJECT\_LIST, use the list ID (ILS ID). For EMAIL, use the email's content ID. For LANDING\_PAGE or BLOG\_POST, use the page/post ID. These IDs can be obtained from HubSpot's UI (in the asset's URL or details panel) or by using the corresponding list/search actions for that asset type. |
| `assetType`    | string |     ✅    | `"FORM"`                                 | Type of asset to associate with the campaign. Commonly supported types include: `'FORM'`, `'OBJECT_LIST'` (Static/Contact List), `'EXTERNAL_WEB_URL'`, `'EMAIL'`, `'LANDING_PAGE'`, `'BLOG_POST'`, `'CTA'`, `'WORKFLOW'`, `'SOCIAL_POST'`, `'WEBSITE_PAGE'`, `'SEQUENCE'`, `'MEETING_EVENT'`, `'PLAYBOOK'`, `'FEEDBACK_SURVEY'`, `'SALES_DOCUMENT'`. HubSpot continues to expand asset type support over time.                                        |
| `campaignGuid` | string |     ✅    | `"00000000-0000-0000-0000-000000000000"` | The unique identifier (UUID) of the HubSpot campaign to which the asset will be associated.                                                                                                                                                                                                                                                                                                                                                           |

***

### `Hubspot Add Token To Event Template`

Integration name: **HUBSPOT\_ADD\_TOKEN\_TO\_EVENT\_TEMPLATE**

Adds a new custom data token to an existing event template for a specified HubSpot application, optionally populating a CRM object property if objectPropertyName is provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                                                                                                              | Description                                                                                                                                                                                                                                                          |
| -------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string  |     ✅    | `"deal_stage_id"`                                                                                                                    | The internal name of the token, used for referencing it within templates. Must be unique for this event template. Allowed characters: alphanumeric, periods (`.`), dashes (`-`), or underscores (`_`).                                                               |
| `type`               | string  |     ✅    | `"string"`                                                                                                                           | The data type of the token. Determines how the token's value is stored and validated.                                                                                                                                                                                |
| `appId`              | integer |     ✅    | `12345`                                                                                                                              | Numeric identifier of the target application associated with the event template. Provided in the URL path.                                                                                                                                                           |
| `label`              | string  |     ✅    | `"Deal Stage"`                                                                                                                       | The user-facing label for the token. This label is used for list segmentation and in reporting.                                                                                                                                                                      |
| `options`            | array   |          | `"[{\"label\": \"High Priority\", \"value\": \"high_priority\"}, {\"label\": \"Medium Priority\", \"value\": \"medium_priority\"}]"` | A list of options for the token, required and applicable only if the token `type` is `'enumeration'`. Each option must have a `'label'` and a `'value'`.                                                                                                             |
| `eventTemplateId`    | string  |     ✅    | `"template_marketing_001"`                                                                                                           | Unique identifier of the event template. Provided in the URL path.                                                                                                                                                                                                   |
| `objectPropertyName` | string  |          | `"last_feedback_score"`                                                                                                              | The name of an existing CRM object property (e.g., `'dealstage'`, `'lifecyclestage'`). If provided, this token will populate the specified CRM object property associated with the event. This allows for building or updating CRM objects through the Timeline API. |

***

### `Hubspot Archive Batch Of Feedback Submissions`

Integration name: **HUBSPOT\_ARCHIVE\_BATCH\_OF\_FEEDBACK\_SUBMISSIONS**

Asynchronously archives a batch of HubSpot feedback submissions using their unique IDs, which must correspond to valid and existing submissions; the operation is queued, and submissions are moved from active views without being deleted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                     |
| --------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of objects, where each object contains the `id` of a feedback submission to be archived. |

***

### `Hubspot Archive Batch Of Line Items`

Integration name: **HUBSPOT\_ARCHIVE\_BATCH\_OF\_LINE\_ITEMS**

Archives a batch of existing line items by their unique IDs in HubSpot CRM; this operation is irreversible via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                           |
| --------- | ----- | :------: | ------- | ------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of objects, where each object contains the `id` of a line item to be archived. |

***

### `Hubspot Archive Batch Of Objects`

Integration name: **HUBSPOT\_ARCHIVE\_BATCH\_OF\_OBJECTS**

Archives a batch of existing, non-archived CRM objects of a specified `objectType` by their IDs, effectively hiding them from active use.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                                                    |
| ------------ | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------- |
| `inputs`     | array  |     ✅    | —            | A list of input objects, where each object contains the `id` of a CRM record to be archived.   |
| `objectType` | string |     ✅    | `"contacts"` | The type of CRM object to archive (e.g., `'contacts'`, `'companies'`, `'deals'`, `'tickets'`). |

***

### `Hubspot Archive Batch Of Properties`

Integration name: **HUBSPOT\_ARCHIVE\_BATCH\_OF\_PROPERTIES**

Archives a batch of properties by their internal names for a specified HubSpot CRM object type; this operation is idempotent and safe to retry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                               |
| ------------ | ------ | :------: | ------------ | ------------------------------------------------------------------------- |
| `inputs`     | array  |     ✅    | —            | A list of properties to archive, each specified by their internal `name`. |
| `objectType` | string |     ✅    | `"contacts"` | The HubSpot CRM object type for which properties are being archived.      |

***

### `Hubspot Archive Batch Of Quotes`

Integration name: **HUBSPOT\_ARCHIVE\_BATCH\_OF\_QUOTES**

Archives a batch of existing quotes by their IDs, removing them from active views while keeping them accessible in your HubSpot account for viewing, downloading, cloning, or deletion; note that archived quotes cannot be restored to active status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                     |
| --------- | ----- | :------: | ------- | ------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of objects, where each object contains the ID of a quote to be archived. |

***

### `Hubspot Archive Companies`

Integration name: **HUBSPOT\_ARCHIVE\_COMPANIES**

Archives multiple HubSpot companies by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                      |
| --------- | ----- | :------: | ------- | -------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of company objects, each specifying the ID of the company to be archived. |

***

### `Hubspot Archive Company`

Integration name: **HUBSPOT\_ARCHIVE\_COMPANY**

Archives an existing company in HubSpot CRM by its `companyId`, moving it to a recycling bin from which it can be restored, rather than permanently deleting it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                                                                                                                                      |
| ----------- | ------ | :------: | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `companyId` | string |     ✅    | `"1234567890"` | The numeric identifier for the company to archive. Must contain only digits (e.g., `'1234567890'`). Do not use email addresses or other non-numeric identifiers. |

***

### `Hubspot Archive Contact`

Integration name: **HUBSPOT\_ARCHIVE\_CONTACT**

Archives a HubSpot contact by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                                                                                                                                              |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `contactId` | string |     ✅    | `"386009987808"` | Numeric HubSpot contact ID (e.g., `'386009987808'`). Note: The archive endpoint does NOT support email addresses or `idProperty` - use `HUBSPOT_GET_CONTACTS` or `HUBSPOT_SEARCH_CONTACTS` to find the numeric ID first. |

***

### `Hubspot Archive Contacts`

Integration name: **HUBSPOT\_ARCHIVE\_CONTACTS**

Archives multiple HubSpot contacts by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                      |
| --------- | ----- | :------: | ------- | -------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of contact objects, each specifying the ID of the contact to be archived. |

***

### `Hubspot Archive Crm Object By Id`

Integration name: **HUBSPOT\_ARCHIVE\_CRM\_OBJECT\_BY\_ID**

Archives a specific HubSpot CRM object by its type and ID, moving it to the recycling bin; this action is irreversible via the API but objects can often be restored via the HubSpot UI.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                                                                                                                                                                                                                                   |
| ------------ | ------ | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objectId`   | string |     ✅    | `"1234567"`  | The unique identifier for the CRM object to be archived. This ID must correspond to an existing object of the specified `objectType`. The format is typically a string of numbers or a UUID. Ensure the correct ID is provided as this operation is irreversible via the API. |
| `objectType` | string |     ✅    | `"contacts"` | The type of CRM object to be archived. This value is case-sensitive, must be a valid HubSpot CRM object type (e.g., contacts, companies, deals, quotes), and should be provided in lowercase plural form (e.g., `'contacts'`, not `'Contact'`).                               |

***

### `Hubspot Archive Deals`

Integration name: **HUBSPOT\_ARCHIVE\_DEALS**

Archives multiple HubSpot deals by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                          |
| --------- | ----- | :------: | ------- | ------------------------------------ |
| `inputs`  | array |     ✅    | —       | List of deal objects to be archived. |

***

### `Hubspot Archive Email`

Integration name: **HUBSPOT\_ARCHIVE\_EMAIL**

Archives the HubSpot email specified by `emailId` by moving it to the recycling bin, making it inaccessible unless restored.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example        | Description                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emailId` | string |     ✅    | `"1234567890"` | Numeric object ID of the email engagement record in HubSpot. This is NOT an email address - it must be a numeric ID (e.g., `'1234567890'`). The ID can be retrieved from the HubSpot CRM email activity list or from previous API responses. |

***

### `Hubspot Archive Emails`

Integration name: **HUBSPOT\_ARCHIVE\_EMAILS**

Archives multiple HubSpot emails by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                           |
| --------- | ----- | :------: | ------- | ------------------------------------- |
| `inputs`  | array |     ✅    | —       | List of email objects to be archived. |

***

### `Hubspot Archive Feedback Submission`

Integration name: **HUBSPOT\_ARCHIVE\_FEEDBACK\_SUBMISSION**

Archives an existing, non-archived Feedback Submission in HubSpot CRM by its ID, moving it to the recycling bin (not permanently deleting it).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                              | Description                                                                             |
| ---------------------- | ------ | :------: | ------------------------------------ | --------------------------------------------------------------------------------------- |
| `feedbackSubmissionId` | string |     ✅    | `"1234567890abcdef1234567890abcdef"` | The unique identifier of an existing Feedback Submission in HubSpot CRM to be archived. |

***

### `Hubspot Archive Line Item`

Integration name: **HUBSPOT\_ARCHIVE\_LINE\_ITEM**

Archives a specific HubSpot line item by its ID, moving it to a recoverable state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                    |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------ |
| `lineItemId` | string |     ✅    | `"5fbde764-f5ce-46b0-8031-21c94fe0f40a"` | The unique identifier of the existing line item in HubSpot CRM to be archived. |

***

### `Hubspot Archive Product`

Integration name: **HUBSPOT\_ARCHIVE\_PRODUCT**

Archives a HubSpot product by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example   | Description                                               |
| ----------- | ------ | :------: | --------- | --------------------------------------------------------- |
| `productId` | string |     ✅    | `"12345"` | Unique HubSpot identifier for the product to be archived. |

***

### `Hubspot Archive Products`

Integration name: **HUBSPOT\_ARCHIVE\_PRODUCTS**

Archives multiple HubSpot products by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                             |
| --------- | ----- | :------: | ------- | --------------------------------------- |
| `inputs`  | array |     ✅    | —       | List of product objects to be archived. |

***

### `Hubspot Archive Property By Object Type And Name`

Integration name: **HUBSPOT\_ARCHIVE\_PROPERTY\_BY\_OBJECT\_TYPE\_AND\_NAME**

Archives a specified CRM property by its object type and name, moving it to the recycling bin; note that some default HubSpot properties cannot be archived.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                      | Description                                                                                                                                             |
| -------------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objectType`   | string |     ✅    | `"contacts"`                 | The case-sensitive type of CRM object (e.g., `'contacts'`, `'companies'`) for which the property is being archived; must match an existing object type. |
| `propertyName` | string |     ✅    | `"my_custom_property_alpha"` | The case-sensitive internal name of the property to archive (e.g., `'custom_field_1'`, `'annual_revenue'`).                                             |

***

### `Hubspot Archive Property Group`

Integration name: **HUBSPOT\_ARCHIVE\_PROPERTY\_GROUP**

Archives a HubSpot property group, making it inactive and hidden (not permanently deleted, allowing potential restoration) with immediate effect on its CRM visibility and usability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                 | Description                                                                                                                                                                                                                                   |
| ------------ | ------ | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `groupName`  | string |     ✅    | `"contact_information"` | The unique internal name of the property group you want to archive. This name is case-sensitive and must exactly match an existing property group's name within the specified `objectType`.                                                   |
| `objectType` | string |     ✅    | `"contacts"`            | The specific CRM object type (e.g., `'contacts'`, `'companies'`, `'deals'`, or custom object types) that the property group belongs to. This value must be in lowercase and match an existing object type definition in your HubSpot account. |

***

### `Hubspot Archive Quote`

Integration name: **HUBSPOT\_ARCHIVE\_QUOTE**

Archives a HubSpot Quote object by ID, moving it to the recycling bin where it can be restored within 90 days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                           |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------- |
| `quoteId` | string |     ✅    | `"550e8400-e29b-41d4-a716-446655440000"` | The unique identifier (ID) of an existing Quote object in HubSpot CRM to be archived. |

***

### `Hubspot Archive Ticket`

Integration name: **HUBSPOT\_ARCHIVE\_TICKET**

Archives a HubSpot ticket by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example   | Description                                              |
| ---------- | ------ | :------: | --------- | -------------------------------------------------------- |
| `ticketId` | string |     ✅    | `"12345"` | Unique HubSpot identifier for the ticket to be archived. |

***

### `Hubspot Archive Tickets`

Integration name: **HUBSPOT\_ARCHIVE\_TICKETS**

Archives multiple HubSpot tickets by their IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                            |
| --------- | ----- | :------: | ------- | -------------------------------------- |
| `inputs`  | array |     ✅    | —       | List of ticket objects to be archived. |

***

### `Hubspot Audit Pipeline Changes`

Integration name: **HUBSPOT\_AUDIT\_PIPELINE\_CHANGES**

Retrieves a reverse chronological audit log of all changes for a specific, existing HubSpot CRM pipeline, which is identified by its `pipelineId` and a valid `objectType` that supports pipelines (e.g., `'deals'`, `'tickets'`).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                  | Description                                                                                                                                                    |
| ------------ | ------ | :------: | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objectType` | string |     ✅    | `"deals"`                | The HubSpot CRM object type that has pipelines (e.g., `'deals'`, `'tickets'`); determines the pipeline's context. Must be a valid, case-sensitive object type. |
| `pipelineId` | string |     ✅    | `"default_pipeline_123"` | The unique identifier of an existing pipeline within the specified `objectType` for which to retrieve the audit history.                                       |

***

### `Hubspot Batch Read Companies By Properties`

Integration name: **HUBSPOT\_BATCH\_READ\_COMPANIES\_BY\_PROPERTIES**

Batch-retrieves up to 100 HubSpot company records by their IDs in a single request. Supports custom ID properties (e.g., domain), selective property retrieval, and historical property values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                        | Description                                                                                                                                                                                                                 |
| ----------------------- | ------- | :------: | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `inputs`                | array   |     ✅    | —                              | List of company identifiers to retrieve. Each `id` within an input object corresponds to the value of the property specified in `idProperty`.                                                                               |
| `archived`              | boolean |          | `true`                         | If true, returns only archived company records; otherwise (default), returns active, non-archived companies.                                                                                                                |
| `idProperty`            | string  |          | `"hs_object_id"`               | Property name to use as the unique identifier for companies in `inputs`. Defaults to `hs_object_id` (the HubSpot record ID) if not specified. Can be set to any unique company property configured in your HubSpot account. |
| `properties`            | array   |          | `["name","domain","industry"]` | Optional list of company property names to retrieve. If omitted, a default set of properties (name, domain, hs\_object\_id, createdate, hs\_lastmodifieddate, etc.) is returned.                                            |
| `propertiesWithHistory` | array   |          | `["name","domain"]`            | Optional list of company property names for which to retrieve historical values. If not provided, no historical data is returned.                                                                                           |

***

### `Hubspot Batch Update Quotes`

Integration name: **HUBSPOT\_BATCH\_UPDATE\_QUOTES**

Updates multiple existing HubSpot quotes in a batch; each quote is identified by its object ID or a custom unique property (via `idProperty`), and only writable properties are modified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                     |
| --------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | List of `InputsRequest` objects, each specifying a quote to update and its new property values. |

***

### `Hubspot Cancel Import`

Integration name: **HUBSPOT\_CANCEL\_IMPORT**

Cancels an active HubSpot data import job using its `importId`; this action is irreversible, and any data already processed will remain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                                                                      |
| ---------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `importId` | integer |     ✅    | `12345` | The unique identifier for the active HubSpot import job to be cancelled; must correspond to an import job currently in progress. |

***

### `Hubspot Clone Marketing Email`

Integration name: **HUBSPOT\_CLONE\_MARKETING\_EMAIL**

Duplicates an existing HubSpot marketing email, identified by its `id`, into a new draft; an optional `cloneName` can be assigned to this new email copy.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                                                                  |
| ----------- | ------ | :------: | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`        | string |     ✅    | `"1234567890"`               | The unique identifier of the existing marketing email to be cloned.                                                                          |
| `cloneName` | string |          | `"New Q4 Promotional Email"` | The name for the newly cloned marketing email. If not provided, HubSpot may assign a default name (e.g., `'Copy of [Original Email Name]'`). |

***

### `Hubspot Configure Calling Extension Settings`

Integration name: **HUBSPOT\_CONFIGURE\_CALLING\_EXTENSION\_SETTINGS**

Configures or updates settings for a HubSpot app's calling extension, including its name, UI URL, iframe dimensions, `isReady` status, and `supportsCustomObjects` flag, for the specified `appId`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example                             | Description                                                                                                         |
| ----------------------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `url`                   | string  |     ✅    | `"https://mycallingservice.com/ui"` | Publicly accessible HTTPS URL for the phone/calling UI, which should be built using the HubSpot Calling SDK.        |
| `name`                  | string  |     ✅    | `"My Awesome Caller"`               | Display name for the calling service in the HubSpot interface.                                                      |
| `appId`                 | integer |     ✅    | `"123456"`                          | Unique identifier for the target HubSpot app whose calling extension settings are being configured.                 |
| `width`                 | integer |     ✅    | `"400"`                             | Target width in pixels for the iframe embedding the calling UI.                                                     |
| `height`                | integer |     ✅    | `"600"`                             | Target height in pixels for the iframe embedding the calling UI.                                                    |
| `isReady`               | boolean |          | `"true"`                            | If `true`, the calling service appears as an option under the `'Call'` action in contact records; `false` hides it. |
| `supportsCustomObjects` | boolean |          | `"true"`                            | Specifies if the service is compatible with HubSpot's engagement v2 service and custom objects.                     |

***

### `Hubspot Create Ab Test Variation`

Integration name: **HUBSPOT\_CREATE\_AB\_TEST\_VARIATION**

Creates a new A/B test variation for an existing HubSpot marketing email, using its `contentId`; the new variation is created as a draft that can be edited before publishing. This action only creates the variation—it does not start the A/B test or send emails. Note: If an active variation already exists for the email, a new one will not be created. Requires Marketing Hub Professional or Enterprise subscription.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                       | Description                                                                      |
| --------------- | ------ | :------: | ----------------------------- | -------------------------------------------------------------------------------- |
| `contentId`     | string |     ✅    | `"1234567890"`                | The ID of the original email content to use as a template for the new variation. |
| `variationName` | string |     ✅    | `"Variation B - New Subject"` | A unique name for the new A/B test variation.                                    |

***

### `Hubspot Create And Return A New Property Group`

Integration name: **HUBSPOT\_CREATE\_AND\_RETURN\_A\_NEW\_PROPERTY\_GROUP**

Creates a new, empty property group for a specified CRM object type in HubSpot, requiring a unique group name for that object type; properties must be added separately.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example               | Description                                                                                                                                                                                          |
| -------------- | ------- | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`         | string  |     ✅    | `"sales_info"`        | The unique internal programmatic name for the property group within the specified `objectType`, used for API referencing.                                                                            |
| `label`        | string  |     ✅    | `"Sales Information"` | Human-readable label for the property group, displayed in the HubSpot UI.                                                                                                                            |
| `objectType`   | string  |     ✅    | `"contacts"`          | The CRM object type for which the property group will be created.                                                                                                                                    |
| `displayOrder` | integer |          | `1`                   | Order in which the group appears in the HubSpot UI. Positive values are sorted ascendingly; `-1` places it after groups with positive `displayOrder`. If unspecified, the group is added at the end. |

***

### `Hubspot Create A New Marketing Email`

Integration name: **HUBSPOT\_CREATE\_A\_NEW\_MARKETING\_EMAIL**

Creates a new marketing email in HubSpot, allowing comprehensive configuration of content, recipients, sender details, A/B testing, scheduling, web version, and other settings; the internal `name` for the email is required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                 | Type    | Required | Example                                                                | Description                                                                                                                                                                                                                                      |
| ----------------------------------------- | ------- | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                                    | string  |     ✅    | `"July 2024 Newsletter - Internal"`                                    | Internal name of the email, as displayed on the HubSpot email dashboard.                                                                                                                                                                         |
| `state`                                   | string  |          | —                                                                      | Current state of the email (e.g., `DRAFT`, `SCHEDULED`, `PUBLISHED`).                                                                                                                                                                            |
| `subject`                                 | string  |          | `"Check out our new product update!"`                                  | The subject line of the marketing email.                                                                                                                                                                                                         |
| `archived`                                | boolean |          | —                                                                      | True if the email is archived (typically hidden from main dashboard view).                                                                                                                                                                       |
| `campaign`                                | string  |          | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"`                               | ID (GUID) of the associated HubSpot campaign for tracking/reporting.                                                                                                                                                                             |
| `language`                                | string  |          | `"en-us"`                                                              | Primary language of the email content.                                                                                                                                                                                                           |
| `publishDate`                             | string  |          | `"2024-08-15T10:00:00Z"`                                               | Scheduled ISO 8601 date-time for email publication or sending.                                                                                                                                                                                   |
| `subcategory`                             | string  |          | `"product_launch"`                                                     | Email subcategory for internal organization or specific types (e.g., `'newsletter'`).                                                                                                                                                            |
| `activeDomain`                            | string  |          | `"marketing.mycompany.com"`                                            | Domain for sending the email; must be a connected and verified HubSpot sending domain.                                                                                                                                                           |
| `rssData__url`                            | string  |          | `"http://myblog.com/feed"`                                             | URL of the RSS feed for email content. Must be valid and accessible if using RSS features.                                                                                                                                                       |
| `from__replyTo`                           | string  |          | `"noreply@example.com"`                                                | Primary `'From'` and reply-to email address, unless `from__customReplyTo` is used.                                                                                                                                                               |
| `sendOnPublish`                           | boolean |          | —                                                                      | True to send email immediately on publish; false to publish without sending until triggered/scheduled.                                                                                                                                           |
| `businessUnitId`                          | string  |          | `"78910"`                                                              | The ID of the business unit this email is associated with, if applicable.                                                                                                                                                                        |
| `from__fromName`                          | string  |          | `"The MyCompany Team"`                                                 | Sender name appearing in the `'From'` field of the received email.                                                                                                                                                                               |
| `rssData__timing`                         | object  |          | —                                                                      | A dictionary specifying the timing and scheduling details for sending RSS emails. Each key must map to a dictionary/object value, not a simple string. Example: `{"dayOfWeek": {"value": "Tuesday"}, "time": {"hour": 9, "minute": 0}}`.         |
| `testing__testId`                         | string  |          | `"ab_test_123"`                                                        | The unique identifier for the A/B test associated with this email.                                                                                                                                                                               |
| `content__widgets`                        | object  |          | —                                                                      | Dictionary of widgets (e.g., text, images, CTAs) and their configurations for email content. Each key must map to a dictionary/object value, not a simple string. Example: `{"widgetId": {"type": "text", "content": "Hello", "style": {...}}}`. |
| `feedbackSurveyId`                        | string  |          | `"12345"`                                                              | The ID of the feedback survey linked to the email.                                                                                                                                                                                               |
| `webversion__slug`                        | string  |          | `"july-newsletter-2024"`                                               | Custom URL slug for the email's web version (e.g., `'july-newsletter'`).                                                                                                                                                                         |
| `testing__abStatus`                       | string  |          | —                                                                      | Current A/B test status for this email (e.g., `master`, `variant`).                                                                                                                                                                              |
| `webversion__title`                       | string  |          | `"Our Latest Newsletter - Web Version"`                                | Browser tab title for the email's web version.                                                                                                                                                                                                   |
| `content__flexAreas`                      | object  |          | —                                                                      | Dictionary defining content and layout of flexible, customizable areas in the email template. Each key must map to a dictionary/object value, not a simple string. Example: `{"areaName": {"content": {...}, "layout": {...}}}`.                 |
| `webversion__domain`                      | string  |          | `"view.mycompany.com"`                                                 | Domain for the email's web version; defaults to HubSpot domain if unspecified.                                                                                                                                                                   |
| `from__customReplyTo`                     | string  |          | `"support@example.com"`                                                | Custom reply-to email address, overrides main `'Reply To'` if set.                                                                                                                                                                               |
| `rssData__blogLayout`                     | string  |          | `"standard"`                                                           | Specifies the layout to be used for the blog RSS email.                                                                                                                                                                                          |
| `rssData__maxEntries`                     | integer |          | `"5"`                                                                  | The maximum number of blog posts (RSS entries) to include in a single RSS email.                                                                                                                                                                 |
| `content__smartFields`                    | object  |          | —                                                                      | Dictionary of smart fields for email personalization based on contact properties. Each key must map to a dictionary/object value, not a simple string. Example: `{"fieldName": {"value": "defaultValue", "conditions": {...}}}`.                 |
| `testing__hoursToWait`                    | integer |          | `"4"`                                                                  | Hours to wait for A/B test results before sending the winning version to remaining recipients.                                                                                                                                                   |
| `to__suppressGraymail`                    | boolean |          | —                                                                      | True to not send to contacts identified by HubSpot as `'graymail'` (low engagement).                                                                                                                                                             |
| `content__templatePath`                   | string  |          | `"custom/page/my_email_template.html"`                                 | Path to the email template in HubSpot Design Manager.                                                                                                                                                                                            |
| `webversion__expiresAt`                   | string  |          | `"2025-01-01T00:00:00Z"`                                               | ISO 8601 date-time when the web version expires and becomes inaccessible.                                                                                                                                                                        |
| `rssData__blogEmailType`                  | string  |          | `"daily"`                                                              | The type of blog email, which determines send frequency (e.g., instant, daily, weekly).                                                                                                                                                          |
| `rssData__hubspotBlogId`                  | string  |          | `"987654321"`                                                          | The ID of the HubSpot blog to be used for the RSS email.                                                                                                                                                                                         |
| `to__limitSendFrequency`                  | boolean |          | —                                                                      | True to apply HubSpot's send frequency limits, preventing over-mailing.                                                                                                                                                                          |
| `to__contactIds__exclude`                 | array   |          | `["201","202"]`                                                        | List of specific contact IDs to explicitly exclude, even if in included lists.                                                                                                                                                                   |
| `to__contactIds__include`                 | array   |          | `["101","102"]`                                                        | List of specific contact IDs to include as recipients.                                                                                                                                                                                           |
| `testing__abSuccessMetric`                | string  |          | —                                                                      | Metric (e.g., `CLICKS_BY_OPENS`) to determine the A/B test winning version.                                                                                                                                                                      |
| `content__plainTextVersion`               | string  |          | —                                                                      | Plain text version of the email, for non-HTML clients or recipient preference.                                                                                                                                                                   |
| `content__widgetContainers`               | object  |          | —                                                                      | Dictionary of widget containers for grouping and managing widgets in the email template.                                                                                                                                                         |
| `rssData__rssEntryTemplate`               | string  |          | —                                                                      | The HTML template for formatting each individual RSS entry within the email.                                                                                                                                                                     |
| `testing__abTestPercentage`               | integer |          | `"20"`                                                                 | Percentage of recipients in the A/B test group (e.g., 20 for 20%).                                                                                                                                                                               |
| `to__contactLists__exclude`               | array   |          | `["12345"]`                                                            | List of contact list IDs whose members to explicitly exclude. HubSpot contact list IDs are typically numeric strings (e.g., `'12345'`, `'67890'`). Provide the numeric ID as a string.                                                           |
| `to__contactLists__include`               | array   |          | `["12345","67890"]`                                                    | List of contact list IDs whose members to include as recipients. HubSpot contact list IDs are typically numeric strings (e.g., `'12345'`, `'67890'`). Provide the numeric ID as a string.                                                        |
| `webversion__redirectToUrl`               | string  |          | `"https://mycompany.com/email-expired"`                                | Custom URL for redirect if web version link is expired/deactivated.                                                                                                                                                                              |
| `rssData__blogImageMaxWidth`              | integer |          | `"600"`                                                                | The maximum width for images included from the blog feed in the RSS email.                                                                                                                                                                       |
| `testing__abSamplingDefault`              | string  |          | —                                                                      | Default email version (master/variant) if A/B test is inconclusive after the test period.                                                                                                                                                        |
| `webversion__metaDescription`             | string  |          | `"Catch up on our latest news and offers in this month's newsletter."` | Meta description for the web version, used by search engines.                                                                                                                                                                                    |
| `content__themeSettingsValues`            | object  |          | —                                                                      | Dictionary of theme settings values to customize email appearance. Each key must map to a dictionary/object value, not a simple string. Example: `{"brandColor": {"value": "#0055CC"}, "fontFamily": {"name": "Arial"}}`.                        |
| `testing__abSampleSizeDefault`            | string  |          | —                                                                      | Default email version (master/variant) if A/B test sample size is too small for significance.                                                                                                                                                    |
| `webversion__redirectToPageId`            | string  |          | `"1122334455"`                                                         | ID of a HubSpot page for redirect if web version link is expired/deactivated.                                                                                                                                                                    |
| `rssData__useHeadlineAsSubject`           | boolean |          | —                                                                      | If true, the email subject will be automatically populated from the blog post headline for RSS emails.                                                                                                                                           |
| `subscriptionDetails__subscriptionId`     | string  |          | `"sub_type_newsletter"`                                                | ID of the specific subscription type (e.g., newsletter, product updates).                                                                                                                                                                        |
| `subscriptionDetails__officeLocationId`   | string  |          | `"loc_boston_hq"`                                                      | ID of the office location for CAN-SPAM compliance and personalization.                                                                                                                                                                           |
| `subscriptionDetails__preferencesGroupId` | string  |          | `"pref_group_marketing"`                                               | ID of the subscription preferences group for managing recipient preferences.                                                                                                                                                                     |

***

### `Hubspot Create Association`

Integration name: **HUBSPOT\_CREATE\_ASSOCIATION**

Creates a new custom association definition (schema) for a custom object in HubSpot, specifying how this object type can relate to another object type; this defines the association type itself, not actual record-to-record links. Note: This endpoint requires `crm.schemas.custom.write` scope and only works with custom objects (not standard HubSpot objects like contacts or companies).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                   | Description                                                                                                                                                                                                                                                                         |
| ------------------ | ------ | :------: | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string |          | `"custom_contact_to_company_association"` | Optional, user-defined unique name for the new association type (e.g., `'contact_to_company_custom'`). If not supplied, HubSpot may generate a default.                                                                                                                             |
| `objectType`       | string |     ✅    | `"2-123456"`                              | Fully qualified name or object type ID (e.g., `'2-12345'`) of the CUSTOM object schema for which the new association type is being defined. Must be a custom object, not a standard HubSpot object.                                                                                 |
| `toObjectTypeId`   | string |     ✅    | `"companies"`                             | Object type ID or fully qualified name for the `'to'` side of the association. For standard objects use names (`'contacts'`, `'companies'`, `'deals'`, `'tickets'`) or IDs (`'0-1'`, `'0-2'`, `'0-3'`, `'0-5'`). For custom objects use their `objectTypeId` (e.g., `'2-12345'`).   |
| `fromObjectTypeId` | string |     ✅    | `"contacts"`                              | Object type ID or fully qualified name for the `'from'` side of the association. For standard objects use names (`'contacts'`, `'companies'`, `'deals'`, `'tickets'`) or IDs (`'0-1'`, `'0-2'`, `'0-3'`, `'0-5'`). For custom objects use their `objectTypeId` (e.g., `'2-12345'`). |

***

### `Hubspot Create Batch Of Feedback Submissions`

Integration name: **HUBSPOT\_CREATE\_BATCH\_OF\_FEEDBACK\_SUBMISSIONS**

Creates a batch of feedback submissions in HubSpot, ideal for bulk imports; all property names, `associationTypeId`s, and association `to_id`s must reference existing entities in HubSpot.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                                         |
| --------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of feedback submission objects to create. Each object defines the properties and associations for a new feedback submission. |

***

### `Hubspot Create Batch Of Objects`

Integration name: **HUBSPOT\_CREATE\_BATCH\_OF\_OBJECTS**

Creates multiple CRM objects of a specified `objectType` (e.g., contacts, companies, deals) in a single batch operation, where each object can have its own set of properties and associations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                                                                                                                                                          |
| ------------ | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `inputs`     | array  |     ✅    | —            | A list of objects to be created in batch. Each item in the list defines the properties and associations for a new object.                                                                            |
| `objectType` | string |     ✅    | `"contacts"` | The type of CRM object to create in batch (e.g., `'contacts'`, `'companies'`, `'deals'`, `'tickets'`, `'products'`, `'line_items'`, or a custom object ID). Must be a valid HubSpot CRM object type. |

***

### `Hubspot Create Batch Of Properties`

Integration name: **HUBSPOT\_CREATE\_BATCH\_OF\_PROPERTIES**

Efficiently creates multiple CRM properties in a single batch for a specified HubSpot object type (e.g., `'contacts'`, `'companies'`, custom object ID), ideal for schema setup or updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example      | Description                                                                                                               |
| ------------ | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------- |
| `inputs`     | array  |     ✅    | —            | List of definitions for the new properties to be created.                                                                 |
| `objectType` | string |     ✅    | `"contacts"` | Target HubSpot CRM object type (e.g., `'contacts'`, `'companies'`, `'deals'`, or custom object ID) for property creation. |

***

### `Hubspot Create Batch Of Quotes`

Integration name: **HUBSPOT\_CREATE\_BATCH\_OF\_QUOTES**

Creates multiple HubSpot CRM quotes in a batch, ideal for bulk operations; provide meaningful quote details in `inputs` as property requirements can vary, and inspect response for individual quote statuses as partial success is possible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                             |
| --------- | ----- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of quote objects to be created. Each object in the list defines the properties and associations for a new quote. |

***

### `Hubspot Create Campaign`

Integration name: **HUBSPOT\_CREATE\_CAMPAIGN**

Creates a new HubSpot campaign.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                               |
| ------------ | ------ | :------: | ------- | --------------------------------------------------------- |
| `properties` | object |     ✅    | —       | Campaign properties including name and optional metadata. |

***

### `Hubspot Create Campaigns`

Integration name: **HUBSPOT\_CREATE\_CAMPAIGNS**

Creates multiple HubSpot campaigns by calling the single campaign creation endpoint for each campaign. Note: HubSpot does not provide a native batch create endpoint for campaigns. This action creates multiple campaigns by making individual API calls for each campaign in the batch.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                         |
| --------- | ----- | :------: | ------- | ----------------------------------- |
| `inputs`  | array |     ✅    | —       | List of campaign objects to create. |

***

### `Hubspot Create Companies`

Integration name: **HUBSPOT\_CREATE\_COMPANIES**

Creates multiple new HubSpot companies in a single batch operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                      |
| --------- | ----- | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `inputs`  | array |     ✅    | —       | A list of company objects to create. Each object represents one new company with its properties. |

***

### `Hubspot Create Company`

Integration name: **HUBSPOT\_CREATE\_COMPANY**

Creates a new HubSpot company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                           |
| ------------------- | ------ | :------: | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `zip`               | string |          | `"94105"`                                      | Company's postal code.                                                                                                                                                                                                                                                                                                |
| `city`              | string |          | `"San Francisco"`                              | City where the company is located.                                                                                                                                                                                                                                                                                    |
| `name`              | string |          | `"Acme Corporation"`                           | Company name.                                                                                                                                                                                                                                                                                                         |
| `type`              | string |          | `"PROSPECT"`                                   | Type of company.                                                                                                                                                                                                                                                                                                      |
| `phone`             | string |          | `"+1-555-123-4567"`                            | Company's primary phone number.                                                                                                                                                                                                                                                                                       |
| `state`             | string |          | `"California"`                                 | State or region where the company is located.                                                                                                                                                                                                                                                                         |
| `domain`            | string |          | `"example.com"`                                | Company's primary domain name.                                                                                                                                                                                                                                                                                        |
| `address`           | string |          | `"123 Business St"`                            | Company street address.                                                                                                                                                                                                                                                                                               |
| `country`           | string |          | `"United States"`                              | Country where the company is located.                                                                                                                                                                                                                                                                                 |
| `website`           | string |          | `"https://www.example.com"`                    | Company's website URL.                                                                                                                                                                                                                                                                                                |
| `about_us`          | string |          | `"We are a leading technology company."`       | Company description or about us information.                                                                                                                                                                                                                                                                          |
| `address2`          | string |          | `"Suite 100"`                                  | Additional address information (suite, floor, etc.).                                                                                                                                                                                                                                                                  |
| `industry`          | string |          | `"COMPUTER_SOFTWARE"`                          | The type of business the company performs. Must be one of HubSpot's predefined industry enum values in SCREAMING\_SNAKE\_CASE (e.g., COMPUTER\_SOFTWARE, FINANCIAL\_SERVICES, HOSPITAL\_HEALTH\_CARE, RETAIL, BIOTECHNOLOGY). See HubSpot's company properties documentation for the full list of \~120 valid values. |
| `timezone`          | string |          | `"America/Los_Angeles"`                        | Company's timezone.                                                                                                                                                                                                                                                                                                   |
| `is_public`         | string |          | `"true"`                                       | Whether the company is publicly traded.                                                                                                                                                                                                                                                                               |
| `description`       | string |          | `"Technology startup focused on AI solutions"` | Brief description of the company.                                                                                                                                                                                                                                                                                     |
| `associations`      | array  |          | —                                              | List of associations to create with other existing HubSpot objects.                                                                                                                                                                                                                                                   |
| `founded_year`      | string |          | `"2020"`                                       | Year the company was founded.                                                                                                                                                                                                                                                                                         |
| `annualrevenue`     | string |          | `"5000000"`                                    | Company's annual revenue.                                                                                                                                                                                                                                                                                             |
| `lifecyclestage`    | string |          | `"lead"`                                       | Current lifecycle stage of the company.                                                                                                                                                                                                                                                                               |
| `custom_properties` | object |          | —                                              | Custom properties for the company.                                                                                                                                                                                                                                                                                    |
| `numberofemployees` | string |          | `"50"`                                         | Number of employees in the company.                                                                                                                                                                                                                                                                                   |

***

### `Hubspot Create Contact`

Integration name: **HUBSPOT\_CREATE\_CONTACT**

Creates a new HubSpot contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                      | Type   | Required | Example                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                 |
| ---------------------------------------------- | ------ | :------: | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fax`                                          | string |          | `"+1-555-123-4568"`                                                         | The contact's fax number.                                                                                                                                                                                                                                                                                                                                                                   |
| `zip`                                          | string |          | `"02139"`                                                                   | The contact's postal code or ZIP code.                                                                                                                                                                                                                                                                                                                                                      |
| `city`                                         | string |          | `"Cambridge"`                                                               | The city where the contact resides.                                                                                                                                                                                                                                                                                                                                                         |
| `email`                                        | string |          | `"testing@hubspot.com"`                                                     | The primary email address of the contact. This is a unique identifier for contacts in HubSpot.                                                                                                                                                                                                                                                                                              |
| `phone`                                        | string |          | `"+1-555-123-4567"`                                                         | The contact's primary phone number (often a business phone).                                                                                                                                                                                                                                                                                                                                |
| `photo`                                        | string |          | `"https://example.com/profiles/johndoe.jpg"`                                | URL of the contact's photo or avatar.                                                                                                                                                                                                                                                                                                                                                       |
| `state`                                        | string |          | `"Massachusetts"`                                                           | The state or region where the contact resides.                                                                                                                                                                                                                                                                                                                                              |
| `degree`                                       | string |          | `"Master of Business Administration"`                                       | The contact's highest completed educational degree.                                                                                                                                                                                                                                                                                                                                         |
| `gender`                                       | string |          | `"Male"`                                                                    | The contact's gender.                                                                                                                                                                                                                                                                                                                                                                       |
| `school`                                       | string |          | `"Massachusetts Institute of Technology"`                                   | The name of the school, college, or university the contact attended.                                                                                                                                                                                                                                                                                                                        |
| `address`                                      | string |          | `"123 Main St, Apt 4B"`                                                     | The contact's street address, including apartment or unit number.                                                                                                                                                                                                                                                                                                                           |
| `company`                                      | string |          | `"HubSpot"`                                                                 | The name of the company the contact works for. If `associatedcompanyid` is set, this field might be auto-populated.                                                                                                                                                                                                                                                                         |
| `country`                                      | string |          | `"USA"`                                                                     | The country where the contact resides.                                                                                                                                                                                                                                                                                                                                                      |
| `ip_city`                                      | string |          | `"Cambridge"`                                                               | The city associated with the contact's IP address, often captured during their first website visit or form submission.                                                                                                                                                                                                                                                                      |
| `message`                                      | string |          | `"Interested in learning more about your enterprise solutions."`            | A free-text message or note often captured from a form submission's message field.                                                                                                                                                                                                                                                                                                          |
| `website`                                      | string |          | `"https://www.example.com"`                                                 | The URL of the contact's personal or company website.                                                                                                                                                                                                                                                                                                                                       |
| `industry`                                     | string |          | `"Computer Software"`                                                       | The primary industry of the company the contact works for.                                                                                                                                                                                                                                                                                                                                  |
| `ip_state`                                     | string |          | `"Massachusetts"`                                                           | The state or region associated with the contact's IP address.                                                                                                                                                                                                                                                                                                                               |
| `jobtitle`                                     | string |          | `"Marketing Manager"`                                                       | The contact's job title.                                                                                                                                                                                                                                                                                                                                                                    |
| `lastname`                                     | string |          | `"Doe"`                                                                     | The contact's last name.                                                                                                                                                                                                                                                                                                                                                                    |
| `closedate`                                    | string |          | `"1609459200000"`                                                           | The date when the deal associated with this contact was closed. Expected format is a UTC timestamp in milliseconds.                                                                                                                                                                                                                                                                         |
| `firstname`                                    | string |          | `"John"`                                                                    | The contact's first name.                                                                                                                                                                                                                                                                                                                                                                   |
| `ip_latlon`                                    | string |          | `"42.3611,-71.0571"`                                                        | The approximate latitude and longitude associated with the contact's IP address, typically in `'latitude,longitude'` format.                                                                                                                                                                                                                                                                |
| `num_notes`                                    | string |          | `"15"`                                                                      | The total number of notes logged on the contact's record.                                                                                                                                                                                                                                                                                                                                   |
| `ownername`                                    | string |          | `"Jane Salesrep"`                                                           | The full name of the HubSpot user who owns this contact. Read-only.                                                                                                                                                                                                                                                                                                                         |
| `seniority`                                    | string |          | `"Director"`                                                                | The contact's seniority level within their organization.                                                                                                                                                                                                                                                                                                                                    |
| `createdate`                                   | string |          | `"2023-01-15T14:20:00Z"`                                                    | The date and time when the contact record was created in HubSpot. This is a read-only property, typically a UTC timestamp.                                                                                                                                                                                                                                                                  |
| `ip_country`                                   | string |          | `"United States"`                                                           | The country associated with the contact's IP address.                                                                                                                                                                                                                                                                                                                                       |
| `ip_zipcode`                                   | string |          | `"02139"`                                                                   | The postal code or ZIP code associated with the contact's IP address.                                                                                                                                                                                                                                                                                                                       |
| `owneremail`                                   | string |          | `"sales.rep@example.com"`                                                   | The email address of the HubSpot user who owns this contact. Read-only, reflects the owner's primary email.                                                                                                                                                                                                                                                                                 |
| `salutation`                                   | string |          | `"Mr."`                                                                     | The salutation for the contact (e.g., `'Mr.'`, `'Ms.'`, `'Dr.'`).                                                                                                                                                                                                                                                                                                                           |
| `start_date`                                   | string |          | `"2020-06-01"`                                                              | The contact's start date, typically referring to their employment start date at their current company. Format can vary.                                                                                                                                                                                                                                                                     |
| `twitterbio`                                   | string |          | `"Tech enthusiast and avid blogger. #Innovation #Marketing"`                | The contact's biography from their Twitter profile.                                                                                                                                                                                                                                                                                                                                         |
| `work_email`                                   | string |          | `"john.doe@company.com"`                                                    | The contact's work email address. This might be different from the primary `email` if that's a personal address.                                                                                                                                                                                                                                                                            |
| `linkedinbio`                                  | string |          | `"Experienced marketing professional with a passion for digital strategy."` | The contact's biography from their LinkedIn profile.                                                                                                                                                                                                                                                                                                                                        |
| `mobilephone`                                  | string |          | `"+1-555-987-6543"`                                                         | The contact's mobile phone number.                                                                                                                                                                                                                                                                                                                                                          |
| `associations`                                 | array  |          | —                                                                           | List of associations to create with other existing HubSpot objects (e.g., companies, deals).                                                                                                                                                                                                                                                                                                |
| `company_size`                                 | string |          | `"501-1000 employees"`                                                      | The size of the company the contact works for, often categorized (e.g., `'1-10 employees'`, `'501-1000 employees'`).                                                                                                                                                                                                                                                                        |
| `hubspotscore`                                 | string |          | `"75"`                                                                      | The contact's HubSpot lead score, calculated based on criteria defined in your HubSpot portal's scoring settings.                                                                                                                                                                                                                                                                           |
| `job_function`                                 | string |          | `"Marketing"`                                                               | The contact's job function or department.                                                                                                                                                                                                                                                                                                                                                   |
| `numemployees`                                 | string |          | `"750"`                                                                     | The number of employees at the company the contact works for. This may differ from `'company_size'` if manually entered or from a different source.                                                                                                                                                                                                                                         |
| `annualrevenue`                                | string |          | `"5000000"`                                                                 | The annual revenue of the company the contact works for.                                                                                                                                                                                                                                                                                                                                    |
| `date_of_birth`                                | string |          | `"1990-05-15"`                                                              | The contact's date of birth. Format can vary, but `YYYY-MM-DD` is common.                                                                                                                                                                                                                                                                                                                   |
| `days_to_close`                                | string |          | `"30"`                                                                      | The number of days it took to close the deal associated with this contact. This is usually calculated automatically.                                                                                                                                                                                                                                                                        |
| `followercount`                                | string |          | `"1500"`                                                                    | The number of followers the contact has on a specified social media platform (e.g., Twitter).                                                                                                                                                                                                                                                                                               |
| `ip_state_code`                                | string |          | `"MA"`                                                                      | The state or region code associated with the contact's IP address (e.g., US state code).                                                                                                                                                                                                                                                                                                    |
| `total_revenue`                                | string |          | `"25000.00"`                                                                | The total revenue generated from all closed-won deals associated with this contact.                                                                                                                                                                                                                                                                                                         |
| `twitterhandle`                                | string |          | `"johndoe_tweets"`                                                          | The contact's Twitter username (handle), without the `@` symbol.                                                                                                                                                                                                                                                                                                                            |
| `field_of_study`                               | string |          | `"Computer Science"`                                                        | The contact's primary field of study during their education.                                                                                                                                                                                                                                                                                                                                |
| `hs_legal_basis`                               | string |          | `"Freely given consent from contact"`                                       | Legal basis for processing contact data under GDPR and privacy regulations.                                                                                                                                                                                                                                                                                                                 |
| `lifecyclestage`                               | string |          | `"lead"`                                                                    | The contact's current stage in your sales and marketing funnel (e.g., `'Lead'`, `'Marketing Qualified Lead'`, `'Customer'`). These stages are customizable in HubSpot.                                                                                                                                                                                                                      |
| `marital_status`                               | string |          | `"Single"`                                                                  | The contact's marital status.                                                                                                                                                                                                                                                                                                                                                               |
| `graduation_date`                              | string |          | `"2015-05-30"`                                                              | The contact's graduation date from their educational institution. Format can vary.                                                                                                                                                                                                                                                                                                          |
| `hs_all_team_ids`                              | string |          | `"12345;67890;34567"`                                                       | A semicolon-separated list of all HubSpot Team IDs this contact is or has been associated with.                                                                                                                                                                                                                                                                                             |
| `hubspot_team_id`                              | string |          | `"12345"`                                                                   | The ID of the HubSpot team that owns this contact.                                                                                                                                                                                                                                                                                                                                          |
| `ip_country_code`                              | string |          | `"US"`                                                                      | The two-letter country code (ISO 3166-1 alpha-2) associated with the contact's IP address.                                                                                                                                                                                                                                                                                                  |
| `military_status`                              | string |          | `"Veteran"`                                                                 | The contact's military status.                                                                                                                                                                                                                                                                                                                                                              |
| `hs_all_owner_ids`                             | string |          | `"5001;5002"`                                                               | A semicolon-separated list of all HubSpot Owner IDs who have been assigned to this contact at some point.                                                                                                                                                                                                                                                                                   |
| `hubspot_owner_id`                             | string |          | `"5001"`                                                                    | The ID of the HubSpot user who is the current owner of this contact.                                                                                                                                                                                                                                                                                                                        |
| `lastmodifieddate`                             | string |          | `"2024-03-18T10:00:00Z"`                                                    | The date and time when the contact record was last modified. This is a read-only property, UTC timestamp.                                                                                                                                                                                                                                                                                   |
| `custom_properties`                            | object |          | —                                                                           | A dictionary of custom properties to set for the contact. Keys are the internal names of your custom contact properties, and values are the data to set. Example: `{'custom_property_internal_name': 'value_for_custom_property'}`. Note: For common properties with enum values like `hs_legal_basis`, use the dedicated field instead of `custom_properties` to ensure proper validation. |
| `kloutscoregeneral`                            | string |          | `"65"`                                                                      | The contact's general Klout score, if available and integrated. Klout was a service that rated social media influence.                                                                                                                                                                                                                                                                      |
| `notes_last_updated`                           | string |          | `"1615464000000"`                                                           | The date and time when the notes on the contact record were last updated. UTC timestamp in milliseconds.                                                                                                                                                                                                                                                                                    |
| `recent_deal_amount`                           | string |          | `"5000.00"`                                                                 | The amount of the most recent closed-won deal associated with this contact.                                                                                                                                                                                                                                                                                                                 |
| `associatedcompanyid`                          | string |          | `"987654321"`                                                               | The ID of the primary company associated with this contact. This is a read-only property automatically updated when an association is made.                                                                                                                                                                                                                                                 |
| `currentlyinworkflow`                          | string |          | `"true"`                                                                    | Indicates whether the contact is currently active in any HubSpot workflow. Boolean value, `'true'` or `'false'`.                                                                                                                                                                                                                                                                            |
| `hs_all_contact_vids`                          | string |          | `"111222333;444555666"`                                                     | A semicolon-separated list of all HubSpot Contact VID (Visitor ID) values associated with this contact, typically used for merging contacts.                                                                                                                                                                                                                                                |
| `hs_analytics_source`                          | string |          | `"Organic Search"`                                                          | The original source that generated the contact (e.g., `'Organic Search'`, `'Paid Social'`, `'Referrals'`).                                                                                                                                                                                                                                                                                  |
| `linkedinconnections`                          | string |          | `"500+"`                                                                    | The number of LinkedIn connections the contact has.                                                                                                                                                                                                                                                                                                                                         |
| `num_contacted_notes`                          | string |          | `"12"`                                                                      | The number of notes on the contact record that relate to being contacted (e.g., call logs, meeting notes).                                                                                                                                                                                                                                                                                  |
| `relationship_status`                          | string |          | `"In a relationship"`                                                       | The contact's self-reported relationship status.                                                                                                                                                                                                                                                                                                                                            |
| `twitterprofilephoto`                          | string |          | `"https://twitter.com/johndoe_tweets/profile_image"`                        | URL of the contact's Twitter profile photo.                                                                                                                                                                                                                                                                                                                                                 |
| `hs_additional_emails`                         | string |          | `"secondary@example.com;personal@example.org"`                              | A semicolon-separated list of additional email addresses for the contact.                                                                                                                                                                                                                                                                                                                   |
| `hs_analytics_revenue`                         | string |          | `"15000.00"`                                                                | Revenue attributed to this contact through HubSpot's analytics or e-commerce integrations. This is often a sum of closed-won deal amounts associated with the contact.                                                                                                                                                                                                                      |
| `notes_last_contacted`                         | string |          | `"1615377600000"`                                                           | The date and time the contact was last contacted, based on logged activities like calls, emails, or meetings. UTC timestamp in milliseconds.                                                                                                                                                                                                                                                |
| `num_associated_deals`                         | string |          | `"3"`                                                                       | The total number of deals currently associated with this contact.                                                                                                                                                                                                                                                                                                                           |
| `first_conversion_date`                        | string |          | `"2023-02-20T09:15:00Z"`                                                    | The date and time of the contact's first conversion (e.g., form submission). UTC timestamp.                                                                                                                                                                                                                                                                                                 |
| `hs_analytics_last_url`                        | string |          | `"https://www.example.com/pricing"`                                         | The last URL on your website that the contact visited.                                                                                                                                                                                                                                                                                                                                      |
| `num_conversion_events`                        | string |          | `"8"`                                                                       | The total number of conversion events (e.g., form submissions, CTA clicks) attributed to this contact.                                                                                                                                                                                                                                                                                      |
| `hs_analytics_first_url`                       | string |          | `"https://www.example.com/blog/my-first-post"`                              | The first URL on your website that the contact visited.                                                                                                                                                                                                                                                                                                                                     |
| `recent_conversion_date`                       | string |          | `"2024-03-12T11:30:00Z"`                                                    | The date and time of the contact's most recent conversion event. UTC timestamp.                                                                                                                                                                                                                                                                                                             |
| `recent_deal_close_date`                       | string |          | `"1614556800000"`                                                           | The close date of the most recent closed-won deal associated with this contact. UTC timestamp in milliseconds.                                                                                                                                                                                                                                                                              |
| `first_deal_created_date`                      | string |          | `"2023-03-01T11:00:00Z"`                                                    | The date and time when the first deal was created for this contact. UTC timestamp.                                                                                                                                                                                                                                                                                                          |
| `hs_analytics_num_visits`                      | string |          | `"7"`                                                                       | The total number of sessions (visits) the contact has had on your website.                                                                                                                                                                                                                                                                                                                  |
| `webinareventlastupdated`                      | string |          | `"2023-11-01T00:00:00Z"`                                                    | Timestamp of the last update related to a webinar event (e.g., GoToWebinar) for this contact, if integrated. UTC timestamp.                                                                                                                                                                                                                                                                 |
| `notes_next_activity_date`                     | string |          | `"1618444800000"`                                                           | The date and time of the next scheduled activity (e.g., task, meeting) with the contact. UTC timestamp in milliseconds.                                                                                                                                                                                                                                                                     |
| `hs_all_accessible_team_ids`                   | string |          | `"12345;67890"`                                                             | A semicolon-separated list of HubSpot Team IDs that have access to this contact record.                                                                                                                                                                                                                                                                                                     |
| `hs_analytics_last_referrer`                   | string |          | `"https://www.linkedin.com/"`                                               | The last referring URL that brought the contact to your website before their most recent session.                                                                                                                                                                                                                                                                                           |
| `hs_analytics_source_data_1`                   | string |          | `"google"`                                                                  | Additional detail for the source. For `'Organic search'`, this might be the search engine. For `'Paid social'`, this could be the social media platform.                                                                                                                                                                                                                                    |
| `hs_analytics_source_data_2`                   | string |          | `"hubspot crm integration"`                                                 | Further detail for the source. For `'Organic search'`, this might be the keyword. For `'Paid social'`, this could be the campaign name.                                                                                                                                                                                                                                                     |
| `hubspot_owner_assigneddate`                   | string |          | `"1612137600000"`                                                           | The date and time when a HubSpot owner was most recently assigned to this contact. UTC timestamp in milliseconds.                                                                                                                                                                                                                                                                           |
| `first_conversion_event_name`                  | string |          | `"Demo Request Form"`                                                       | The name or identifier of the event that marked the contact's first conversion.                                                                                                                                                                                                                                                                                                             |
| `hs_analytics_first_referrer`                  | string |          | `"https://www.google.com/"`                                                 | The first referring URL that brought the contact to your website.                                                                                                                                                                                                                                                                                                                           |
| `hs_analytics_last_timestamp`                  | string |          | `"2024-03-15T16:45:00Z"`                                                    | Timestamp of the contact's last recorded interaction (e.g., last website visit, form submission). UTC timestamp.                                                                                                                                                                                                                                                                            |
| `hs_analytics_num_page_views`                  | string |          | `"25"`                                                                      | The total number of pages viewed by the contact on your website.                                                                                                                                                                                                                                                                                                                            |
| `associatedcompanylastupdated`                 | string |          | `"2023-10-26T10:30:00Z"`                                                    | The timestamp of the last update to the primary associated company. This is a read-only property.                                                                                                                                                                                                                                                                                           |
| `hs_analytics_first_timestamp`                 | string |          | `"2022-11-10T14:30:00Z"`                                                    | Timestamp of the contact's first recorded interaction (e.g., first website visit). UTC timestamp.                                                                                                                                                                                                                                                                                           |
| `num_unique_conversion_events`                 | string |          | `"4"`                                                                       | The number of unique types of conversion events completed by the contact.                                                                                                                                                                                                                                                                                                                   |
| `recent_conversion_event_name`                 | string |          | `"Webinar Signup"`                                                          | The name or identifier of the contact's most recent conversion event.                                                                                                                                                                                                                                                                                                                       |
| `surveymonkeyeventlastupdated`                 | string |          | `"2023-09-15T00:00:00Z"`                                                    | Timestamp of the last update related to a SurveyMonkey event for this contact, if integrated. UTC timestamp.                                                                                                                                                                                                                                                                                |
| `engagements_last_meeting_booked`              | string |          | `"2024-03-10T10:00:00Z"`                                                    | Timestamp of the last meeting booked with the contact through HubSpot's meetings tool.                                                                                                                                                                                                                                                                                                      |
| `hs_analytics_average_page_views`              | string |          | `"3.5"`                                                                     | The average number of pages viewed by the contact per session on your website, tracked by HubSpot analytics.                                                                                                                                                                                                                                                                                |
| `hs_all_assigned_business_unit_ids`            | string |          | `"101;202"`                                                                 | A semicolon-separated list of Business Unit IDs assigned to this contact, if using HubSpot's Business Units feature.                                                                                                                                                                                                                                                                        |
| `hs_analytics_last_visit_timestamp`            | string |          | `"2024-03-15T16:45:00Z"`                                                    | Timestamp of the contact's most recent visit to your website. UTC timestamp.                                                                                                                                                                                                                                                                                                                |
| `hs_analytics_first_visit_timestamp`           | string |          | `"2022-11-10T14:30:00Z"`                                                    | Timestamp of the contact's first visit to your website. UTC timestamp.                                                                                                                                                                                                                                                                                                                      |
| `hs_analytics_num_event_completions`           | string |          | `"5"`                                                                       | The total number of HubSpot custom events completed by the contact.                                                                                                                                                                                                                                                                                                                         |
| `engagements_last_meeting_booked_medium`       | string |          | `"Meetings Tool"`                                                           | The medium (e.g., `'Meetings Tool'`, `'Email'`) through which the last meeting was booked.                                                                                                                                                                                                                                                                                                  |
| `engagements_last_meeting_booked_source`       | string |          | `"SALES"`                                                                   | The source (e.g., `'SALES'`, `'MARKETING'`) of the last meeting booked.                                                                                                                                                                                                                                                                                                                     |
| `engagements_last_meeting_booked_campaign`     | string |          | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"`                                    | The HubSpot campaign ID (GUID) associated with the last meeting booked.                                                                                                                                                                                                                                                                                                                     |
| `hs_analytics_last_touch_converting_campaign`  | string |          | `"zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz"`                                    | The HubSpot campaign ID (GUID) of the campaign that led to the contact's most recent conversion.                                                                                                                                                                                                                                                                                            |
| `hs_analytics_first_touch_converting_campaign` | string |          | `"yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"`                                    | The HubSpot campaign ID (GUID) of the campaign that led to the contact's first conversion.                                                                                                                                                                                                                                                                                                  |

***

### `Hubspot Create Contact From Nl`

Integration name: **HUBSPOT\_CREATE\_CONTACT\_FROM\_NL**

Creates a new contact in HubSpot from a natural language description. Fetches the contact property schema at runtime, uses an LLM to generate the correct property payload, and creates the contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                                                                                                    |
| -------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `nl_query`     | string |     ✅    | —       | Natural language description of the contact to create. Example: `'Add Jane Smith, email jane@test.com, phone +1-555-0100, company Acme Corp'`. |
| `associations` | array  |          | —       | Optional associations to create between the new contact and other CRM objects (e.g., companies, deals). Pass-through field, not LLM-generated. |

***

### `Hubspot Create Contacts`

Integration name: **HUBSPOT\_CREATE\_CONTACTS**

Creates multiple new HubSpot contacts in a single batch operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example | Description                                                                                                                |
| --------- | ----- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------- |
| `inputs`  | array |     ✅    | —       | A list of contact objects to create. Each object represents one new contact with its properties and optional associations. |

***

### `Hubspot Create Crm Object From Nl`

Integration name: **HUBSPOT\_CREATE\_CRM\_OBJECT\_FROM\_NL**

Creates a new CRM object (contact, deal, company, ticket, or custom object) in HubSpot from a natural language description. Fetches the object's property schema at runtime, uses an LLM to generate the correct property payload, and creates the object.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example      | Description                                                                                                                                                                |
| -------------- | ------ | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `nl_query`     | string |     ✅    | —            | Natural language description of the record to create. Example: `'Create a contact named John Doe with email john@example.com and phone +1-555-0100'`.                      |
| `objectType`   | string |     ✅    | `"contacts"` | The type of CRM object to create. Standard types: `'contacts'`, `'deals'`, `'companies'`, `'tickets'`. Can also be a custom object type ID.                                |
| `associations` | array  |          | —            | Optional associations to create between the new object and other CRM objects. Pass-through field, not LLM-generated. Each association should include `'to'` and `'types'`. |

***

### `Hubspot Create Crm Object With Properties`

Integration name: **HUBSPOT\_CREATE\_CRM\_OBJECT\_WITH\_PROPERTIES**

Creates a new HubSpot CRM object (e.g., contact, company, custom object) with specified `properties` (using valid internal names) and `associations` (to existing objects via valid type IDs).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| -------------- | ------ | :------: | ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `objectType`   | string |     ✅    | `"contacts"`                                                                              | Type of CRM object to create (e.g., `'contacts'`, `'companies'`, `'deals'`, or custom object schema ID like `'p12345678'`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `properties`   | object |     ✅    | `"{\"email\": \"jane.doe@example.com\", \"firstname\": \"Jane\", \"lastname\": \"Doe\"}"` | Key-value pairs for the object's properties. Keys must be internal HubSpot property names valid for the `objectType`. IMPORTANT: Some properties are enumeration types that only accept specific values. For CONTACTS: `'email'` (string), `'firstname'` (string), `'lastname'` (string), `'phone'` (string), `'lifecyclestage'` (enum: subscriber, lead, marketingqualifiedlead, salesqualifiedlead, opportunity, customer, evangelist, other). For COMPANIES: `'name'` (string, required), `'domain'` (string), `'phone'` (string), `'city'` (string), `'state'` (string), `'country'` (string), `'industry'` (enum - must use UPPERCASE values like: ACCOUNTING, AIRLINES\_AVIATION, BANKING, BIOTECHNOLOGY, COMPUTER\_SOFTWARE, CONSTRUCTION, CONSUMER\_GOODS, EDUCATION\_MANAGEMENT, ENTERTAINMENT, FINANCIAL\_SERVICES, FOOD\_BEVERAGES, GOVERNMENT\_ADMINISTRATION, HEALTH\_WELLNESS\_AND\_FITNESS, HOSPITAL\_HEALTH\_CARE, HOSPITALITY, INFORMATION\_TECHNOLOGY\_AND\_SERVICES, INSURANCE, INTERNET, LEGAL\_SERVICES, MANAGEMENT\_CONSULTING, MANUFACTURING, MARKETING\_AND\_ADVERTISING, MEDIA\_PRODUCTION, NON\_PROFIT\_ORGANIZATION\_MANAGEMENT, OIL\_ENERGY, PHARMACEUTICALS, REAL\_ESTATE, RETAIL, TELECOMMUNICATIONS, TRANSPORTATION\_TRUCKING\_RAILROAD, VENTURE\_CAPITAL\_PRIVATE\_EQUITY, WHOLESALE, and \~115 more). For DEALS: `'dealname'` (string, required), `'amount'` (string/number), `'dealstage'` (enum: pipeline-specific stage IDs), `'closedate'` (ISO 8601 date), `'pipeline'` (pipeline ID). For TICKETS: `'subject'` (string), `'content'` (string), `'hs_pipeline'` (pipeline ID), `'hs_pipeline_stage'` (stage ID), `'hs_ticket_priority'` (enum: LOW, MEDIUM, HIGH). Use `GET /crm/v3/properties/{objectType}` to retrieve all valid properties and their enum options for any object type. |
| `associations` | array  |     ✅    | —                                                                                         | List of associations to create between the new object and existing CRM objects, using `to_id` and `types`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Hubspot Create Deal`

Integration name: **HUBSPOT\_CREATE\_DEAL**

Creates a new HubSpot deal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type   | Required | Example                                                                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------------------------------ | ------ | :------: | -------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `amount`                                   | string |          | `"1000.00"`                                                                | Total monetary value of the deal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `hs_acv`                                   | string |          | `"12000.00"`                                                               | Annual Contract Value (ACV) (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `hs_arr`                                   | string |          | `"10000.00"`                                                               | Annual Recurring Revenue (ARR) (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `hs_mrr`                                   | string |          | `"833.33"`                                                                 | Monthly Recurring Revenue (MRR) (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `hs_tcv`                                   | string |          | `"24000.00"`                                                               | Total Contract Value (TCV) (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `dealname`                                 | string |          | `"New Website Project for Acme Corp"`                                      | Descriptive name or title of the deal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `dealtype`                                 | string |          | `"newbusiness"`                                                            | Type of deal (e.g., `'newbusiness'`, `'existingbusiness'`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `pipeline`                                 | string |          | `"default"`                                                                | ID of the sales pipeline for this deal (required).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `closedate`                                | string |          | `"2023-12-31"`                                                             | Date (YYYY-MM-DD) or datetime (ISO 8601) when the deal closed or is expected to close.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `dealstage`                                | string |          | `"closedwon"`                                                              | Valid pipeline stage ID for the deal. IMPORTANT: Stage IDs must be actual values from your HubSpot pipeline configuration - random values, phone numbers, or placeholder text will be rejected by the API with `INVALID_OPTION` errors. Stage IDs can be either string-based (e.g., `'closedwon'`, `'closedlost'`) or numeric strings (e.g., `'2317386479'`) depending on your pipeline setup. You MUST retrieve valid stage IDs using the Pipelines API (`GET /crm/v3/pipelines/deals`) or from HubSpot Settings > Objects > Deals > Pipelines before setting this field.                                                                                                                                                                                                                                                                                                                         |
| `createdate`                               | string |          | `"2023-10-26T10:00:00Z"`                                                   | Date/time deal was created (read-only, HubSpot-set).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `description`                              | string |          | `"Initial discussion with client about their needs for a new CRM system."` | Detailed text description of the deal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `hs_campaign`                              | string |          | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"`                                   | GUID of the HubSpot campaign that generated this deal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `hs_priority`                              | string |          | `"high"`                                                                   | Priority level (e.g., `'high'`, `'medium'`, `'low'`).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `associations`                             | array  |          | —                                                                          | Associations to create between the new deal and other CRM objects (e.g., contact, company).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `hs_is_closed`                             | string |          | `"true"`                                                                   | Indicates if deal is closed (`'true'`/`'false'`; read-only, from deal stage properties).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `hs_next_step`                             | string |          | `"Send proposal by EOD Friday"`                                            | Next planned step for this deal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `hs_object_id`                             | string |          | `"1234567890"`                                                             | Unique ID of the deal object (read-only, HubSpot-assigned).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `days_to_close`                            | string |          | `"30"`                                                                     | Days between creation and close (read-only, HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `hs_createdate`                            | string |          | `"2023-10-26T10:00:00.000Z"`                                               | Specific date/time deal record created (ISO 8601, read-only, HubSpot-set).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `hs_all_team_ids`                          | string |          | `"12345;67890"`                                                            | Semicolon-separated list of all associated team IDs (owner's primary, additional teams; typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `hs_all_owner_ids`                         | string |          | `"101;202;303"`                                                            | Semicolon-separated list of all owner IDs (primary, co-owners).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `hs_closed_amount`                         | string |          | `"950.00"`                                                                 | Actual amount when deal closed (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `hubspot_owner_id`                         | string |          | `"123456"`                                                                 | ID of the HubSpot user owning the deal; may be auto-assigned if unspecified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `closed_won_reason`                        | string |          | `"Strong product fit"`                                                     | Reason why the deal was won.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `custom_properties`                        | object |          | —                                                                          | Custom properties for the deal. Keys are internal property names (as defined in your HubSpot account), values are the property values to set. CRITICAL: Enum/dropdown properties have STRICT validation - you MUST use exact values from your HubSpot configuration or the API will reject with `INVALID_OPTION` error. To find valid values: go to HubSpot Settings > Properties > Deals > \[Property Name] > Edit > Field Type Options. Requirements by type: (1) Enum/dropdown: case-sensitive exact match required (check your HubSpot property settings for valid options); (2) Number: numeric strings only, no units (e.g., `'12'` not `'12 months'`); (3) Date: ISO 8601 format (e.g., `'2024-01-15'`); (4) Checkbox: `'true'` or `'false'`. Properties are account-specific and may not exist in all HubSpot portals. Example: `{'project_type': 'migration', 'priority_level': 'high'}`. |
| `closed_lost_reason`                       | string |          | `"Price too high"`                                                         | Reason why the deal was lost.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `deal_currency_code`                       | string |          | `"USD"`                                                                    | Currency code for deal amount. IMPORTANT: Only currency codes enabled in your HubSpot portal settings are valid. If omitted, defaults to your portal's home currency. To find valid currency codes: go to Settings > Account defaults > Currencies to see your enabled currencies. Common codes include `'USD'` and `'EUR'`, but availability depends on your portal configuration.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `hs_forecast_amount`                       | string |          | `"500.00"`                                                                 | Forecasted amount (\`'Amount' \* 'hs\_deal\_stage\_probability'; HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `hs_analytics_source`                      | string |          | `"Organic Search"`                                                         | Original deal source per HubSpot analytics (e.g., `'Organic Search'`; typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `hs_lastmodifieddate`                      | string |          | `"2024-01-21T15:30:00.000Z"`                                               | Date/time deal last modified (ISO 8601, read-only, HubSpot-updated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `hs_projected_amount`                      | string |          | `"1100.00"`                                                                | Projected deal amount (manually set or calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `amount_in_home_currency`                  | string |          | `"850.00"`                                                                 | Deal's value in company's home currency (read-only, HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `hs_forecast_probability`                  | string |          | `"0.6"`                                                                    | Sales forecasting probability; may differ from `hs_deal_stage_probability`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `hs_deal_stage_probability`                | string |          | `"0.5"`                                                                    | Win probability (decimal, e.g., `0.5`) based on current stage; typically stage-defined.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `hs_all_accessible_team_ids`               | string |          | `"12345;67890"`                                                            | Semicolon-separated list of team IDs with access (typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `engagements_last_meeting_booked`          | string |          | `"2024-01-20T10:00:00Z"`                                                   | Date/time of last booked meeting for this deal (typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `hs_all_assigned_business_unit_ids`        | string |          | `"111;222"`                                                                | Semicolon-separated list of assigned business unit IDs (for Business Units add-on).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `hs_closed_amount_in_home_currency`        | string |          | `"800.00"`                                                                 | Closed amount in home currency (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `hs_projected_amount_in_home_currency`     | string |          | `"935.00"`                                                                 | Projected amount in home currency (HubSpot-calculated).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `engagements_last_meeting_booked_medium`   | string |          | `"Meetings"`                                                               | Medium (e.g., `'Meetings'`) of last booked meeting (typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `engagements_last_meeting_booked_source`   | string |          | `"Calendar"`                                                               | Source (e.g., `'Calendar'`) of last booked meeting (typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `engagements_last_meeting_booked_campaign` | string |          | `"7a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d"`                                   | Campaign ID for the last booked meeting (typically read-only).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

*The remaining HubSpot tool references continue in the same format, preserving each tool name, integration name, description, and parameter table exactly as provided.*


# Hugging Face

Your Toolhouse AI Worker can connect to Hugging Face using 135 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](https://toolhouse.app/auth-connections?authkit_slugs=hugging_face).

## Tools (135)

### `Hugging Face Change Discussions Status`

Integration name: **HUGGING\_FACE\_CHANGE\_DISCUSSIONS\_STATUS**

Tool to change the status of a Hugging Face repository discussion. Use when you need to open or close discussions on models, datasets, or spaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                       | Description                                                                                                                 |
| ----------- | ------ | :------: | ----------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `num`       | string |     ✅    | `"1"`                         | The discussion number or ID to change the status of. This is the numeric identifier of the discussion thread.               |
| `repo`      | string |     ✅    | `"bert-base-uncased"`         | The repository name where the discussion exists. For example, 'bert-base-uncased' or 'my-dataset'.                          |
| `status`    | string |     ✅    | `"closed"`                    | The new status to set for the discussion. Use 'open' to reopen a closed discussion or 'closed' to close an open discussion. |
| `comment`   | string |          | `"Closing this as resolved."` | Optional comment to add when changing the status. Useful for explaining why the discussion is being closed or reopened.     |
| `namespace` | string |     ✅    | `"google-bert"`               | The namespace (username or organization) that owns the repository. For example, 'google-bert' or 'huggingface'.             |
| `repo_type` | string |     ✅    | `"models"`                    | The type of repository where the discussion exists. Must be one of: models, spaces, or datasets.                            |

***

### `Hugging Face Check Dataset Validity`

Integration name: **HUGGING\_FACE\_CHECK\_DATASET\_VALIDITY**

Tool to check whether a specific dataset is valid on Hugging Face Hub. Use when you need to determine what features (preview, viewer, search, filter, statistics) are available for a dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example             | Description                                                                                                                |
| --------- | ------ | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `dataset` | string |     ✅    | `"rajpurkar/squad"` | Name of the dataset to check validity for. Format: 'namespace/repo-name' (e.g., 'rajpurkar/squad', 'huggingface/cifar10'). |

***

### `Hugging Face Check Models Upload Method`

Integration name: **HUGGING\_FACE\_CHECK\_MODELS\_UPLOAD\_METHOD**

Tool to check if files should be uploaded through the Large File mechanism or directly. Use when preparing to upload files to a Hugging Face model repository to determine the appropriate upload method for each file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example               | Description                                                                                                                                                                |
| --------------- | ------ | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`           | string |     ✅    | `"main"`              | The git revision (branch, tag, or commit hash) to upload to.                                                                                                               |
| `repo`          | string |     ✅    | `"bert-base-uncased"` | The name of the model repository.                                                                                                                                          |
| `files`         | array  |     ✅    | —                     | List of files to check for upload method. Maximum 1000 files.                                                                                                              |
| `gitIgnore`     | string |          | —                     | Content of the .gitignore file for the revision. Optional, otherwise uses existing .gitignore content.                                                                     |
| `namespace`     | string |     ✅    | `"google-bert"`       | The namespace (user or organization) that owns the model repository.                                                                                                       |
| `gitAttributes` | string |          | —                     | Content of the .gitattributes file. Provide this if you plan to modify .gitattributes yourself when uploading LFS files. Not needed if relying on automatic LFS detection. |

***

### `Hugging Face Check Spaces Upload Method`

Integration name: **HUGGING\_FACE\_CHECK\_SPACES\_UPLOAD\_METHOD**

Tool to check if files should be uploaded through the Large File mechanism or directly to Hugging Face Spaces. Use when preparing to upload files to a Hugging Face Space repository to determine the appropriate upload method for each file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example               | Description                                                                                                                                                                |
| --------------- | ------ | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`           | string |     ✅    | `"main"`              | The git revision (branch, tag, or commit hash) to upload to.                                                                                                               |
| `repo`          | string |     ✅    | `"test-branch-space"` | The name of the Space repository.                                                                                                                                          |
| `files`         | array  |     ✅    | —                     | List of files to check for upload method. Maximum 1000 files.                                                                                                              |
| `gitIgnore`     | string |          | —                     | Content of the .gitignore file for the revision. Optional, otherwise uses existing .gitignore content.                                                                     |
| `namespace`     | string |     ✅    | `"121tester"`         | The namespace (user or organization) that owns the Space repository.                                                                                                       |
| `gitAttributes` | string |          | —                     | Content of the .gitattributes file. Provide this if you plan to modify .gitattributes yourself when uploading LFS files. Not needed if relying on automatic LFS detection. |

***

### `Hugging Face Claim Settings Papers Claim`

Integration name: **HUGGING\_FACE\_CLAIM\_SETTINGS\_PAPERS\_CLAIM**

Tool to claim authorship of a paper on Hugging Face. Use when you need to associate yourself or another user with an ArXiv paper.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                      | Description                                                                                                                                                                                                 |
| ----------------- | ------ | :------: | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `paper_id`        | string |     ✅    | `"2501.12345"`               | ArXiv paper identifier being claimed. This should be the ArXiv ID of the paper you want to claim authorship for.                                                                                            |
| `target_user_id`  | string |          | `"507f1f77bcf86cd799439012"` | HF user who should receive the claim. Must be a 24-character hexadecimal string representing the Hugging Face user ID. Only provide this if you need to assign the claim to a specific user.                |
| `claim_author_id` | string |          | `"507f1f77bcf86cd799439011"` | Author entry on the paper being claimed. Must be a 24-character hexadecimal string representing the specific author entry on the paper. Only provide this if you need to specify a particular author entry. |

***

### `Hugging Face Create Ask Access`

Integration name: **HUGGING\_FACE\_CREATE\_ASK\_ACCESS**

Tool to request access to a gated repository on Hugging Face Hub. Use when you need to submit an access request for models, datasets, or Spaces that require approval. The fields required vary by repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                     |
| ----------------------- | ------ | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo`                  | string |     ✅    | `"Llama-3.3-70B-Instruct"`                                                                                                                                                                                                                                                                                                                                              | The repository name of the gated model, dataset, or Space.                                                                                                                                                                                                                                                                                                      |
| `namespace`             | string |     ✅    | `"meta-llama"`                                                                                                                                                                                                                                                                                                                                                          | The namespace (organization or user) that owns the gated repository.                                                                                                                                                                                                                                                                                            |
| `repo_type`             | string |          | —                                                                                                                                                                                                                                                                                                                                                                       | The type of repository (models, datasets, or spaces). Defaults to models.                                                                                                                                                                                                                                                                                       |
| `access_request_fields` | object |     ✅    | `{"Country":"US","Job title":"AI researcher","Last Name":"Doe","First Name":"John","Affiliation":"University of Example","Date of birth":"1990-01-01","By clicking Submit below I accept the terms of the license and acknowledge that the information I provide will be collected stored processed and shared in accordance with the Meta Privacy Policy":"I accept"}` | A dictionary of field names and values required by the repository's access form. Common fields include "First Name", "Last Name", "Date of birth" (YYYY-MM-DD format), "Country" (country code), "Affiliation", "Job title", and terms acceptance fields. The exact fields vary by repository and are specified in the repository's gated access configuration. |

***

### `Hugging Face Create Collection`

Integration name: **HUGGING\_FACE\_CREATE\_COLLECTION**

Tool to create a new collection on Hugging Face. Use when you need to organize and curate models, datasets, spaces, papers, or other collections into a named collection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                | Description                                                                                                    |
| ------------- | ------- | :------: | ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------- |
| `item`        | object  |          | —                                                      | Item to be added to the collection upon creation.                                                              |
| `title`       | string  |     ✅    | `"My Awesome Models"`                                  | The title of the collection. Must be between 1 and 60 characters.                                              |
| `private`     | boolean |          | `true`                                                 | If not provided, the collection will be public. This field will respect the organization's visibility setting. |
| `namespace`   | string  |     ✅    | `"johndoe"`                                            | The namespace (username or organization) under which to create the collection                                  |
| `description` | string  |          | `"A curated list of state-of-the-art language models"` | Optional description for the collection. Maximum 150 characters.                                               |

***

### `Hugging Face Create Datasets Branch`

Integration name: **HUGGING\_FACE\_CREATE\_DATASETS\_BRANCH**

Tool to create a new branch in a Hugging Face dataset repository. Use when you need to create a branch for versioning or experimentation with dataset changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                     | Description                                                                                             |
| --------------- | ------- | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------- |
| `rev`           | string  |     ✅    | `"main"`                    | The name of the new branch to create.                                                                   |
| `repo`          | string  |     ✅    | `"test-discussion-dataset"` | The name of the dataset repository without the namespace prefix.                                        |
| `namespace`     | string  |     ✅    | `"121tester"`               | The namespace (username or organization) that owns the dataset repository.                              |
| `overwrite`     | boolean |          | —                           | Overwrite the branch if it already exists. Defaults to false.                                           |
| `emptyBranch`   | boolean |          | —                           | Create an empty branch without any files. Defaults to false.                                            |
| `startingPoint` | string  |          | `"main"`                    | The commit hash, tag, or branch name to start the new branch from. Defaults to 'main' if not specified. |

***

### `Hugging Face Create Datasets Commit`

Integration name: **HUGGING\_FACE\_CREATE\_DATASETS\_COMMIT**

Tool to create a commit in a Hugging Face dataset repository. Use when you need to add, update, or delete files in a dataset. Supports both regular files and Large File Storage (LFS) for large binary files. Can optionally create a pull request instead of directly committing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                                                                 | Description                                                                                                                |
| ----------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `rev`             | string |     ✅    | `"main"`                                                                                                                                | Revision (branch name, tag, or commit SHA) to commit to                                                                    |
| `repo`            | string |     ✅    | `"my-dataset"`                                                                                                                          | Name of the dataset repository                                                                                             |
| `files`           | array  |          | `[{"path":"test.txt","content":"Hello World","encoding":"utf-8"}]`                                                                      | List of files to add or update in the commit. Each file requires a path and either content or oldPath.                     |
| `summary`         | string |     ✅    | `"Add training data"`                                                                                                                   | Summary of the commit (required). This is the commit message title.                                                        |
| `create_pr`       | string |          | `"1"`                                                                                                                                   | Whether to create a pull request from the commit. Set to '1' or 'true' to create a PR.                                     |
| `lfs_files`       | array  |          | `[{"oid":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","algo":"sha256","path":"models/model.bin","size":1024000}]` | List of Large File Storage (LFS) files to include in the commit                                                            |
| `namespace`       | string |     ✅    | `"my-username"`                                                                                                                         | Namespace (username or organization) that owns the dataset repository                                                      |
| `hot_reload`      | string |          | `"1"`                                                                                                                                   | For Spaces, whether to try to hot reload the commit (only for single Python file updates). Set to '1' or 'true' to enable. |
| `description`     | string |          | `"Added new training examples from production data"`                                                                                    | Detailed description of the commit (optional). Defaults to empty string.                                                   |
| `parent_commit`   | string |          | `"a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0"`                                                                                            | Parent commit SHA (40-character hexadecimal string). Optional, defaults to HEAD of the revision.                           |
| `deleted_entries` | array  |          | `[{"path":"old_file.txt"}]`                                                                                                             | List of files to delete from the repository                                                                                |

***

### `Hugging Face Create Datasets Preupload`

Integration name: **HUGGING\_FACE\_CREATE\_DATASETS\_PREUPLOAD**

Tool to check if files should be uploaded via Large File Storage (LFS) or directly to a Hugging Face dataset repository. Use before uploading files to determine the correct upload method for each file based on size and repository settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                     | Description                                                                                                                                                        |
| --------------- | ------ | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `rev`           | string |     ✅    | `"main"`                    | Revision (branch or commit) to check preupload for. Typically 'main' for the default branch                                                                        |
| `repo`          | string |     ✅    | `"test-discussion-dataset"` | Name of the dataset repository                                                                                                                                     |
| `files`         | array  |     ✅    | —                           | List of files to check for upload method. Maximum 1000 files per request                                                                                           |
| `gitIgnore`     | string |          | —                           | Content of .gitignore file for the revision. Optional; uses existing .gitignore if not provided                                                                    |
| `namespace`     | string |     ✅    | `"121tester"`               | Namespace (username or organization) that owns the dataset repository                                                                                              |
| `gitAttributes` | string |          | —                           | Content of .gitattributes file if you plan to modify it yourself. Only needed if managing LFS tracking manually; otherwise HF automatically updates .gitattributes |

***

### `Hugging Face Create Datasets Tag`

Integration name: **HUGGING\_FACE\_CREATE\_DATASETS\_TAG**

Tool to create a tag on a Hugging Face dataset repository. Use when you need to mark a specific revision with a named tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                       | Description                                                                   |
| ----------- | ------ | :------: | --------------------------------------------- | ----------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                                      | The revision (branch or commit SHA) to create the tag from, typically 'main'. |
| `tag`       | string |     ✅    | `"test-tag-v1.0"`                             | The name of the tag to create (e.g., 'v1.0', 'release-2024').                 |
| `repo`      | string |     ✅    | `"test-discussion-dataset"`                   | The name of the dataset repository to create a tag for.                       |
| `message`   | string |          | `"Test tag creation for endpoint validation"` | Optional message describing the purpose of this tag.                          |
| `namespace` | string |     ✅    | `"121tester"`                                 | The namespace (username or organization) that owns the dataset.               |

***

### `Hugging Face Create Discussions`

Integration name: **HUGGING\_FACE\_CREATE\_DISCUSSIONS**

Tool to create a new discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to start a conversation, report an issue, or create a pull request discussion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                                         | Description                                                                                                         |
| -------------- | ------- | :------: | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `repo`         | string  |     ✅    | `"gpt2"`                                                                        | The name of the repository where the discussion will be created.                                                    |
| `title`        | string  |     ✅    | `"Test Discussion"`                                                             | The title of the discussion. Must be between 3 and 200 characters.                                                  |
| `namespace`    | string  |     ✅    | `"openai-community"`                                                            | The namespace (username or organization) that owns the repository.                                                  |
| `repo_type`    | string  |     ✅    | `"models"`                                                                      | The type of repository: models, spaces, or datasets. This determines where the discussion will be created.          |
| `description`  | string  |     ✅    | `"This is a test discussion created via API to verify endpoint functionality."` | The description/content of the discussion. Can contain markdown formatting. Maximum 65536 characters.               |
| `pull_request` | boolean |          | `false`                                                                         | Whether this discussion should be created as a pull request. If true, creates a PR instead of a regular discussion. |

***

### `Hugging Face Create Discussions Comment`

Integration name: **HUGGING\_FACE\_CREATE\_DISCUSSIONS\_COMMENT**

Tool to create a new comment on a Hugging Face repository discussion. Use when you need to add comments or replies to discussions on models, datasets, or spaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                          |
| ----------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `num`       | string |     ✅    | `"1"`                                    | The discussion number or ID to comment on. This is the numeric identifier of the discussion thread.                  |
| `repo`      | string |     ✅    | `"gpt2"`                                 | The repository name where the discussion exists. For example, 'gpt2' or 'my-dataset'.                                |
| `comment`   | string |     ✅    | `"Thanks for the detailed explanation!"` | The comment text to post on the discussion. Must be between 1 and 65536 characters.                                  |
| `namespace` | string |     ✅    | `"openai-community"`                     | The namespace (username or organization) that owns the repository. For example, 'openai-community' or 'huggingface'. |
| `repo_type` | string |     ✅    | `"models"`                               | The type of repository where the discussion exists. Must be one of: models, spaces, or datasets.                     |

***

### `Hugging Face Create Discussions Pin`

Integration name: **HUGGING\_FACE\_CREATE\_DISCUSSIONS\_PIN**

Tool to pin or unpin a discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to highlight important discussions by pinning them to the top of the list, or unpin them when they're no longer priority.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                      | Description                                                                                                                                 |
| ----------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `num`       | string  |     ✅    | `"1"`                        | The discussion number/identifier to pin or unpin. This is the numeric ID shown in the discussion URL.                                       |
| `repo`      | string  |     ✅    | `"test-discussion-pin-repo"` | The name of the repository containing the discussion. For example, for 'meta-llama/Llama-2-7b', the repo is 'Llama-2-7b'.                   |
| `pinned`    | boolean |     ✅    | `true`                       | Whether to pin (true) or unpin (false) the discussion. Pinned discussions appear at the top of the discussions list.                        |
| `namespace` | string  |     ✅    | `"121tester"`                | The namespace (username or organization) that owns the repository. For example, for 'meta-llama/Llama-2-7b', the namespace is 'meta-llama'. |
| `repo_type` | string  |     ✅    | `"models"`                   | The type of repository: models, spaces, or datasets. This determines which repository type contains the discussion.                         |

***

### `Hugging Face Create Models Branch`

Integration name: **HUGGING\_FACE\_CREATE\_MODELS\_BRANCH**

Tool to create a new branch in a Hugging Face model repository. Use when you need to create a branch for experimenting with model changes, versioning, or creating isolated development environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example            | Description                                                                                                                                                                                                  |
| ---------------- | ------- | :------: | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `rev`            | string  |     ✅    | `"feature-branch"` | The name for the new branch to be created (e.g., 'feature-branch', 'experiment-v2'). This will be the branch name in the repository.                                                                         |
| `repo`           | string  |     ✅    | `"Llama-2-7b"`     | The name of the model repository where the branch will be created. For example, for model 'meta-llama/Llama-2-7b', the repo is 'Llama-2-7b'.                                                                 |
| `namespace`      | string  |     ✅    | `"meta-llama"`     | The namespace (username or organization) that owns the model repository. For example, for model 'meta-llama/Llama-2-7b', the namespace is 'meta-llama'.                                                      |
| `overwrite`      | boolean |          | `false`            | Overwrite the branch if it already exists. If False (default), creating a branch that already exists will result in an error.                                                                                |
| `empty_branch`   | boolean |          | `false`            | Create an empty branch without any files. If True, startingPoint is not required. If False (default), startingPoint should be provided.                                                                      |
| `starting_point` | string  |          | `"main"`           | The commit hash or branch name to start the new branch from (e.g., 'main', 'dev', or a commit hash). Required unless creating an empty branch. Defaults to 'main' if not specified and emptyBranch is False. |

***

### `Hugging Face Create Models Commit`

Integration name: **HUGGING\_FACE\_CREATE\_MODELS\_COMMIT**

Tool to create a commit to a Hugging Face model repository. Use when you need to add, update, or delete files in a model repository. Supports both standard JSON and JSON-lines (NDJSON) formats. JSON-lines format is recommended for better performance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                              | Description                                                                                                                              |
| ----------------- | ------ | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`             | string |     ✅    | `"main"`                                             | The git revision (branch, tag, or commit SHA) to commit to                                                                               |
| `repo`            | string |     ✅    | `"test-commit-model"`                                | The name of the model repository to commit to                                                                                            |
| `files`           | array  |          | —                                                    | List of files to add or update in the commit                                                                                             |
| `summary`         | string |     ✅    | `"Add model configuration"`                          | Summary message for the commit. This is a required field that describes the commit                                                       |
| `create_pr`       | string |          | `"1"`                                                | Whether to create a pull request from the commit. Typically '1' or 'true' to create a PR                                                 |
| `lfs_files`       | array  |          | —                                                    | List of LFS (Large File Storage) files to add or update                                                                                  |
| `namespace`       | string |     ✅    | `"121tester"`                                        | The namespace (user or organization) that owns the model repository                                                                      |
| `hot_reload`      | string |          | `"1"`                                                | For Spaces, whether to try to hot reload the commit (only for single python files updates). Typically '1' or 'true' to enable hot reload |
| `description`     | string |          | `"Added new configuration parameters for the model"` | Optional detailed description for the commit. Defaults to empty string if not provided                                                   |
| `content_type`    | string |          | —                                                    | Content type for the request. Use application/x-ndjson (recommended) for JSON-lines format or application/json for standard JSON         |
| `parent_commit`   | string |          | `"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"`         | Optional parent commit SHA (40-character hex string). If provided, the commit will be based on this specific commit                      |
| `deleted_entries` | array  |          | —                                                    | List of files to delete from the repository                                                                                              |

***

### `Hugging Face Create Models Tag`

Integration name: **HUGGING\_FACE\_CREATE\_MODELS\_TAG**

Tool to create a tag on a Hugging Face model repository. Use when you need to mark a specific revision with a named tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                     | Description                                                                   |
| ----------- | ------ | :------: | --------------------------- | ----------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                    | The revision (branch or commit SHA) to create the tag from, typically 'main'. |
| `tag`       | string |     ✅    | `"v1.0.1"`                  | The name of the tag to create (e.g., 'v1.0', 'release-2024').                 |
| `repo`      | string |     ✅    | `"test-tag-creation-model"` | The name of the model repository to create a tag for.                         |
| `message`   | string |          | `"Second test tag"`         | Optional message describing the purpose of this tag.                          |
| `namespace` | string |     ✅    | `"121tester"`               | The namespace (username or organization) that owns the model.                 |

***

### `Hugging Face Create Papers Comment`

Integration name: **HUGGING\_FACE\_CREATE\_PAPERS\_COMMENT**

Tool to create a new comment on a Hugging Face paper. Use when you need to add comments or feedback to research papers on Hugging Face.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                              | Description                                                                                                             |
| ---------- | ------ | :------: | ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `comment`  | string |     ✅    | `"Great paper! The methodology is very innovative."` | The comment text to post on the paper. Must be between 1 and 65536 characters.                                          |
| `paper_id` | string |     ✅    | `"2408.04619"`                                       | The unique identifier of the paper to comment on. This can be the paper ID (e.g., '2408.04619') or the full paper path. |

***

### `Hugging Face Create Papers Comment Reply`

Integration name: **HUGGING\_FACE\_CREATE\_PAPERS\_COMMENT\_REPLY**

Tool to create a reply to a comment on a Hugging Face paper. Use when you need to respond to an existing comment on a paper discussion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                                          |
| ------------ | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------ |
| `comment`    | string |     ✅    | `"This is a great insight!"` | The content of the reply comment.                                                    |
| `paper_id`   | string |     ✅    | `"2312.09323"`               | The unique identifier of the paper (e.g., '2312.09323').                             |
| `comment_id` | string |     ✅    | `"65844ff1ee15e3c7fc034c97"` | The unique identifier of the comment to reply to (e.g., '65844ff1ee15e3c7fc034c97'). |

***

### `Hugging Face Create Papers Index`

Integration name: **HUGGING\_FACE\_CREATE\_PAPERS\_INDEX**

Tool to index a paper from arXiv by its ID on Hugging Face. Use when you need to make a paper searchable and accessible on the platform. Note: If the paper is already indexed, only its authors can re-index it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example        | Description                                                                                                                                                        |
| ---------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `arxiv_id` | string |     ✅    | `"2411.19876"` | The arXiv ID of the paper to index (format: YYMM.NNNNN or YYMM.NNNN, e.g., '2411.19876' or '1234.5678'). Only the paper's authors can re-index if already indexed. |

***

### `Hugging Face Create Repo`

Integration name: **HUGGING\_FACE\_CREATE\_REPO**

Tool to create a new repository (model, dataset, or Space) on Hugging Face Hub. Use when you need to initialize a new repository for uploading models, datasets, or deploying Spaces applications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                                                                                                               |
| -------------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `sdk`          | string  |          | `"gradio"`   | SDK options for Spaces.                                                                                                                   |
| `name`         | string  |     ✅    | `"my-model"` | The name of the repository to create. This will be the repository identifier within the namespace.                                        |
| `type`         | string  |          | `"model"`    | The type of repository to create: model, dataset, or space. Defaults to 'model' if not specified.                                         |
| `private`      | boolean |          | `true`       | Whether the repository should be private. If not specified, follows the default visibility setting for your account or organization.      |
| `organization` | string  |          | `"my-org"`   | The organization namespace to create the repository under. If not provided, the repository will be created under your personal namespace. |

***

### `Hugging Face Create Spaces Branch`

Integration name: **HUGGING\_FACE\_CREATE\_SPACES\_BRANCH**

Tool to create a new branch in a Hugging Face space repository. Use when you need to create a branch for experimenting with space changes, versioning, or creating isolated development environments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example               | Description                                                                                                                                                                                                  |
| ---------------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `rev`            | string  |     ✅    | `"feature-branch"`    | The name for the new branch to be created (e.g., 'feature-branch', 'experiment-v2'). This will be the branch name in the repository.                                                                         |
| `repo`           | string  |     ✅    | `"test-branch-space"` | The name of the space repository where the branch will be created. For example, for space 'huggingface/my-space', the repo is 'my-space'.                                                                    |
| `namespace`      | string  |     ✅    | `"121tester"`         | The namespace (username or organization) that owns the space repository. For example, for space 'huggingface/my-space', the namespace is 'huggingface'.                                                      |
| `overwrite`      | boolean |          | `false`               | Overwrite the branch if it already exists. If False (default), creating a branch that already exists will result in an error.                                                                                |
| `empty_branch`   | boolean |          | `false`               | Create an empty branch without any files. If True, startingPoint is not required. If False (default), startingPoint should be provided.                                                                      |
| `starting_point` | string  |          | `"main"`              | The commit hash or branch name to start the new branch from (e.g., 'main', 'dev', or a commit hash). Required unless creating an empty branch. Defaults to 'main' if not specified and emptyBranch is False. |

***

### `Hugging Face Create Spaces Commit`

Integration name: **HUGGING\_FACE\_CREATE\_SPACES\_COMMIT**

Tool to create a commit in a Hugging Face Space repository. Use when you need to add, update, or delete files in a Space. Supports both JSON and NDJSON (recommended) payload formats for commits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                            | Description                                                                                                                                       |
| ---------------- | ------ | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`            | string |     ✅    | `"main"`                                           | The revision (branch or commit) to commit to. Typically 'main' for the default branch                                                             |
| `repo`           | string |     ✅    | `"test-commit-space"`                              | The name of the Space repository where the commit will be created. For example, for Space 'user/my-space', the repo is 'my-space'                 |
| `files`          | array  |          | —                                                  | List of files to add or update in the commit. For JSON payload format only                                                                        |
| `summary`        | string |     ✅    | `"Update README"`                                  | Summary of the commit (required). This is the commit message title                                                                                |
| `createPr`       | string |          | `"true"`                                           | Whether to create a pull request from the commit instead of committing directly. Set to 'true' to create a PR, 'false' or omit to commit directly |
| `lfsFiles`       | array  |          | —                                                  | List of Large File Storage (LFS) files to add or update. For JSON payload format only                                                             |
| `hotReload`      | string |          | `"true"`                                           | For Spaces, whether to try to hot reload the commit (only works for single Python file updates). Set to 'true' to enable hot reload               |
| `namespace`      | string |     ✅    | `"121tester"`                                      | The namespace (username or organization) that owns the Space. For example, for Space 'user/my-space', the namespace is 'user'                     |
| `contentType`    | string |          | —                                                  | Content type for the commit request.                                                                                                              |
| `description`    | string |          | `"Added detailed documentation for setup process"` | Detailed description of the commit (optional, defaults to empty string). This is the commit message body                                          |
| `parentCommit`   | string |          | `"a1aa433138d652a4a65ef64dcc814de076d3d0a6"`       | The parent commit SHA (40-character hexadecimal). Optional, defaults to current HEAD of the branch                                                |
| `deletedEntries` | array  |          | —                                                  | List of file paths to delete in the commit. For JSON payload format only                                                                          |

***

### `Hugging Face Create Spaces Secrets`

Integration name: **HUGGING\_FACE\_CREATE\_SPACES\_SECRETS**

Tool to create or update a secret in a Hugging Face Space. Use when you need to add or update environment variables or sensitive configuration values for a Space. This action upserts the secret, meaning it will create a new secret if it doesn't exist or update it if it already exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                | Description                                                                                                                                                                                                   |
| ------------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`         | string |     ✅    | `"API_KEY"`                            | The name of the secret key. Must start with a letter and contain only letters, digits, and underscores (pattern: ^\[a-zA-Z]\[\_a-zA-Z0-9]\*$). For example: 'API\_KEY', 'DATABASE\_URL', 'TEST\_SECRET\_KEY'. |
| `repo`        | string |     ✅    | `"test-curl-space-delete-secret"`      | The name of the Space repository where the secret will be created or updated. For example, for Space 'huggingface/my-space', the repo is 'my-space'.                                                          |
| `value`       | string |          | `"test_secret_value_123"`              | The value of the secret. This will be stored securely and not visible after creation. Defaults to empty string if not provided.                                                                               |
| `namespace`   | string |     ✅    | `"121tester"`                          | The namespace (username or organization) that owns the Space. For example, for Space 'huggingface/my-space', the namespace is 'huggingface'.                                                                  |
| `description` | string |          | `"Test secret created by curl tester"` | Optional description of the secret to help identify its purpose. For example: 'API key for external service', 'Database connection string'.                                                                   |

***

### `Hugging Face Create Spaces Tag`

Integration name: **HUGGING\_FACE\_CREATE\_SPACES\_TAG**

Tool to create a tag on a Hugging Face space repository. Use when you need to mark a specific revision with a named tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                       | Description                                                                   |
| ----------- | ------ | :------: | ----------------------------- | ----------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                      | The revision (branch or commit SHA) to create the tag from, typically 'main'. |
| `tag`       | string |     ✅    | `"v1.0.1"`                    | The name of the tag to create (e.g., 'v1.0', 'release-2024').                 |
| `repo`      | string |     ✅    | `"test-tag-space"`            | The name of the space repository to create a tag for.                         |
| `message`   | string |          | `"Test tag creation via API"` | Optional message describing the purpose of this tag.                          |
| `namespace` | string |     ✅    | `"121tester"`                 | The namespace (username or organization) that owns the space.                 |

***

### `Hugging Face Create Spaces Variables`

Integration name: **HUGGING\_FACE\_CREATE\_SPACES\_VARIABLES**

Tool to create or update a variable in a Hugging Face Space. Use when you need to add or update environment variables or configuration values for a Space. This action upserts the variable, meaning it will create a new variable if it doesn't exist or update it if it already exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                           | Description                                                                                                                                                                                                    |
| ------------- | ------ | :------: | --------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`         | string |     ✅    | `"APP_MODE"`                      | The name of the variable key. Must start with a letter and contain only letters, digits, and underscores (pattern: ^\[a-zA-Z]\[\_a-zA-Z0-9]\*$). For example: 'APP\_MODE', 'DEBUG\_ENABLED', 'TEST\_VAR\_123'. |
| `repo`        | string |     ✅    | `"test-branch-delete"`            | The name of the Space repository where the variable will be created or updated. For example, for Space 'huggingface/my-space', the repo is 'my-space'.                                                         |
| `value`       | string |          | `"test_value_from_api"`           | The value of the variable. This will be stored and can be accessed by the Space. Defaults to empty string if not provided.                                                                                     |
| `namespace`   | string |     ✅    | `"121tester"`                     | The namespace (username or organization) that owns the Space. For example, for Space 'huggingface/my-space', the namespace is 'huggingface'.                                                                   |
| `description` | string |          | `"Test variable created via API"` | Optional description of the variable to help identify its purpose. For example: 'Environment mode setting', 'Debug flag for development'.                                                                      |

***

### `Hugging Face Create Sql Console Embed`

Integration name: **HUGGING\_FACE\_CREATE\_SQL\_CONSOLE\_EMBED**

Tool to create a SQL Console embed for querying datasets on Hugging Face. Use when you need to create a shareable SQL query interface for exploring dataset splits. The embed allows users to execute SQL queries against dataset views (e.g., train, test, validation splits).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                   | Description                                                                                          |
| ----------- | ------- | :------: | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `sql`       | string  |     ✅    | `"SELECT * FROM train LIMIT 10"`                                          | The SQL query to be embedded in the console. This is the query users will see and can execute.       |
| `repo`      | string  |     ✅    | `"imdb"`                                                                  | The name of the dataset repository without the namespace prefix.                                     |
| `title`     | string  |     ✅    | `"IMDB Sample Query"`                                                     | Title for the SQL console embed. Maximum 200 characters.                                             |
| `views`     | array   |     ✅    | `[{"key":"train_view","viewName":"train","displayName":"Training Data"}]` | List of available views (splits) in the dataset that can be queried. Must contain at least one view. |
| `private`   | boolean |          | `false`                                                                   | Whether the SQL console embed should be private. If true, only authorized users can access it.       |
| `repoType`  | string  |          | —                                                                         | The type of repository. Currently only 'datasets' is supported.                                      |
| `namespace` | string  |     ✅    | `"stanfordnlp"`                                                           | The namespace (username or organization) that owns the dataset repository.                           |

***

### `Hugging Face Create Webhook`

Integration name: **HUGGING\_FACE\_CREATE\_WEBHOOK**

Tool to create a webhook on Hugging Face that triggers on repository or discussion events. Use when you need to receive notifications for changes to specific models, datasets, or spaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                        | Description                                                                                                                                                    |
| --------------- | ------ | :------: | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`           | string |     ✅    | `"https://webhook.site/test-webhook-endpoint"` | The webhook URL endpoint that will receive POST requests when events occur. Must be a valid HTTP/HTTPS URL.                                                    |
| `secret`        | string |          | `"my-secret-key"`                              | Optional secret string used to sign webhook payloads for verification. Must contain only printable ASCII characters (spaces and characters from 0x20 to 0x7F). |
| `domains`       | array  |     ✅    | `["repo"]`                                     | List of event domains to monitor. At least one domain must be specified. Use 'repo' for repository events or 'discussion' for discussion events.               |
| `watched`       | array  |     ✅    | `[{"name":"test-model","type":"model"}]`       | List of repositories to watch for changes. At least one repository must be specified. Events from these repositories will trigger webhook calls.               |
| `job_source_id` | string |          | `"job-source-123"`                             | Optional job source identifier for associating the webhook with a specific job source.                                                                         |

***

### `Hugging Face Delete Datasets Branch`

Integration name: **HUGGING\_FACE\_DELETE\_DATASETS\_BRANCH**

Tool to delete a branch from a Hugging Face dataset repository. Use when you need to remove a branch that is no longer needed. This action permanently removes the specified branch from the dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                     | Description                                                                                                                                  |
| ----------- | ------ | :------: | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"test-branch-to-delete"`   | The name of the branch to delete from the dataset repository. This should be a valid branch name (not the main/master branch in most cases). |
| `repo`      | string |     ✅    | `"test-discussion-dataset"` | The name of the dataset repository from which to delete the branch. This is the repository identifier without the namespace.                 |
| `namespace` | string |     ✅    | `"121tester"`               | The namespace (user or organization) that owns the dataset. For example, '121tester' for a user or 'huggingface' for an organization.        |

***

### `Hugging Face Delete Datasets Tag`

Integration name: **HUGGING\_FACE\_DELETE\_DATASETS\_TAG**

Tool to delete a tag from a Hugging Face dataset. Use when you need to remove a specific tag revision from a dataset repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                     | Description                                                 |
| ----------- | ------ | :------: | --------------------------- | ----------------------------------------------------------- |
| `rev`       | string |     ✅    | `"test-tag-delete"`         | The tag revision to delete from the dataset.                |
| `repo`      | string |     ✅    | `"test-discussion-dataset"` | The repository name of the dataset.                         |
| `namespace` | string |     ✅    | `"121tester"`               | The namespace (organization or user) that owns the dataset. |

***

### `Hugging Face Delete Discussions`

Integration name: **HUGGING\_FACE\_DELETE\_DISCUSSIONS**

Tool to delete a discussion from a Hugging Face repository. Use when you need to remove a discussion that is no longer needed. This action permanently removes the specified discussion from the repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                    | Description                                                                                                                              |
| ----------- | ------ | :------: | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `num`       | string |     ✅    | `"1"`                      | The discussion number to delete. This is the unique identifier of the discussion within the repository.                                  |
| `repo`      | string |     ✅    | `"test-discussion-delete"` | The name of the repository containing the discussion to delete. This is the repository identifier without the namespace.                 |
| `namespace` | string |     ✅    | `"121tester"`              | The namespace (user or organization) that owns the repository. For example, '121tester' for a user or 'huggingface' for an organization. |
| `repo_type` | string |     ✅    | `"models"`                 | The type of repository where the discussion exists. Must be one of: models, spaces, or datasets.                                         |

***

### `Hugging Face Delete Network Cidr List`

Integration name: **HUGGING\_FACE\_DELETE\_NETWORK\_CIDR\_LIST**

Tool to delete a network CIDR list entry from Hugging Face Inference Endpoints. Use when you need to remove a CIDR configuration that is no longer needed. This action permanently removes the specified CIDR from the namespace's network configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                                                                 |
| ----------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `cidr_id`   | string |     ✅    | `"698dce7899943d11a06fa0a3"` | The unique identifier of the CIDR to delete. This is a hexadecimal ID that was returned when the CIDR was created.                          |
| `namespace` | string |     ✅    | `"121tester"`                | The namespace (user or organization) that owns the CIDR configuration. For example, '121tester' for a user or 'my-org' for an organization. |

***

### `Hugging Face Delete Notifications`

Integration name: **HUGGING\_FACE\_DELETE\_NOTIFICATIONS**

Tool to delete notifications from Hugging Face. Use when you need to remove notifications either by specific discussion IDs or by applying filters to delete multiple notifications at once. Supports targeted deletion (via discussion\_ids) or bulk deletion (via applyToAll with filter parameters).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                   | Description                                                                                                                                                                                                                             |
| ---------------- | ------- | :------: | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `p`              | integer |          | `0`                                                       | Page number for pagination when filtering notifications. Defaults to 0 (first page).                                                                                                                                                    |
| `mention`        | string  |          | `"all"`                                                   | Enum for mention filter.                                                                                                                                                                                                                |
| `paper_id`       | string  |          | `"2307.09288"`                                            | Filter notifications by paper ID. Use this to delete notifications related to a specific paper. Only applies when applyToAll is true.                                                                                                   |
| `repo_name`      | string  |          | `"huggingface/transformers"`                              | Filter notifications by repository name. Use this to delete notifications from a specific repository. Format should be 'namespace/repo-name'. Only applies when applyToAll is true.                                                     |
| `repo_type`      | string  |          | `"model"`                                                 | Enum for repository type filter.                                                                                                                                                                                                        |
| `article_id`     | string  |          | —                                                         | Filter notifications by article ID. Use this to delete notifications related to a specific article. Only applies when applyToAll is true.                                                                                               |
| `last_update`    | string  |          | —                                                         | Filter notifications by last update timestamp. Use this to delete notifications updated before or after a specific time. Only applies when applyToAll is true.                                                                          |
| `post_author`    | string  |          | `"john_doe"`                                              | Filter notifications by the username of the post author. Use this to delete notifications from a specific user. Only applies when applyToAll is true.                                                                                   |
| `read_status`    | string  |          | `"all"`                                                   | Enum for read status filter.                                                                                                                                                                                                            |
| `apply_to_all`   | boolean |          | `true`                                                    | When true, applies the deletion to all notifications matching the filter criteria (readStatus, repoType, repoName, etc.). Use with caution as this will delete multiple notifications at once. Required when not using discussion\_ids. |
| `discussion_ids` | array   |          | `["507f1f77bcf86cd799439011","507f191e810c19729de860ea"]` | Array of specific discussion IDs to delete. Each ID must be exactly 24 hexadecimal characters. Use this for targeted deletion of specific notifications. If provided, other filter parameters are ignored.                              |

***

### `Hugging Face Delete Settings Webhooks`

Integration name: **HUGGING\_FACE\_DELETE\_SETTINGS\_WEBHOOKS**

Tool to delete a webhook from Hugging Face settings. Use when you need to remove a webhook configuration that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                |
| ----------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------ |
| `webhookId` | string |     ✅    | `"694964cd9797ba34f1bdfec4"` | The unique identifier of the webhook to delete. Must be a 24-character hexadecimal string. |

***

### `Hugging Face Delete Spaces Branch`

Integration name: **HUGGING\_FACE\_DELETE\_SPACES\_BRANCH**

Tool to delete a branch from a Hugging Face space repository. Use when you need to remove a branch that is no longer needed. This action permanently removes the specified branch from the space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                | Description                                                                                                                         |
| ----------- | ------ | :------: | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"test-delete-branch"` | The name of the branch to delete from the space repository. This should be a valid branch name (not the main branch in most cases). |
| `repo`      | string |     ✅    | `"test-branch-delete"` | The name of the space repository from which to delete the branch. This is the repository identifier without the namespace.          |
| `namespace` | string |     ✅    | `"121tester"`          | The namespace (user or organization) that owns the space. For example, '121tester' for a user or 'huggingface' for an organization. |

***

### `Hugging Face Delete Spaces Secrets`

Integration name: **HUGGING\_FACE\_DELETE\_SPACES\_SECRETS**

Tool to delete a secret from a Hugging Face space. Use when you need to remove sensitive credentials or configuration values that are no longer needed. This action permanently removes the specified secret from the space's environment variables.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                           | Description                                                                                                                             |
| ----------- | ------ | :------: | --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `key`       | string |     ✅    | `"TEST_SECRET_TO_DELETE"`         | The key name of the secret to delete from the space. This should be the exact name of the secret as it appears in the space's settings. |
| `repo`      | string |     ✅    | `"test-curl-space-delete-secret"` | The name of the space repository from which to delete the secret. This is the repository identifier without the namespace.              |
| `namespace` | string |     ✅    | `"121tester"`                     | The namespace (user or organization) that owns the space. For example, '121tester' for a user or 'huggingface' for an organization.     |

***

### `Hugging Face Delete Spaces Tag`

Integration name: **HUGGING\_FACE\_DELETE\_SPACES\_TAG**

Tool to delete a tag from a Hugging Face space. Use when you need to remove a specific tag revision from a space repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                | Description                                               |
| ----------- | ------ | :------: | ---------------------- | --------------------------------------------------------- |
| `rev`       | string |     ✅    | `"test-tag-delete-v1"` | The tag revision to delete from the space.                |
| `repo`      | string |     ✅    | `"test-tag-space"`     | The repository name of the space.                         |
| `namespace` | string |     ✅    | `"121tester"`          | The namespace (organization or user) that owns the space. |

***

### `Hugging Face Delete Spaces Variables`

Integration name: **HUGGING\_FACE\_DELETE\_SPACES\_VARIABLES**

Tool to delete a variable from a Hugging Face space. Use when you need to remove configuration values or environment variables that are no longer needed. This action permanently removes the specified variable from the space's environment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                 | Description                                                                                                                                 |
| ----------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `key`       | string |     ✅    | `"TEST_VAR_FOR_DELETE"` | The key name of the variable to delete from the space. This should be the exact name of the variable as it appears in the space's settings. |
| `repo`      | string |     ✅    | `"test-branch-delete"`  | The name of the space repository from which to delete the variable. This is the repository identifier without the namespace.                |
| `namespace` | string |     ✅    | `"121tester"`           | The namespace (user or organization) that owns the space. For example, '121tester' for a user or 'huggingface' for an organization.         |

***

### `Hugging Face Filter Dataset Rows`

Integration name: **HUGGING\_FACE\_FILTER\_DATASET\_ROWS**

Tool to filter rows in a Hugging Face dataset split based on SQL-like query conditions. Use when you need to search or filter specific rows from a dataset based on column values, or to retrieve sorted subsets of data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                       | Description                                                                                                                                                                            |
| --------- | ------- | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `split`   | string  |     ✅    | `"train"`                                     | Name of the dataset split to filter (e.g., 'train', 'test', 'validation').                                                                                                             |
| `where`   | string  |     ✅    | `"label=0"`                                   | SQL WHERE clause for filtering rows. Use column names and comparison operators (e.g., 'label=0', 'score>0.5', 'text LIKE "%happy%"'). Multiple conditions can be combined with AND/OR. |
| `config`  | string  |     ✅    | `"default"`                                   | Name of the dataset configuration/subset to filter. Use 'default' for datasets without explicit configs.                                                                               |
| `length`  | integer |          | `5`                                           | Maximum number of rows to return. Defaults to 100. Maximum allowed is 100.                                                                                                             |
| `offset`  | integer |          | `0`                                           | Number of rows to skip before returning results. Use with length for pagination.                                                                                                       |
| `dataset` | string  |     ✅    | `"cornell-movie-review-data/rotten_tomatoes"` | Full name of the dataset in the format 'namespace/dataset-name'. Example: 'cornell-movie-review-data/rotten\_tomatoes'.                                                                |
| `orderby` | string  |          | `"score DESC"`                                | SQL ORDER BY clause for sorting results. Specify column name and optionally 'ASC' or 'DESC' (e.g., 'score DESC', 'date ASC').                                                          |

***

### `Hugging Face Generate Chat Completion`

Integration name: **HUGGING\_FACE\_GENERATE\_CHAT\_COMPLETION**

Tool to generate a response given a list of messages in a conversational context. Supports both conversational Language Models (LLMs) and Vision-Language Models (VLMs). Compatible with OpenAI SDK.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                              | Description                                                                                                                                                                                                                                                                                              |
| ------------------- | ------- | :------: | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `seed`              | integer |          | `42`                                 | Random seed for deterministic sampling. Using the same seed with the same parameters should produce the same output.                                                                                                                                                                                     |
| `stop`              | array   |          | `["\\n","END"]`                      | Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.                                                                                                                                                                               |
| `model`             | string  |     ✅    | `"meta-llama/Llama-3.2-3B-Instruct"` | The model ID to use for chat completion. Format: namespace/model or namespace/model:provider. Examples: 'meta-llama/Llama-3.2-3B-Instruct', 'Qwen/Qwen2.5-7B-Instruct-1M'.                                                                                                                               |
| `tools`             | array   |          | —                                    | A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for.                                                                                                                                   |
| `top_p`             | number  |          | `0.9`                                | An alternative to sampling with temperature, called nucleus sampling. The model considers the results of tokens with top\_p probability mass. So 0.1 means only tokens comprising the top 10% probability mass are considered.                                                                           |
| `stream`            | boolean |          | `false`                              | Whether to stream the response as Server-Sent Events. If true, tokens are returned as they are generated. If false (default), the full response is returned at once.                                                                                                                                     |
| `logprobs`          | boolean |          | `false`                              | Whether to return log probabilities of the output tokens. If true, returns the log probabilities of each output token returned in the content of message.                                                                                                                                                |
| `messages`          | array   |     ✅    | —                                    | A list of messages comprising the conversation so far. Each message has a role (system, user, assistant, tool) and content.                                                                                                                                                                              |
| `max_tokens`        | integer |          | `50`                                 | The maximum number of tokens that can be generated in the chat completion. If not specified, the model will generate until it reaches a natural stopping point.                                                                                                                                          |
| `temperature`       | number  |          | `0.7`                                | Sampling temperature between 0 and 2. Higher values like 0.8 make output more random, lower values like 0.2 make it more focused and deterministic. We generally recommend altering this or top\_p but not both.                                                                                         |
| `tool_choice`       | —       |          | —                                    | Controls which (if any) tool is called by the model. 'auto' (default) means the model can pick between generating a message or calling a tool. 'none' means the model will not call a tool. 'required' means the model must call a tool. Or specify a particular function to force the model to call it. |
| `tool_prompt`       | string  |          | —                                    | A prompt to be appended before the tools section.                                                                                                                                                                                                                                                        |
| `top_logprobs`      | integer |          | `2`                                  | An integer between 0 and 5 specifying the number of most likely tokens to return at each token position, each with an associated log probability. logprobs must be set to true if this parameter is used.                                                                                                |
| `stream_options`    | object  |          | —                                    | Stream options.                                                                                                                                                                                                                                                                                          |
| `response_format`   | —       |          | —                                    | The format of the response. Can be 'text' (default), 'json\_object' for JSON mode, or 'json\_schema' for structured output with a specific schema.                                                                                                                                                       |
| `presence_penalty`  | number  |          | `0`                                  | Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.                                                                                                                            |
| `frequency_penalty` | number  |          | `0`                                  | Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.                                                                                                               |

***

### `Hugging Face Generate Embeddings`

Integration name: **HUGGING\_FACE\_GENERATE\_EMBEDDINGS**

Tool to convert text into vector embeddings for feature extraction, semantic search, and similarity tasks. Use when you need numerical representations of text for ML applications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                          | Description                                                                                                                        |
| --------- | ------ | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- |
| `model`   | string |          | `"sentence-transformers/all-MiniLM-L6-v2"`       | The Hugging Face model ID to use for generating embeddings. Must be a valid embedding model from the Hugging Face model hub.       |
| `inputs`  | array  |     ✅    | `["Hello, this is a test text for embeddings."]` | Array of text strings to convert into embeddings. Each string will be processed and returned as a numerical vector representation. |

***

### `Hugging Face Get Daily Papers`

Integration name: **HUGGING\_FACE\_GET\_DAILY\_PAPERS**

Tool to retrieve daily papers from Hugging Face. Use when you need to fetch the latest AI/ML research papers shared on Hugging Face.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                                                  |
| ----------- | ------- | :------: | --------------- | ------------------------------------------------------------ |
| `p`         | integer |          | `0`             | Page number for pagination (0-indexed). Defaults to 0.       |
| `date`      | string  |          | `"2024-01-15"`  | Filter papers by specific date (YYYY-MM-DD format).          |
| `sort`      | string  |          | `"publishedAt"` | Sort option for daily papers.                                |
| `week`      | string  |          | `"2024-W03"`    | Filter papers by specific week.                              |
| `limit`     | integer |          | `10`            | Maximum number of papers to return per page. Defaults to 50. |
| `month`     | string  |          | `"2024-01"`     | Filter papers by specific month (YYYY-MM format).            |
| `submitter` | string  |          | `"username123"` | Filter papers by submitter username.                         |

***

### `Hugging Face Get Dataset Croissant`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_CROISSANT**

Tool to get Croissant metadata about a Hugging Face dataset. Croissant is a metadata format built on schema.org aimed at describing datasets used for machine learning. Use when you need structured metadata in JSON-LD format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                | Description                                                                                                     |
| --------- | ------ | :------: | ---------------------- | --------------------------------------------------------------------------------------------------------------- |
| `dataset` | string |     ✅    | `"ibm-research/duorc"` | Full dataset name in format 'namespace/repo' (e.g., 'ibm-research/duorc', 'squad', 'huggingface/transformers'). |

***

### `Hugging Face Get Dataset First Rows`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_FIRST\_ROWS**

Tool to get the first 100 rows of a dataset split along with column data types and features. Use when you need to preview or sample dataset content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                       | Description                                                                                                           |
| --------- | ------ | :------: | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `split`   | string |     ✅    | `"train"`                                     | Name of the dataset split to retrieve rows from.                                                                      |
| `config`  | string |     ✅    | `"default"`                                   | Name of the dataset configuration/subset. Use 'default' for datasets without configurations.                          |
| `dataset` | string |     ✅    | `"cornell-movie-review-data/rotten_tomatoes"` | Name of the dataset in format 'namespace/name'. For example, 'cornell-movie-review-data/rotten\_tomatoes' or 'squad'. |

***

### `Hugging Face Get Dataset Info`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_INFO**

Tool to get general information about a dataset including description, citation, homepage, license, and features (column schemas). Use when you need to understand dataset structure, available splits, and metadata before working with the data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example             | Description                                                                                                            |
| --------- | ------ | :------: | ------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `config`  | string |          | `"SelfRC"`          | Name of the config/subset to retrieve information for. If not provided, returns info for the default configuration.    |
| `dataset` | string |     ✅    | `"rajpurkar/squad"` | Name of the dataset to retrieve information for. Format: 'namespace/repo-name' (e.g., 'rajpurkar/squad', 'ibm/duorc'). |

***

### `Hugging Face Get Dataset Repo Info`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_REPO\_INFO**

Tool to retrieve detailed information about a Hugging Face dataset repository. Use when you need metadata, card data, tags, downloads, likes, configurations, or other information about a specific dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example             | Description                                                                                                          |
| ---------- | ------ | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `repo_id`  | string |     ✅    | `"rajpurkar/squad"` | Dataset repository ID in the format author/dataset-name (e.g., 'rajpurkar/squad', 'stanfordnlp/imdb')                |
| `revision` | string |          | `"main"`            | Git revision (branch, tag, or commit SHA) to retrieve information for. If not specified, defaults to the main branch |

***

### `Hugging Face Get Dataset Rows`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_ROWS**

Tool to retrieve a slice of rows from a Hugging Face dataset split at any given location (offset). Returns up to 100 rows at a time with complete feature type information and no truncation. Use when you need to inspect specific rows from a dataset without downloading the entire dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                                                                  |
| --------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `split`   | string  |     ✅    | `"train"`            | Name of the dataset split to retrieve rows from. Common splits include 'train', 'test', and 'validation'.                    |
| `config`  | string  |     ✅    | `"plain_text"`       | Name of the config/subset of the dataset. Each dataset may have multiple configurations for different variations or subsets. |
| `length`  | integer |     ✅    | `10`                 | Number of rows to retrieve. Maximum allowed value is 100. Use smaller values for faster responses.                           |
| `offset`  | integer |     ✅    | `0`                  | Starting row index (0-based) from which to begin retrieving rows. Use 0 to start from the beginning of the dataset.          |
| `dataset` | string  |     ✅    | `"stanfordnlp/imdb"` | Name of the dataset to retrieve rows from. Use format 'namespace/dataset\_name' (e.g., 'stanfordnlp/imdb', 'ibm/duorc').     |

***

### `Hugging Face Get Datasets Compare`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_COMPARE**

Tool to get a comparison (diff) between two revisions of a Hugging Face dataset. Use when you need to see what changed between dataset versions or commits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                                                    |
| ----------- | ------- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `raw`       | boolean |          | —                | Whether to return the raw diff output. If false or not provided, returns formatted diff.                                                                                       |
| `repo`      | string  |     ✅    | `"squad"`        | The name of the dataset repository to compare.                                                                                                                                 |
| `compare`   | string  |     ✅    | `"main~1..main"` | The comparison specification in the format 'base..head' (e.g., 'main\~1..main' for comparing the previous commit to main, or 'abc123..def456' for comparing specific commits). |
| `namespace` | string  |     ✅    | `"rajpurkar"`    | The namespace (username or organization) that owns the dataset.                                                                                                                |

***

### `Hugging Face Get Dataset Size`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_SIZE**

Tool to get the size of a Hugging Face dataset including number of rows and size in bytes. Use when you need to determine dataset size, memory requirements, or storage needs for a specific dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                             |
| --------- | ------ | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `dataset` | string |     ✅    | `"stanfordnlp/imdb"` | Name of the dataset to get size information for. Format: 'namespace/repo-name' (e.g., 'stanfordnlp/imdb', 'ibm/duorc'). |

***

### `Hugging Face Get Datasets Jwt`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_JWT**

Tool to generate a JWT token for accessing a Hugging Face dataset repository. Use when you need authenticated access to datasets, optionally with write access for spaces in dev mode, custom expiration, or encryption.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example       | Description                                                                                  |
| -------------------- | ------ | :------: | ------------- | -------------------------------------------------------------------------------------------- |
| `repo`               | string |     ✅    | `"squad"`     | The name of the dataset repository.                                                          |
| `write`              | string |          | `"true"`      | Enable write access for spaces in dev mode. Set to 'true' to enable write access.            |
| `encrypted`          | string |          | `"true"`      | Request an encrypted JWT token. Set to 'true' to receive encrypted token with key ID.        |
| `namespace`          | string |     ✅    | `"rajpurkar"` | The namespace (organization or user) that owns the dataset repository.                       |
| `expiration`         | string |          | `"3600"`      | Custom expiration time for the JWT token. Format depends on Hugging Face API specifications. |
| `inference_api`      | string |          | `"true"`      | Enable inference API access. Set to 'true' to enable.                                        |
| `include_pro_status` | string |          | `"true"`      | Include Pro status information in the token. Set to 'true' to include.                       |

***

### `Hugging Face Get Datasets Leaderboard`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_LEADERBOARD**

Tool to retrieve evaluation results ranked by score for a dataset's leaderboard. Use when you need to compare model performance on a specific dataset or task. Returns an array of leaderboard entries with model information, scores, and rankings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                  | Description                                                                                                                                     |
| ----------- | ------ | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo`      | string |     ✅    | `"results"`              | The repository name of the dataset. For example, 'results' for the dataset 'open-llm-leaderboard/results'.                                      |
| `task_id`   | string |          | `"text-classification"`  | Optional task identifier to filter leaderboard results by a specific task. If not provided, returns results for all tasks.                      |
| `namespace` | string |     ✅    | `"open-llm-leaderboard"` | The namespace (organization or user) that owns the dataset. For example, 'open-llm-leaderboard' for the dataset 'open-llm-leaderboard/results'. |

***

### `Hugging Face Get Datasets Notebook`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_NOTEBOOK**

Tool to get a Jupyter notebook URL from a Hugging Face dataset repository. Use when you need to retrieve the URL for a specific .ipynb file from a dataset at a particular revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                          |
| ----------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------ |
| `rev`       | string |     ✅    | `"main"`                                 | The git revision (branch, tag, or commit hash) to retrieve the notebook from.        |
| `path`      | string |     ✅    | `"Alpaca_+_Llama_7b_full_example.ipynb"` | The path to the notebook file within the repository, including the .ipynb extension. |
| `repo`      | string |     ✅    | `"notebooks"`                            | The repository name of the dataset.                                                  |
| `namespace` | string |     ✅    | `"unsloth"`                              | The namespace (user or organization) that owns the dataset.                          |

***

### `Hugging Face Get Datasets Resolve`

Integration name: **HUGGING\_FACE\_GET\_DSETS\_RESOLVE**

Tool to resolve and download a file from a Hugging Face dataset repository. This endpoint requires following redirections to retrieve file content or returns XET file info when Accept header is set appropriately. Use when you need to access files from datasets with proper redirection handling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                                              |
| ----------- | ------ | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                              | The git revision (commit SHA, branch name, or tag) to resolve the file from.                                                                                                             |
| `path`      | string |     ✅    | `"README.md"`                         | The path to the file within the repository (wildcard path parameter).                                                                                                                    |
| `repo`      | string |     ✅    | `"imdb"`                              | The name of the dataset repository.                                                                                                                                                      |
| `Range`     | string |          | `"bytes=0-1023"`                      | The range in bytes of the file to download (e.g., 'bytes=0-1023' for first 1KB).                                                                                                         |
| `Accept`    | string |          | `"application/vnd.xet-fileinfo+json"` | Returns json information about the XET file info if the file is a XET file. Use 'application/vnd.xet-fileinfo+json' to get XET metadata, otherwise leave empty to download file content. |
| `namespace` | string |     ✅    | `"stanfordnlp"`                       | The namespace (organization or user) that owns the dataset repository.                                                                                                                   |

***

### `Hugging Face Get Datasets Scan`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_SCAN**

Tool to retrieve the security scan status of a Hugging Face dataset repository. Use when you need to check for malware, pickle vulnerabilities, or other security issues in a dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example       | Description                                                           |
| ----------- | ------ | :------: | ------------- | --------------------------------------------------------------------- |
| `repo`      | string |     ✅    | `"squad"`     | The name of the dataset repository to scan                            |
| `namespace` | string |     ✅    | `"rajpurkar"` | The namespace (organization or user) that owns the dataset repository |

***

### `Hugging Face Get Datasets Tags By Type`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_TAGS\_BY\_TYPE**

Tool to retrieve all possible tags used for datasets on Hugging Face, grouped by tag type. Use when you need to discover available dataset classification tags, filter options, or metadata categories. Optionally restrict results to a single tag type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                       |
| --------- | ------ | :------: | ------------ | ------------------------------------------------- |
| `type`    | string |          | `"language"` | Valid tag type values for filtering dataset tags. |

***

### `Hugging Face Get Dataset Statistics`

Integration name: **HUGGING\_FACE\_GET\_DATASET\_STATISTICS**

Tool to get comprehensive statistics about a dataset split including column statistics and data distribution information. Use when you need to analyze dataset composition, understand data distributions, or get statistical summaries of dataset features.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                                   |
| --------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------- |
| `split`   | string |     ✅    | `"train"`        | Name of the split to get statistics for (e.g., 'train', 'test', 'validation').                |
| `config`  | string |     ✅    | `"mnist"`        | Name of the configuration/subset of the dataset (e.g., 'mnist', 'cola', 'default').           |
| `dataset` | string |     ✅    | `"ylecun/mnist"` | Name of the dataset. Format: 'namespace/dataset-name' (e.g., 'ylecun/mnist', 'nyu-mll/glue'). |

***

### `Hugging Face Get Datasets Treesize`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_TREESIZE**

Tool to get the total size of a Hugging Face dataset repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example   | Description                                                                                                                                                                                             |
| ----------- | ------ | :------: | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`  | The Git revision or branch name to query (e.g., 'main', 'dev', or a commit SHA).                                                                                                                        |
| `path`      | string |          | `"."`     | The path within the repository to calculate size for. Use '.' for root directory or specify a subdirectory path (e.g., 'data/train'). The size is calculated recursively for all files under this path. |
| `repo`      | string |     ✅    | `"gsm8k"` | The repository name of the dataset (e.g., 'gsm8k', 'wikitext').                                                                                                                                         |
| `namespace` | string |     ✅    | `"squad"` | The namespace or organization name that owns the dataset (e.g., 'squad', 'openai').                                                                                                                     |

***

### `Hugging Face Get Datasets Xet Read Token`

Integration name: **HUGGING\_FACE\_GET\_DATASETS\_XET\_READ\_TOKEN**

Tool to get a read short-lived access token for XET from Hugging Face datasets. Use when you need temporary read access to dataset content through XET protocol.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example       | Description                                                                                                 |
| ----------- | ------ | :------: | ------------- | ----------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`      | The revision (branch, tag, or commit) to get the token for. Use 'main' for the default branch.              |
| `repo`      | string |     ✅    | `"squad"`     | The repository name of the dataset. For example, 'squad' for the SQuAD dataset.                             |
| `namespace` | string |     ✅    | `"rajpurkar"` | The namespace (organization or user) that owns the dataset. For example, 'rajpurkar' for the SQuAD dataset. |

***

### `Hugging Face Get Discussion`

Integration name: **HUGGING\_FACE\_GET\_DISCUSSION**

Tool to get detailed information about a specific discussion or pull request on Hugging Face Hub. Use when you need to retrieve all comments, status changes, events, and for PRs, the diff information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                           | Description                                                                                                           |
| ---------------- | ------- | :------: | --------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `repo_id`        | string  |     ✅    | `"google-bert/bert-base-uncased"` | Repository ID in the format author/repo-name (e.g., 'google-bert/bert-base-uncased').                                 |
| `repo_type`      | string  |     ✅    | `"models"`                        | The type of repository: models, spaces, or datasets. This determines where to look for the discussion.                |
| `discussion_num` | integer |     ✅    | `1`                               | Discussion number (strictly positive integer). This is the unique identifier of the discussion within the repository. |

***

### `Hugging Face Get Jobs Hardware`

Integration name: **HUGGING\_FACE\_GET\_JOBS\_HARDWARE**

Tool to retrieve available hardware configurations for Hugging Face Jobs with their specifications and pricing. Use when you need to discover compute options for running jobs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face Get Model Info`

Integration name: **HUGGING\_FACE\_GET\_MODEL\_INFO**

Tool to retrieve detailed information about a Hugging Face model repository. Use when you need comprehensive metadata including downloads, likes, tags, configuration, files, and more.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example               | Description                                                                                                                         |
| ----------- | ------ | :------: | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `repo`      | string |     ✅    | `"bert-base-uncased"` | The repository name of the model. For example, 'bert-base-uncased' in 'google-bert/bert-base-uncased'.                              |
| `namespace` | string |     ✅    | `"google-bert"`       | The namespace (organization or user) that owns the model repository. For example, 'google-bert' in 'google-bert/bert-base-uncased'. |

***

### `Hugging Face Get Models Compare`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_COMPARE**

Tool to compare two revisions of a Hugging Face model repository. Returns a git diff showing file changes between commits. Use when you need to see what changed between model versions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                                | Description                                                                                                                                                                                                                                                                             |
| ----------- | ------- | :------: | -------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `raw`       | boolean |          | —                                                                                      | If true, returns raw diff output. If false or omitted, returns formatted diff.                                                                                                                                                                                                          |
| `repo`      | string  |     ✅    | `"bert-base-uncased"`                                                                  | The repository name of the model (e.g., 'bert-base-uncased', 'llama-2-7b').                                                                                                                                                                                                             |
| `compare`   | string  |     ✅    | `"5546055f03398095e385d7dc625e636cc8910bf2..86b5e0934494bd15c9632b12f734a8a67f723594"` | Comparison specification in the format 'commit1..commit2' (two dots). Each commit is a full Git commit hash. For example: '5546055f03398095e385d7dc625e636cc8910bf2..86b5e0934494bd15c9632b12f734a8a67f723594'. Do NOT use three dots (...) as this format is not supported by the API. |
| `namespace` | string  |     ✅    | `"google-bert"`                                                                        | The namespace or organization name that owns the model (e.g., 'google-bert', 'meta-llama', 'openai').                                                                                                                                                                                   |

***

### `Hugging Face Get Models Jwt`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_JWT**

Tool to generate a JWT token for accessing a Hugging Face model repository. Use when you need authenticated access to models, with optional write access for spaces in dev mode, custom expiration, and encryption support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example               | Description                                                                                     |
| -------------------- | ------ | :------: | --------------------- | ----------------------------------------------------------------------------------------------- |
| `repo`               | string |     ✅    | `"bert-base-uncased"` | The repository name within the namespace.                                                       |
| `write`              | string |          | `"true"`              | Enable write access for spaces in dev mode. Set to 'true' to enable write access.               |
| `encrypted`          | string |          | `"true"`              | Request an encrypted token. Set to 'true' to receive an encrypted JWT token and key ID.         |
| `namespace`          | string |     ✅    | `"google-bert"`       | The namespace (organization or user) that owns the model repository.                            |
| `expiration`         | string |          | `"3600"`              | Custom expiration time for the JWT token. Specify the duration or timestamp for token validity. |
| `inference_api`      | string |          | `"true"`              | Enable inference API access with the token. Set to 'true' to enable.                            |
| `include_pro_status` | string |          | `"true"`              | Include PRO subscription status in the token. Set to 'true' to include PRO status information.  |

***

### `Hugging Face Get Models Notebook`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_NOTEBOOK**

Tool to retrieve a Jupyter notebook URL from a Hugging Face model repository. Use when you need to access or display a notebook file stored in a model repository.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                       | Description                                                                                                                                     |
| ----------- | ------ | :------: | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                      | The revision, branch name, tag, or commit hash to retrieve the notebook from (e.g., 'main', 'dev', or a commit SHA).                            |
| `path`      | string |     ✅    | `"Untitled.ipynb"`            | The path to the Jupyter notebook file within the repository, including the .ipynb extension (e.g., 'Untitled.ipynb' or 'notebooks/demo.ipynb'). |
| `repo`      | string |     ✅    | `"example-huggingface-model"` | The repository name of the model (e.g., 'example-huggingface-model').                                                                           |
| `namespace` | string |     ✅    | `"akshat-shethia"`            | The namespace or organization name that owns the model repository (e.g., 'akshat-shethia').                                                     |

***

### `Hugging Face Get Models Scan`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_SCAN**

Tool to retrieve the security scan status of a Hugging Face model repository. Use when you need to check if a model has been scanned for security issues and view any detected problems.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example      | Description                                                                                                          |
| ----------- | ------ | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------- |
| `repo`      | string |     ✅    | `"opt-125m"` | The repository name of the model. For example, 'opt-125m' in 'facebook/opt-125m'.                                    |
| `namespace` | string |     ✅    | `"facebook"` | The namespace (organization or user) that owns the model repository. For example, 'facebook' in 'facebook/opt-125m'. |

***

### `Hugging Face Get Models Treesize`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_TREESIZE**

Tool to get the total size of a Hugging Face model repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example               | Description                                                                                                                                                                                                    |
| ----------- | ------ | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`              | The Git revision or branch name to query (e.g., 'main', 'dev', or a commit SHA).                                                                                                                               |
| `path`      | string |          | `"."`                 | The path within the repository to calculate size for. Use '.' for root directory or specify a subdirectory path (e.g., 'weights', 'config'). The size is calculated recursively for all files under this path. |
| `repo`      | string |     ✅    | `"bert-base-uncased"` | The repository name of the model (e.g., 'bert-base-uncased', 'llama-2-7b').                                                                                                                                    |
| `namespace` | string |     ✅    | `"google-bert"`       | The namespace or organization name that owns the model (e.g., 'google-bert', 'facebook', 'openai').                                                                                                            |

***

### `Hugging Face Get Models Xet Read Token`

Integration name: **HUGGING\_FACE\_GET\_MODELS\_XET\_READ\_TOKEN**

Tool to retrieve a short-lived XET read access token for a Hugging Face model repository. Use when you need to access XET (eXtensible Tensor) data for a specific model revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example               | Description                                                                                                                                  |
| ----------- | ------ | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`              | The revision (branch, tag, or commit hash) to get the XET read token for. Common values include 'main', 'master', or specific commit hashes. |
| `repo`      | string |     ✅    | `"bert-base-uncased"` | The repository name of the model. For example, 'bert-base-uncased' in 'google-bert/bert-base-uncased'.                                       |
| `namespace` | string |     ✅    | `"google-bert"`       | The namespace (organization or user) that owns the model repository. For example, 'google-bert' in 'google-bert/bert-base-uncased'.          |

***

### `Hugging Face Get Model Tags By Type`

Integration name: **HUGGING\_FACE\_GET\_MODEL\_TAGS\_BY\_TYPE**

Tool to retrieve all possible tags used for Hugging Face models, grouped by tag type. Use when you need to discover available model tags for filtering or categorization. Optionally restrict results to a specific tag type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                               |
| --------- | ------ | :------: | ---------------- | ----------------------------------------- |
| `type`    | string |          | `"pipeline_tag"` | Enum for model tag types on Hugging Face. |

***

### `Hugging Face Get Organizations Avatar`

Integration name: **HUGGING\_FACE\_GET\_ORGANIZATIONS\_AVATAR**

Tool to retrieve the avatar URL for a Hugging Face organization. Use when you need to get the avatar image URL for a specific organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example         | Description                                                                                                      |
| ---------- | ------ | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------- |
| `name`     | string |     ✅    | `"huggingface"` | The name of the organization. For example, 'huggingface' or 'meta-llama'.                                        |
| `redirect` | string |          | `"true"`        | If provided, redirect to the avatar URL instead of returning it as JSON. Set to any value to enable redirection. |

***

### `Hugging Face Get Organizations Members`

Integration name: **HUGGING\_FACE\_GET\_ORGANIZATIONS\_MEMBERS**

Tool to retrieve a list of members for a Hugging Face organization. Use when you need to discover who belongs to an organization, with optional filtering by search terms, email, and pagination support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                                                                                             |
| --------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `name`    | string  |     ✅    | `"huggingface"`      | Name of the organization to retrieve members from. This is the organization's username or slug on Hugging Face.         |
| `email`   | string  |          | `"user@example.com"` | Filter members by email address. This may require admin permissions depending on the organization's settings.           |
| `limit`   | integer |          | `10`                 | Maximum number of members to return. Defaults to 500.                                                                   |
| `cursor`  | string  |          | —                    | Pagination cursor for fetching the next page of results. Use the cursor from the previous response to get more members. |
| `search`  | string  |          | `"john"`             | Search query to filter members by username or full name. Use this to find specific members within the organization.     |

***

### `Hugging Face Get Organizations Socials`

Integration name: **HUGGING\_FACE\_GET\_ORGANIZATIONS\_SOCIALS**

Tool to retrieve an organization's social media handles from Hugging Face. Use when you need to find an organization's GitHub, LinkedIn, or Twitter/X profiles. Only returns handles that the organization has publicly shared on their Hugging Face profile.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example         | Description                                                                                                             |
| --------- | ------ | :------: | --------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | `"huggingface"` | The name of the organization to retrieve social media handles for. This is the organization's username on Hugging Face. |

***

### `Hugging Face Get Resolve`

Integration name: **HUGGING\_FACE\_GET\_RESOLVE**

Tool to resolve a file in a Hugging Face repository. Use when you need to access files from model, dataset, or space repositories. This endpoint follows redirections (302, 307) to retrieve the actual file. When Accept header is set to 'application/vnd.xet-fileinfo+json', returns JSON file metadata instead of redirecting to file content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                                                         |
| ----------- | ------ | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                              | The revision (branch, tag, or commit hash) to resolve. Common values include 'main' or specific Git commit SHAs.                                                                                    |
| `path`      | string |     ✅    | `"config.json"`                       | The file path within the repository to resolve. For example, 'config.json', 'pytorch\_model.bin', or 'tokenizer.json'.                                                                              |
| `repo`      | string |     ✅    | `"bart-large"`                        | The repository name within the namespace. For example, 'bart-large' in 'facebook/bart-large'.                                                                                                       |
| `Range`     | string |          | `"bytes=0-1023"`                      | The range in bytes of the file to download. Use HTTP Range header format like 'bytes=0-1023' to download only specific byte ranges.                                                                 |
| `Accept`    | string |          | `"application/vnd.xet-fileinfo+json"` | Returns JSON information about the XET file info if the file is a XET file. Set to 'application/vnd.xet-fileinfo+json' to receive JSON file metadata instead of following redirect to file content. |
| `namespace` | string |     ✅    | `"facebook"`                          | The namespace (organization or user) that owns the repository. For example, 'facebook' in 'facebook/bart-large'.                                                                                    |

***

### `Hugging Face Get Resolve Cache Datasets`

Integration name: **HUGGING\_FACE\_GET\_RESOLVE\_CACHE\_DATASETS**

Tool to resolve a file from cache in a Hugging Face dataset repository. This endpoint follows redirections (302, 307) to retrieve file content or returns XET file info when Accept header is set appropriately. Use when you need to access cached files from datasets with proper redirection handling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                                                                                                                                                              |
| ----------- | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"7b6d24c440a36b6815f21b70d25016731768db1f"` | The git revision (commit SHA, branch, or tag) to resolve the file from. Note: This endpoint typically requires an exact commit SHA rather than branch names.                             |
| `path`      | string |     ✅    | `"README.md"`                                | The path to the file within the repository (wildcard path parameter).                                                                                                                    |
| `repo`      | string |     ✅    | `"squad"`                                    | The name of the dataset repository.                                                                                                                                                      |
| `Range`     | string |          | `"bytes=0-1023"`                             | The range in bytes of the file to download (e.g., 'bytes=0-1023' for first 1KB).                                                                                                         |
| `Accept`    | string |          | `"application/vnd.xet-fileinfo+json"`        | Returns json information about the XET file info if the file is a XET file. Use 'application/vnd.xet-fileinfo+json' to get XET metadata, otherwise leave empty to download file content. |
| `namespace` | string |     ✅    | `"rajpurkar"`                                | The namespace (organization or user) that owns the dataset repository.                                                                                                                   |

***

### `Hugging Face Get Resolve Cache Models`

Integration name: **HUGGING\_FACE\_GET\_RESOLVE\_CACHE\_MODELS**

Tool to resolve and retrieve files from the Hugging Face model cache. Use when you need to access model configuration files, tokenizer files, or other JSON metadata files from a specific model repository. This endpoint returns the actual file content as JSON for JSON files (e.g., config.json, tokenizer.json, tokenizer\_config.json).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                      | Description                                                                                                                                             |
| ----------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"86b5e0934494bd15c9632b12f734a8a67f723594"` | The revision to resolve. Must be a full Git commit SHA (40 characters). Branch names like 'main' or tags are not supported by this endpoint.            |
| `path`      | string |     ✅    | `"config.json"`                              | The file path within the repository to resolve. For example, 'config.json', 'pytorch\_model.bin', or 'tokenizer.json'.                                  |
| `repo`      | string |     ✅    | `"bert-base-uncased"`                        | The repository name of the model. For example, 'bert-base-uncased' in 'google-bert/bert-base-uncased'.                                                  |
| `Range`     | string |          | `"bytes=0-1023"`                             | The range in bytes of the file to download. Use HTTP Range header format like 'bytes=0-1023'.                                                           |
| `Accept`    | string |          | `"application/json"`                         | Optional Accept header to specify the desired response format. Common values include 'application/json', 'application/vnd.xet-fileinfo+json', or '*/*'. |
| `namespace` | string |     ✅    | `"google-bert"`                              | The namespace (organization or user) that owns the model repository. For example, 'google-bert' in 'google-bert/bert-base-uncased'.                     |

***

### `Hugging Face Get Resolve Cache Spaces`

Integration name: **HUGGING\_FACE\_GET\_RESOLVE\_CACHE\_SPACES**

Tool to resolve and retrieve a file from Hugging Face Spaces cache. Use when you need to download a file from a Space repository or get XET file information. This endpoint follows redirections (HTTP 302/307) to resolve the final file location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                    |
| ----------- | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                              | The git revision (branch, tag, or commit hash) to retrieve the file from. Use a full commit SHA for exact version, or 'main' for the default branch.           |
| `path`      | string |     ✅    | `"README.md"`                         | The path to the file within the repository. This is a wildcard path parameter that can include subdirectories and filename.                                    |
| `repo`      | string |     ✅    | `"gradio-user-history"`               | The repository name of the Space. For example, 'gradio-user-history' for the Wauplin/gradio-user-history Space.                                                |
| `Range`     | string |          | `"bytes=0-1023"`                      | The range in bytes of the file to download. Format: 'bytes=start-end'. If not provided, the entire file will be retrieved.                                     |
| `Accept`    | string |          | `"application/vnd.xet-fileinfo+json"` | Accept header to specify the response format. Use 'application/vnd.xet-fileinfo+json' to get JSON information about XET file info instead of the file content. |
| `namespace` | string |     ✅    | `"Wauplin"`                           | The namespace (user or organization) that owns the Space. For example, 'Wauplin' for the Wauplin/gradio-user-history Space.                                    |

***

### `Hugging Face Get Settings Billing Usage Jobs`

Integration name: **HUGGING\_FACE\_GET\_SETTINGS\_BILLING\_USAGE\_JOBS**

Tool to retrieve Jobs usage and billing information for the current subscription period from Hugging Face. Use when you need to check compute usage, costs, or job execution details for the authenticated user or organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face Get Settings Billing Usage Live`

Integration name: **HUGGING\_FACE\_GET\_SETTINGS\_BILLING\_USAGE\_LIVE**

Tool to retrieve live billing usage stream from Hugging Face. Use when you need real-time updates on storage, inference, Zero GPU usage, and rate limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                    |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------ |
| `timeout` | integer |          | `5`     | Maximum time in seconds to wait for live usage updates. Defaults to 5 seconds. |

***

### `Hugging Face Get Settings Billing Usage V2`

Integration name: **HUGGING\_FACE\_GET\_SETTINGS\_BILLING\_USAGE\_V2**

Tool to retrieve user billing usage for a custom date range from Hugging Face. Use when you need to check usage statistics or resource consumption between specific dates using Unix timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                                                                                                                            |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `endDate`   | integer |     ✅    | `1706745600` | End date of the billing period as Unix timestamp (seconds since epoch). Defines the end of the date range for which to retrieve usage data. Must be after start\_date. |
| `startDate` | integer |     ✅    | `1704067200` | Start date of the billing period as Unix timestamp (seconds since epoch). Defines the beginning of the date range for which to retrieve usage data.                    |

***

### `Hugging Face Get Settings Mcp`

Integration name: **HUGGING\_FACE\_GET\_SETTINGS\_MCP**

Tool to retrieve MCP (Model Context Protocol) tools configuration for the authenticated user. Use when you need to discover available built-in tools and space-based tools configured in the user's Hugging Face settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face Get Settings Webhooks`

Integration name: **HUGGING\_FACE\_GET\_SETTINGS\_WEBHOOKS**

Tool to retrieve a specific webhook configuration from Hugging Face settings. Use when you need to inspect webhook details, verify webhook status, or check webhook configuration for a given webhook ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                  |
| ----------- | ------ | :------: | ---------------------------- | -------------------------------------------------------------------------------------------- |
| `webhookId` | string |     ✅    | `"694964cd9797ba34f1bdfec4"` | The unique identifier of the webhook to retrieve. Must be a 24-character hexadecimal string. |

***

### `Hugging Face Get Space Info`

Integration name: **HUGGING\_FACE\_GET\_SPACE\_INFO**

Tool to retrieve detailed information about a Hugging Face Space repository. Use when you need metadata, SDK type, hardware configuration, runtime status, or other information about a specific Space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example            | Description                                                                                                          |
| ---------- | ------ | :------: | ------------------ | -------------------------------------------------------------------------------------------------------------------- |
| `repo_id`  | string |     ✅    | `"Qwen/Qwen3-TTS"` | Space repository ID in the format author/space-name (e.g., 'Qwen/Qwen3-TTS', 'stabilityai/stable-diffusion')         |
| `revision` | string |          | `"main"`           | Git revision (branch, tag, or commit SHA) to retrieve information for. If not specified, defaults to the main branch |

***

### `Hugging Face Get Spaces Compare`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_COMPARE**

Tool to compare two revisions of a Hugging Face Space repository. Returns a git diff showing file changes between commits. Use when you need to see what changed between Space versions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                                                                | Description                                                                                                                                                                                                                                                                             |
| ----------- | ------- | :------: | -------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `raw`       | boolean |          | —                                                                                      | If true, returns raw diff output. If false or omitted, returns formatted diff.                                                                                                                                                                                                          |
| `repo`      | string  |     ✅    | `"Qwen3-TTS"`                                                                          | The repository name of the Space (e.g., 'Qwen3-TTS', 'chatgpt-demo').                                                                                                                                                                                                                   |
| `compare`   | string  |     ✅    | `"bb80b9adea7bc1d818bc635e839db60b7d4aa8f1..8a132844625e28e09f36427c30070276dfd9b2ed"` | Comparison specification in the format 'commit1..commit2' (two dots). Each commit is a full Git commit hash. For example: 'bb80b9adea7bc1d818bc635e839db60b7d4aa8f1..8a132844625e28e09f36427c30070276dfd9b2ed'. Do NOT use three dots (...) as this format is not supported by the API. |
| `namespace` | string  |     ✅    | `"Qwen"`                                                                               | The namespace or organization name that owns the Space (e.g., 'Qwen', 'openai', 'gradio').                                                                                                                                                                                              |

***

### `Hugging Face Get Spaces Events`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_EVENTS**

Tool to stream status updates for a Hugging Face Space using SSE protocol. Use when you need to monitor Space build stages, runtime status, or receive real-time updates about Space state changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                |
| -------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------- |
| `repo`         | string  |     ✅    | `"Qwen3-TTS"`                            | The repository name of the Space.                                          |
| `timeout`      | integer |          | `3`                                      | Maximum time in seconds to wait for status updates. Defaults to 5 seconds. |
| `namespace`    | string  |     ✅    | `"Qwen"`                                 | The namespace (username or organization) that owns the Space.              |
| `session_uuid` | string  |          | `"550e8400-e29b-41d4-a716-446655440000"` | Optional session UUID to filter events for a specific session.             |

***

### `Hugging Face Get Spaces Jwt`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_JWT**

Tool to generate a JWT token for accessing a Hugging Face space repository. Use when you need authenticated access to spaces, with optional write access for spaces in dev mode, custom expiration, and encryption support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example       | Description                                                                                     |
| -------------------- | ------ | :------: | ------------- | ----------------------------------------------------------------------------------------------- |
| `repo`               | string |     ✅    | `"Qwen3-TTS"` | The name of the space repository.                                                               |
| `write`              | string |          | `"true"`      | Enable write access for spaces in dev mode. Set to 'true' to enable write access.               |
| `encrypted`          | string |          | `"true"`      | Request an encrypted token. Set to 'true' to receive an encrypted JWT token and key ID.         |
| `namespace`          | string |     ✅    | `"Qwen"`      | The namespace (organization or user) that owns the space repository.                            |
| `expiration`         | string |          | `"3600"`      | Custom expiration time for the JWT token. Specify the duration or timestamp for token validity. |
| `inference_api`      | string |          | `"true"`      | Enable inference API access with the token. Set to 'true' to enable.                            |
| `include_pro_status` | string |          | `"true"`      | Include PRO subscription status in the token. Set to 'true' to include PRO status information.  |

***

### `Hugging Face Get Spaces Metrics`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_METRICS**

Tool to get live metrics for a specific Space in a streaming fashion, with SSE protocol, such as current Zero-GPU usage. Use when you need real-time monitoring of Space resource utilization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example       | Description                                                                 |
| ----------- | ------- | :------: | ------------- | --------------------------------------------------------------------------- |
| `repo`      | string  |     ✅    | `"Qwen3-TTS"` | The repository name of the Space.                                           |
| `timeout`   | integer |          | `5`           | Maximum time in seconds to wait for metrics updates. Defaults to 5 seconds. |
| `namespace` | string  |     ✅    | `"Qwen"`      | The namespace (username or organization) that owns the Space.               |

***

### `Hugging Face Get Spaces Notebook`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_NOTEBOOK**

Tool to retrieve a Jupyter notebook URL from a Hugging Face space repository. Use when you need to access or display a notebook file stored in a space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                              | Description                                                                                                                                                |
| ----------- | ------ | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                                             | The revision, branch name, tag, or commit hash to retrieve the notebook from (e.g., 'main', 'dev', or a commit SHA).                                       |
| `path`      | string |     ✅    | `"notebooks/automatic_mask_generator_example.ipynb"` | The path to the Jupyter notebook file within the repository, including the .ipynb extension (e.g., 'notebooks/automatic\_mask\_generator\_example.ipynb'). |
| `repo`      | string |     ✅    | `"SAM2-Video-Predictor"`                             | The repository name of the space (e.g., 'SAM2-Video-Predictor').                                                                                           |
| `namespace` | string |     ✅    | `"fffiloni"`                                         | The namespace or organization name that owns the space repository (e.g., 'fffiloni').                                                                      |

***

### `Hugging Face Get Spaces Resolve`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_RESOLVE**

Tool to resolve and retrieve a file from a Hugging Face Space repository. Use when you need to download a file from a Space or get XET file information. This endpoint follows redirections (HTTP 302/307) to resolve the final file location.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                                    |
| ----------- | ------ | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                              | The git revision (branch, tag, or commit hash) to retrieve the file from. Use 'main' for the default branch or a specific commit SHA for exact version.        |
| `path`      | string |     ✅    | `"README.md"`                         | The file path within the repository to resolve. This wildcard path parameter can include subdirectories and filename.                                          |
| `repo`      | string |     ✅    | `"stable-diffusion-3-medium"`         | The repository name of the Space. For example, 'stable-diffusion-3-medium' for the stabilityai/stable-diffusion-3-medium Space.                                |
| `Range`     | string |          | `"bytes=0-1023"`                      | The range in bytes of the file to download. Format: 'bytes=start-end'. If not provided, the entire file will be retrieved.                                     |
| `Accept`    | string |          | `"application/vnd.xet-fileinfo+json"` | Accept header to specify the response format. Use 'application/vnd.xet-fileinfo+json' to get JSON information about XET file info instead of the file content. |
| `namespace` | string |     ✅    | `"stabilityai"`                       | The namespace (user or organization) that owns the Space. For example, 'stabilityai' for the stabilityai/stable-diffusion-3-medium Space.                      |

***

### `Hugging Face Get Spaces Scan`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_SCAN**

Tool to retrieve the security scan status of a Hugging Face space repository. Use when you need to check for malware, pickle vulnerabilities, or other security issues in a space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                       | Description                                                         |
| ----------- | ------ | :------: | ----------------------------- | ------------------------------------------------------------------- |
| `repo`      | string |     ✅    | `"stable-diffusion-3-medium"` | The name of the space repository to check security status for       |
| `namespace` | string |     ✅    | `"stabilityai"`               | The namespace (organization or user) that owns the space repository |

***

### `Hugging Face Get Spaces Treesize`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_TREESIZE**

Tool to get the total size of a Hugging Face space repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example         | Description                                                                                                                                                                                                |
| ----------- | ------ | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`        | The Git revision or branch name to query (e.g., 'main', 'dev', or a commit SHA).                                                                                                                           |
| `path`      | string |          | `"."`           | The path within the repository to calculate size for. Use '.' for root directory or specify a subdirectory path (e.g., 'static/images'). The size is calculated recursively for all files under this path. |
| `repo`      | string |     ✅    | `"hello_world"` | The repository name of the space (e.g., 'hello\_world', 'chatbot').                                                                                                                                        |
| `namespace` | string |     ✅    | `"gradio"`      | The namespace or organization name that owns the space (e.g., 'gradio', 'huggingface').                                                                                                                    |

***

### `Hugging Face Get Spaces Xet Read Token`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_XET\_READ\_TOKEN**

Tool to retrieve a short-lived XET read access token for a Hugging Face Space repository. Use when you need to access XET (eXtensible Tensor) data for a specific Space revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example           | Description                                                                                                                                  |
| ----------- | ------ | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`          | The revision (branch, tag, or commit hash) to get the XET read token for. Common values include 'main', 'master', or specific commit hashes. |
| `repo`      | string |     ✅    | `"Ace-Step-v1.5"` | The repository name of the Space. For example, 'Ace-Step-v1.5' in 'ACE-Step/Ace-Step-v1.5'.                                                  |
| `namespace` | string |     ✅    | `"ACE-Step"`      | The namespace (organization or user) that owns the Space repository. For example, 'ACE-Step' in 'ACE-Step/Ace-Step-v1.5'.                    |

***

### `Hugging Face Get Spaces Xet Write Token`

Integration name: **HUGGING\_FACE\_GET\_SPACES\_XET\_WRITE\_TOKEN**

Tool to retrieve a short-lived XET write access token for a Hugging Face space repository. Use when you need to upload or write XET data to a specific space revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example            | Description                                                                                                                                                                 |
| ----------- | ------- | :------: | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string  |     ✅    | `"main"`           | The revision (branch, tag, or commit hash) to get the XET write token for. Common values include 'main', 'master', or specific commit hashes.                               |
| `repo`      | string  |     ✅    | `"ComfyUI"`        | The repository name of the space. For example, 'ComfyUI' in 'SpacesExamples/ComfyUI'.                                                                                       |
| `create_pr` | integer |          | `1`                | Pass 1 to enable PR creation mode for users without direct write access to the repository. When set, changes will be submitted as a pull request instead of direct commits. |
| `namespace` | string  |     ✅    | `"SpacesExamples"` | The namespace (organization or user) that owns the space repository. For example, 'SpacesExamples' in 'SpacesExamples/ComfyUI'.                                             |

***

### `Hugging Face Get Trending`

Integration name: **HUGGING\_FACE\_GET\_TRENDING**

Tool to retrieve trending repositories from Hugging Face. Use when you need to discover popular models, datasets, or spaces that are currently trending on the platform.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                        |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------ |
| `type`    | string  |          | `"all"` | Repository type filter for trending repositories.                  |
| `limit`   | integer |          | `10`    | Maximum number of trending repositories to return. Defaults to 10. |

***

### `Hugging Face Get Users Avatar`

Integration name: **HUGGING\_FACE\_GET\_USERS\_AVATAR**

Tool to retrieve the avatar URL for a Hugging Face user. Use when you need to get the avatar image URL for a specific user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                                                      |
| ---------- | ------ | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------- |
| `redirect` | string |          | `"true"`     | If provided, redirect to the avatar URL instead of returning it as JSON. Set to any value to enable redirection. |
| `username` | string |     ✅    | `"julien-c"` | The username of the user whose avatar URL to retrieve. For example, 'julien-c' or 'lysandre'.                    |

***

### `Hugging Face Get Users Overview`

Integration name: **HUGGING\_FACE\_GET\_USERS\_OVERVIEW**

Tool to retrieve a comprehensive overview of a Hugging Face user's profile. Use when you need to get user statistics, organizations, activity counts, and profile information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                                            |
| ---------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------ |
| `username` | string |     ✅    | `"yjernite"` | Username of the Hugging Face user to retrieve overview for. This is the user's handle on Hugging Face. |

***

### `Hugging Face Get Users Socials`

Integration name: **HUGGING\_FACE\_GET\_USERS\_SOCIALS**

Tool to retrieve a user's social media handles from Hugging Face. Use when you need to find a user's GitHub, LinkedIn, Twitter/X, or Bluesky profiles. Only returns handles that the user has publicly shared on their Hugging Face profile.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                                                              |
| ---------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `username` | string |     ✅    | `"julien-c"` | The username of the Hugging Face user to retrieve social media handles for. This is the user's username on Hugging Face. |

***

### `Hugging Face Get Whoami`

Integration name: **HUGGING\_FACE\_GET\_WHOAMI**

Tool to get information about the authenticated Hugging Face user including username, email, organizations, and token details. Use when you need to identify the current user from an access token or retrieve user profile information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face Handle Datasets User Access Request`

Integration name: **HUGGING\_FACE\_HANDLE\_DATASETS\_USER\_ACCESS\_REQUEST**

Tool to handle a user's access request to a gated Hugging Face dataset. Use this to accept, reject, or update the status of access requests for repositories with gated access. Either 'user' or 'userId' must be provided to identify the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                   | Description                                                                                                                                                |
| ----------------- | ------ | :------: | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo`            | string |     ✅    | `"test-gated-dataset-cancel"`             | The repository name of the gated dataset. For example, 'test-gated-dataset-cancel'.                                                                        |
| `user`            | string |          | `"julien-c"`                              | The username of the user whose access request is being handled. Either 'user' or 'userId' must be provided, but not both.                                  |
| `status`          | string |     ✅    | `"accepted"`                              | The decision on the access request. Use 'accepted' to grant access, 'rejected' to deny access, or 'pending' to keep the request pending.                   |
| `userId`          | string |          | `"507f1f77bcf86cd799439011"`              | The user ID (24-character hexadecimal string) of the user whose access request is being handled. Either 'user' or 'userId' must be provided, but not both. |
| `namespace`       | string |     ✅    | `"121tester"`                             | The namespace (organization or user) that owns the dataset. For example, '121tester' or 'huggingface'.                                                     |
| `rejectionReason` | string |          | `"Does not meet repository requirements"` | The reason for rejecting the access request. Maximum 200 characters. Only applicable when status is 'rejected'.                                            |

***

### `Hugging Face List Collections`

Integration name: **HUGGING\_FACE\_LIST\_COLLECTIONS**

Tool to list collections on the Hugging Face Hub. Use when you need to discover collections of models, datasets, spaces, or papers. Collections are curated groups of repositories organized by users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                         | Description                                                                                                                      |
| --------- | ------- | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string  |          | `"machine learning"`            | Search query to filter collections by title or description. Use keywords to find relevant collections.                           |
| `item`    | string  |          | `"jbilcke-hf/ai-comic-factory"` | Filter collections by item ID (repo\_id, paper id, or collection slug). Use this to find collections containing a specific item. |
| `sort`    | string  |          | `"trending"`                    | Enum for sorting options for collections.                                                                                        |
| `limit`   | integer |          | `5`                             | Maximum number of collections to return per page. Defaults to 10.                                                                |
| `owner`   | string  |          | `"TheBloke"`                    | Filter collections by owner username. Use this to get collections created by a specific user or organization.                    |
| `cursor`  | string  |          | —                               | Pagination cursor for fetching the next page of results. Use the cursor from the previous response to get more collections.      |
| `expand`  | string  |          | —                               | Comma-separated list of fields to expand in the response. Use this to get additional details about collections.                  |

***

### `Hugging Face List Dataset Parquet Files`

Integration name: **HUGGING\_FACE\_LIST\_DATASET\_PARQUET\_FILES**

Tool to get the list of Parquet files for a dataset. Use when you need to download or access dataset files in Parquet format. Returns URLs to download Parquet files with metadata about splits, configurations, and file sizes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example             | Description                                                                                                                   |
| --------- | ------ | :------: | ------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `dataset` | string |     ✅    | `"rajpurkar/squad"` | Name of the dataset to get Parquet files for. Format: 'namespace/repo-name' (e.g., 'rajpurkar/squad', 'huggingface/cifar10'). |

***

### `Hugging Face List Dataset Paths Info`

Integration name: **HUGGING\_FACE\_LIST\_DATASET\_PATHS\_INFO**

Tool to list detailed information about specific paths in a Hugging Face dataset repository. Use when you need to get metadata about files or directories in a dataset, including size, type, commit history, and security scan status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                          | Description                                                                                                                                 |
| ----------- | ------ | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                         | Git revision (branch, tag, or commit hash) to query                                                                                         |
| `repo`      | string |     ✅    | `"glue"`                         | Dataset repository name                                                                                                                     |
| `paths`     | —      |     ✅    | `["README.md",".gitattributes"]` | List of paths to get information about, or a single path string. Paths are relative to the repository root.                                 |
| `expand`    | —      |     ✅    | `true`                           | Whether to expand the response with last commit and security file status information. Can be a boolean or an object with expansion options. |
| `namespace` | string |     ✅    | `"nyu-mll"`                      | Namespace (user or organization) that owns the dataset                                                                                      |

***

### `Hugging Face List Datasets`

Integration name: **HUGGING\_FACE\_LIST\_DATASETS**

Tool to list datasets on the Hugging Face Hub. Use when you need to discover or search for datasets. Supports filtering by author, search query, tags, and sorting by various properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                             | Description                                                                                                   |
| ----------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `sort`      | string  |          | `"trending"`                        | Enum for sorting properties.                                                                                  |
| `limit`     | integer |          | `10`                                | Limit the number of datasets returned. Defaults to 100 if not specified.                                      |
| `author`    | string  |          | `"huggingface"`                     | Filter datasets by an author or organization. Use this to get datasets from a specific user or org.           |
| `cursor`    | string  |          | —                                   | Pagination cursor for fetching the next page of results. Use the next\_cursor value from a previous response. |
| `filter`    | string  |          | `"task_categories:text-generation"` | Filter based on tags. Use this to find datasets with specific tags like task types, languages, or licenses.   |
| `search`    | string  |          | `"wikipedia"`                       | Filter based on substrings for dataset names and their usernames. Use this to search for datasets by keyword. |
| `direction` | string  |          | `"desc"`                            | Enum for sort direction.                                                                                      |

***

### `Hugging Face List Datasets Commits`

Integration name: **HUGGING\_FACE\_LIST\_DATASETS\_COMMITS**

Tool to list commits from a Hugging Face dataset repository. Use when you need to retrieve the commit history for a specific dataset branch or revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example       | Description                                                      |
| ----------- | ------- | :------: | ------------- | ---------------------------------------------------------------- |
| `p`         | integer |          | `0`           | Page number for pagination. Starts from 0 for the first page.    |
| `rev`       | string  |     ✅    | `"main"`      | The revision (branch, tag, or commit hash) to list commits from. |
| `repo`      | string  |     ✅    | `"squad"`     | The repository name of the dataset.                              |
| `limit`     | integer |          | `10`          | Maximum number of commits to return per page. Default is 50.     |
| `namespace` | string  |     ✅    | `"rajpurkar"` | The namespace (username or organization) that owns the dataset.  |

***

### `Hugging Face List Dataset Splits`

Integration name: **HUGGING\_FACE\_LIST\_DATASET\_SPLITS**

Tool to get the list of subsets and splits of a dataset. Returns the available configurations and splits for a given dataset on the Hub. Use when you need to understand the structure of a dataset before querying specific splits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                                |
| --------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `dataset` | string |     ✅    | `"stanfordnlp/imdb"` | Name of the dataset to retrieve splits for. Format: 'namespace/repo-name' (e.g., 'stanfordnlp/imdb', 'huggingface/squad'). |

***

### `Hugging Face List Datasets Refs`

Integration name: **HUGGING\_FACE\_LIST\_DATASETS\_REFS**

Tool to list all references (branches, tags, converts, pull requests) in a Hugging Face dataset repository. Use when you need to retrieve available references for a specific dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example         | Description                                                                             |
| ------------- | ------- | :------: | --------------- | --------------------------------------------------------------------------------------- |
| `repo`        | string  |     ✅    | `"imdb"`        | The repository name of the dataset.                                                     |
| `namespace`   | string  |     ✅    | `"stanfordnlp"` | The namespace (organization or user) that owns the dataset.                             |
| `include_prs` | boolean |          | —               | Whether to include pull requests in the response. Set to true to include pull requests. |

***

### `Hugging Face List Datasets User Access Request`

Integration name: **HUGGING\_FACE\_LIST\_DATASETS\_USER\_ACCESS\_REQUEST**

Tool to list access requests for a gated Hugging Face dataset repository. Use when you need to view pending, accepted, or rejected access requests for datasets with restricted access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                       | Description                                                      |
| ----------- | ------- | :------: | ----------------------------- | ---------------------------------------------------------------- |
| `repo`      | string  |     ✅    | `"test-gated-dataset-cancel"` | The repository name of the gated dataset                         |
| `after`     | string  |          | —                             | Cursor for pagination - returns requests after this cursor       |
| `limit`     | integer |          | `100`                         | Maximum number of access requests to return (default: 1000)      |
| `before`    | string  |          | —                             | Cursor for pagination - returns requests before this cursor      |
| `status`    | string  |     ✅    | —                             | Filter access requests by status: pending, accepted, or rejected |
| `namespace` | string  |     ✅    | `"121tester"`                 | The namespace or organization name that owns the dataset         |

***

### `Hugging Face List Discussions`

Integration name: **HUGGING\_FACE\_LIST\_DISCUSSIONS**

Tool to list discussions for a Hugging Face repository. Use when you need to retrieve discussions or pull requests for a specific model, dataset, or space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example      | Description                                                               |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------------------------- |
| `p`         | integer |          | `0`          | Page number for pagination. Starts from 0 for the first page.             |
| `repo`      | string  |     ✅    | `"opt-125m"` | The repository name to list discussions from.                             |
| `sort`      | string  |          | —            | Sort type enum.                                                           |
| `type`      | string  |          | —            | Discussion type enum.                                                     |
| `author`    | string  |          | `"john_doe"` | Filter discussions by author username.                                    |
| `search`    | string  |          | `"bug"`      | Search query to filter discussions by title or content.                   |
| `status`    | string  |          | —            | Discussion status enum.                                                   |
| `namespace` | string  |     ✅    | `"facebook"` | The namespace (username or organization) that owns the repository.        |
| `repo_type` | string  |     ✅    | `"models"`   | Type of repository to list discussions from: models, spaces, or datasets. |

***

### `Hugging Face List Docs`

Integration name: **HUGGING\_FACE\_LIST\_DOCS**

Tool to retrieve the list of available documentation from Hugging Face. Use when you need to discover available documentation resources.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face List Endpoints`

Integration name: **HUGGING\_FACE\_LIST\_ENDPOINTS**

Tool to list Hugging Face Inference Endpoints for a specific user or organization. Use when you need to retrieve endpoints, optionally filtered by tags or name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example       | Description                                                                                                                   |
| ----------- | ------- | :------: | ------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `tags`      | string  |          | `"tag1,tag2"` | Filter endpoints by tags (comma-separated). Use this to find endpoints with specific tags.                                    |
| `limit`     | integer |          | `10`          | Maximum number of endpoints to return per page. Defaults to 20 if not specified.                                              |
| `cursor`    | string  |          | `"3"`         | Pagination cursor to fetch the next or previous page of results. Use the nextCursor or prevCursor from the previous response. |
| `search`    | string  |          | `"qwen"`      | Filter endpoints by name substring. Use this to search for endpoints containing specific text in their name.                  |
| `namespace` | string  |     ✅    | `"johnDoe"`   | User or organization name to list endpoints for. This is the owner of the endpoints you want to retrieve.                     |

***

### `Hugging Face List Models Commits`

Integration name: **HUGGING\_FACE\_LIST\_MODELS\_COMMITS**

Tool to list commits from a Hugging Face model repository. Use when you need to retrieve the commit history for a specific model branch or revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                                                     |
| ----------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------- |
| `p`         | integer |          | `0`                  | Page number for pagination. Starts from 0 for the first page.                                   |
| `rev`       | string  |     ✅    | `"main"`             | The revision (branch, tag, or commit hash) to list commits from.                                |
| `repo`      | string  |     ✅    | `"gpt2"`             | The repository name of the model.                                                               |
| `limit`     | integer |          | `10`                 | Maximum number of commits to return per page. Default is 50.                                    |
| `expand`    | array   |          | `["formatted"]`      | List of fields to expand in the response. Use 'formatted' to include formatted commit messages. |
| `namespace` | string  |     ✅    | `"openai-community"` | The namespace (username or organization) that owns the model.                                   |

***

### `Hugging Face List Models Paths Info`

Integration name: **HUGGING\_FACE\_LIST\_MODELS\_PATHS\_INFO**

Tool to list detailed information about specific paths in a Hugging Face model repository. Use when you need to get metadata about files or directories in a model, including size, type, commit history, and security scan status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                               | Description                                                                                                                                 |
| ----------- | ------ | :------: | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                              | Git revision (branch, tag, or commit hash) to query                                                                                         |
| `repo`      | string |     ✅    | `"bert-base-uncased"`                 | Model repository name                                                                                                                       |
| `paths`     | —      |     ✅    | `["config.json","pytorch_model.bin"]` | List of paths to get information about, or a single path string. Paths are relative to the repository root.                                 |
| `expand`    | —      |     ✅    | `true`                                | Whether to expand the response with last commit and security file status information. Can be a boolean or an object with expansion options. |
| `namespace` | string |     ✅    | `"google-bert"`                       | Namespace (user or organization) that owns the model                                                                                        |

***

### `Hugging Face List Models Refs`

Integration name: **HUGGING\_FACE\_LIST\_MODELS\_REFS**

Tool to list all references (branches, tags, converts, and optionally pull requests) in a Hugging Face model repository. Use when you need to retrieve version control information for a specific model.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example               | Description                                                          |
| ------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------- |
| `repo`        | string  |     ✅    | `"bert-base-uncased"` | Repository name within the namespace (e.g., 'bert-base-uncased')     |
| `namespace`   | string  |     ✅    | `"google-bert"`       | Namespace or organization name (e.g., 'google-bert', 'facebook')     |
| `include_prs` | boolean |          | —                     | Whether to include pull requests in the response. Defaults to false. |

***

### `Hugging Face List Notifications`

Integration name: **HUGGING\_FACE\_LIST\_NOTIFICATIONS**

Tool to list notifications for the authenticated Hugging Face user. Use when you need to retrieve user notifications, optionally filtered by read status, repository type, author, or other criteria.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                  | Description                                     |
| ------------ | ------- | :------: | ------------------------ | ----------------------------------------------- |
| `p`          | integer |          | `0`                      | Page number for pagination. Defaults to 0.      |
| `mention`    | string  |          | `"all"`                  | Enum for mention filter.                        |
| `paperId`    | string  |          | `"2103.00020"`           | Filter notifications by paper ID.               |
| `repoName`   | string  |          | `"transformers"`         | Filter notifications by repository name.        |
| `repoType`   | string  |          | `"model"`                | Enum for repository type filter.                |
| `articleId`  | string  |          | `"article123"`           | Filter notifications by article ID.             |
| `lastUpdate` | string  |          | `"2024-01-01T00:00:00Z"` | Filter notifications by last update timestamp.  |
| `postAuthor` | string  |          | `"username"`             | Filter notifications by the author of the post. |
| `readStatus` | string  |          | `"all"`                  | Enum for notification read status filter.       |

***

### `Hugging Face List Repo Files`

Integration name: **HUGGING\_FACE\_LIST\_REPO\_FILES**

Tool to get the file tree of a Hugging Face repository with pagination support. Use when you need to browse files and folders in any repository type (model, dataset, or space), explore repository structure, or discover available files.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                           | Description                                                                                                               |
| ----------- | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `path`      | string  |          | `""`                              | Path within the repository to list. Use empty string or '.' for root directory. Supports nested paths.                    |
| `limit`     | integer |          | `10`                              | Maximum number of items to return. Defaults to 1000, or 100 when expand=true. Use with cursor for pagination.             |
| `cursor`    | string  |          | `"eyJwYXRoIjoiZmlsZS50eHQifQ=="`  | Pagination cursor from a previous response to fetch the next page of results. Omit for the first page.                    |
| `expand`    | boolean |          | `true`                            | If true, returns associated commit data for each entry and security scanner metadata. Defaults to false if not specified. |
| `repo_id`   | string  |     ✅    | `"google-bert/bert-base-uncased"` | Repository ID in the format author/repo-name. Example: 'google-bert/bert-base-uncased' for a model.                       |
| `revision`  | string  |          | `"main"`                          | Git revision (branch, tag, or commit SHA) to list. Use 'main' for default branch.                                         |
| `recursive` | boolean |          | `true`                            | If true, returns the tree recursively including all subdirectories. Defaults to false if not specified.                   |
| `repo_type` | string  |     ✅    | `"model"`                         | Repository type: model, dataset, or space.                                                                                |

***

### `Hugging Face List Settings Webhooks`

Integration name: **HUGGING\_FACE\_LIST\_SETTINGS\_WEBHOOKS**

Tool to list all webhooks configured in Hugging Face settings. Use when you need to retrieve webhook configurations for the authenticated user's account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face List Spaces`

Integration name: **HUGGING\_FACE\_LIST\_SPACES**

Tool to list Spaces on the Hugging Face Hub with filtering options. Use when you need to discover or search for ML demo applications hosted on Hugging Face.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example          | Description                                                                                                                                  |
| ----------- | ------- | :------: | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`      | string  |          | `"lastModified"` | Property to use when sorting results. Common values include 'lastModified', 'likes', 'trending', or 'created'.                               |
| `limit`     | integer |          | `5`              | Maximum number of spaces to return in the response. Must be between 1 and 500.                                                               |
| `author`    | string  |          | `"huggingface"`  | Filter spaces by a specific author or organization name.                                                                                     |
| `filter`    | string  |          | `"gradio"`       | Filter based on tags. You can specify tags to find spaces by SDK type (e.g., 'gradio', 'streamlit'), task type, or other characteristics.    |
| `search`    | string  |          | `"gradio"`       | Filter based on substrings for repos and their usernames. Use to search for specific space names or authors.                                 |
| `direction` | string  |          | `"-1"`           | Direction in which to sort results. Use '1' for ascending order or '-1' for descending order. Must be used together with the sort parameter. |

***

### `Hugging Face List Spaces Commits`

Integration name: **HUGGING\_FACE\_LIST\_SPACES\_COMMITS**

Tool to list commits from a Hugging Face Space repository. Use when you need to retrieve the commit history for a specific Space branch or revision.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example         | Description                                                                                     |
| ----------- | ------- | :------: | --------------- | ----------------------------------------------------------------------------------------------- |
| `p`         | integer |          | `0`             | Page number for pagination. Starts from 0 for the first page.                                   |
| `rev`       | string  |     ✅    | `"main"`        | The revision (branch, tag, or commit hash) to list commits from.                                |
| `repo`      | string  |     ✅    | `"Qwen3-TTS"`   | The repository name of the Space.                                                               |
| `limit`     | integer |          | `10`            | Maximum number of commits to return per page. Default is 50.                                    |
| `expand`    | array   |          | `["formatted"]` | List of fields to expand in the response. Use 'formatted' to include formatted commit messages. |
| `namespace` | string  |     ✅    | `"Qwen"`        | The namespace (username or organization) that owns the Space.                                   |

***

### `Hugging Face List Spaces Hardware`

Integration name: **HUGGING\_FACE\_LIST\_SPACES\_HARDWARE**

Tool to retrieve available hardware configurations for Hugging Face Spaces with their specifications and pricing. Use when you need to discover compute options for running spaces.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face List Spaces Lfs Files`

Integration name: **HUGGING\_FACE\_LIST\_SPACES\_LFS\_FILES**

Tool to list LFS (Large File Storage) files from a Hugging Face Space repository. Use when you need to retrieve large files stored in a Space using Git LFS.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                         | Description                                                                                               |
| ----------- | ------- | :------: | ------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `xet`       | string  |          | `"true"`                        | Filter for Xet-specific files. Used for Xet-enabled repositories.                                         |
| `repo`      | string  |     ✅    | `"test-curl-space"`             | The repository name of the Space.                                                                         |
| `limit`     | integer |          | `100`                           | Maximum number of LFS files to return. Default is 1000.                                                   |
| `cursor`    | string  |          | `"eyJmaWxlT2lkIjoiYWJjMTIzIn0"` | Cursor for pagination. Use the cursor returned from a previous request to fetch the next page of results. |
| `namespace` | string  |     ✅    | `"121tester"`                   | The namespace (username or organization) that owns the Space.                                             |

***

### `Hugging Face List Spaces Paths Info`

Integration name: **HUGGING\_FACE\_LIST\_SPACES\_PATHS\_INFO**

Tool to list detailed information about specific paths in a Hugging Face space repository. Use when you need to get metadata about files or directories in a space, including size, type, commit history, and security scan status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                  | Description                                                                                                                                 |
| ----------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                 | Git revision (branch, tag, or commit hash) to query                                                                                         |
| `repo`      | string |     ✅    | `"hello_world"`          | Space repository name                                                                                                                       |
| `paths`     | —      |     ✅    | `["README.md","app.py"]` | List of paths to get information about, or a single path string. Paths are relative to the repository root.                                 |
| `expand`    | —      |     ✅    | `true`                   | Whether to expand the response with last commit and security file status information. Can be a boolean or an object with expansion options. |
| `namespace` | string |     ✅    | `"gradio"`               | Namespace (user or organization) that owns the space                                                                                        |

***

### `Hugging Face List Spaces Refs`

Integration name: **HUGGING\_FACE\_LIST\_SPACES\_REFS**

Tool to list all references (branches, tags, converts, pull requests) in a Hugging Face space repository. Use when you need to retrieve available references for a specific space.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example     | Description                                                                             |
| ------------- | ------- | :------: | ----------- | --------------------------------------------------------------------------------------- |
| `repo`        | string  |     ✅    | `"chatbot"` | The repository name of the space.                                                       |
| `namespace`   | string  |     ✅    | `"gradio"`  | The namespace (organization or user) that owns the space.                               |
| `include_prs` | boolean |          | —           | Whether to include pull requests in the response. Set to true to include pull requests. |

***

### `Hugging Face List Vendors`

Integration name: **HUGGING\_FACE\_LIST\_VENDORS**

Tool to list available cloud provider vendors for Hugging Face Inference Endpoints. Use when you need to discover available infrastructure options across AWS, Azure, and GCP. Returns vendors with their regions and compute instance types for deploying models.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Hugging Face Search Dataset`

Integration name: **HUGGING\_FACE\_SEARCH\_DATASET**

Tool to search text in a dataset split on Hugging Face. Searches in columns of type string, even if values are nested in a dictionary. Use when you need to find specific text or patterns within a dataset's content. Returns matching rows with their data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                       | Description                                                                                                                    |
| --------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `query`   | string  |     ✅    | `"great"`                                     | Text to search for in the dataset. Searches in all columns of type string, even if values are nested in a dictionary.          |
| `split`   | string  |     ✅    | `"train"`                                     | Name of the dataset split to search.                                                                                           |
| `config`  | string  |     ✅    | `"default"`                                   | Name of the configuration/subset of the dataset to search.                                                                     |
| `length`  | integer |          | `5`                                           | Length of the slice (number of rows to return). Maximum value is 100. Defaults to API default if not specified.                |
| `offset`  | integer |          | `0`                                           | Offset of the slice for pagination. Specifies the starting position in the results. Defaults to 0 if not specified.            |
| `dataset` | string  |     ✅    | `"cornell-movie-review-data/rotten_tomatoes"` | Name of the dataset to search. Use format 'owner/dataset-name' for user datasets or just 'dataset-name' for official datasets. |

***

### `Hugging Face Search Docs`

Integration name: **HUGGING\_FACE\_SEARCH\_DOCS**

Tool to search Hugging Face documentation across all products and libraries. Use when you need to find information about HF tools, models, datasets, or API usage.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example          | Description                                                                                                                                   |
| --------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string  |     ✅    | `"transformers"` | Search query string to find relevant documentation pages. Use keywords related to the topic you want to learn about.                          |
| `limit`   | integer |          | `5`              | Maximum number of search results to return. Defaults to 10.                                                                                   |
| `offset`  | integer |          | `0`              | Number of results to skip for pagination. Use with limit to page through results. For example, offset=10 with limit=10 returns results 11-20. |
| `product` | string  |          | `"transformers"` | Enum for Hugging Face product types to search documentation.                                                                                  |

***

### `Hugging Face Search Papers`

Integration name: **HUGGING\_FACE\_SEARCH\_PAPERS**

Tool to perform hybrid semantic/full-text search on papers in Hugging Face. Use when you need to find research papers by keywords, topics, or authors.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                                                                                        |
| --------- | ------- | :------: | --------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `q`       | string  |          | `"transformer"` | Search query string to find relevant papers. Use keywords, paper titles, or topics. Supports hybrid semantic and full-text search. |
| `limit`   | integer |          | `5`             | Maximum number of papers to return. If not specified, the API will use its default limit.                                          |

***

### `Hugging Face Squash Dataset Commits`

Integration name: **HUGGING\_FACE\_SQUASH\_DATASET\_COMMITS**

Tool to squash all commits in a dataset ref into a single commit with the given message. Use when consolidating commit history into a single commit. WARNING: This operation is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                       | Description                                                                                                                          |
| ----------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `rev`       | string |     ✅    | `"test-super-squash"`                         | The ref (branch or revision) to squash. This operation is irreversible and will squash all commits in this ref into a single commit. |
| `repo`      | string |     ✅    | `"test-discussion-dataset"`                   | The name of the dataset repository to squash commits in.                                                                             |
| `message`   | string |          | `"Squashed all commits for testing purposes"` | The commit message for the squashed commit. Maximum length is 500 characters.                                                        |
| `namespace` | string |     ✅    | `"121tester"`                                 | The namespace (organization or user) that owns the dataset.                                                                          |

***

### `Hugging Face Squash Spaces Commits`

Integration name: **HUGGING\_FACE\_SQUASH\_SPACES\_COMMITS**

Tool to squash all commits in a space ref into a single commit with the given message. Use when consolidating commit history into a single commit. WARNING: This operation is irreversible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                           | Description                                                                                                                                                             |
| ----------- | ------ | :------: | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `rev`       | string |     ✅    | `"main"`                          | The ref (branch or revision) to squash. This operation is irreversible and will squash all commits in this ref into a single commit. Typically 'main' or a branch name. |
| `repo`      | string |     ✅    | `"test-curl-space"`               | The name of the space repository where commits will be squashed. For example, for space '121tester/test-curl-space', the repo is 'test-curl-space'.                     |
| `message`   | string |          | `"Squashed all commits into one"` | The commit message for the squashed commit. Maximum length is 500 characters. If not provided, a default message will be used.                                          |
| `namespace` | string |     ✅    | `"121tester"`                     | The namespace (username or organization) that owns the space repository. For example, for space '121tester/test-curl-space', the namespace is '121tester'.              |

***

### `Hugging Face Update Datasets Settings`

Integration name: **HUGGING\_FACE\_UPDATE\_DATASETS\_SETTINGS**

Tool to update settings for a Hugging Face dataset repository. Use when you need to configure visibility, discussions, gating, or access control for a dataset.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                     | Description                                                                                                                                                               |
| --------------------------- | ------- | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `repo`                      | string  |     ✅    | `"test-discussion-dataset"` | The name of the dataset repository                                                                                                                                        |
| `gated`                     | —       |          | —                           | Gating configuration for the dataset. Controls access restrictions and gating behavior. Can be a boolean to enable/disable gating, or an object with gating configuration |
| `private`                   | boolean |          | `false`                     | Whether the dataset is private. Set to true to make private, false to make public                                                                                         |
| `namespace`                 | string  |     ✅    | `"121tester"`               | The namespace (organization or username) that owns the dataset                                                                                                            |
| `discussions_sorting`       | string  |          | `"recently-created"`        | Enum for discussion sorting options.                                                                                                                                      |
| `discussions_disabled`      | boolean |          | `false`                     | Whether discussions are disabled for this dataset. Set to true to disable discussions, false to enable them                                                               |
| `gated_notifications_mode`  | string  |          | `"bulk"`                    | Enum for gated notification modes.                                                                                                                                        |
| `gated_notifications_email` | string  |          | `"admin@example.com"`       | Email address to receive notifications about gated access requests. Must be a valid email format                                                                          |

***

### `Hugging Face Update Discussions Title`

Integration name: **HUGGING\_FACE\_UPDATE\_DISCUSSIONS\_TITLE**

Tool to change the title of an existing discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to update or correct a discussion's title.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                           | Description                                                                                           |
| ----------- | ------ | :------: | --------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `num`       | string |     ✅    | `"141"`                           | The discussion number/identifier to update the title for.                                             |
| `repo`      | string |     ✅    | `"gpt2"`                          | The name of the repository where the discussion is located.                                           |
| `title`     | string |     ✅    | `"Updated Test Discussion Title"` | The new title for the discussion. Must be between 3 and 200 characters.                               |
| `namespace` | string |     ✅    | `"openai-community"`              | The namespace (username or organization) that owns the repository.                                    |
| `repo_type` | string |     ✅    | `"models"`                        | The type of repository: models, spaces, or datasets. This determines where the discussion is located. |

***

### `Hugging Face Update Models Settings`

Integration name: **HUGGING\_FACE\_UPDATE\_MODELS\_SETTINGS**

Tool to update settings for a Hugging Face model repository. Use when you need to modify repository configuration such as privacy, discussions, or gated access settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                     | Description                                                                                        |
| ------------------------- | ------- | :------: | --------------------------- | -------------------------------------------------------------------------------------------------- |
| `repo`                    | string  |     ✅    | `"test-tag-creation-model"` | The name of the model repository to update settings for.                                           |
| `private`                 | boolean |          | `false`                     | Whether the model repository should be private (requires authentication to access) or public.      |
| `namespace`               | string  |     ✅    | `"121tester"`               | The namespace (username or organization) that owns the model repository.                           |
| `discussionsSorting`      | string  |          | `"recently-created"`        | Sorting order for discussions.                                                                     |
| `discussionsDisabled`     | boolean |          | `false`                     | Whether to disable discussions for this model repository. Set to true to disable, false to enable. |
| `gatedNotificationsMode`  | string  |          | `"bulk"`                    | Notification mode for gated access requests.                                                       |
| `gatedNotificationsEmail` | string  |          | `"admin@example.com"`       | Email address to receive notifications about gated access requests. Must be a valid email format.  |

***

### `Hugging Face Update Settings Notifications`

Integration name: **HUGGING\_FACE\_UPDATE\_SETTINGS\_NOTIFICATIONS**

Tool to update notification settings for the authenticated Hugging Face user. Use when you need to enable or disable various notification types such as announcements, discussions, paper digests, or product updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example  | Description                                                                                                         |
| --------------- | ------ | :------: | -------- | ------------------------------------------------------------------------------------------------------------------- |
| `notifications` | object |     ✅    | —        | Notification settings to update. Only include the specific notification preferences you want to change.             |
| `prepaidAmount` | string |          | `"$100"` | Prepaid amount to be provided when enabling launch\_prepaid\_credits notification. Maximum length is 24 characters. |

***

### `Hugging Face Update Settings Watch`

Integration name: **HUGGING\_FACE\_UPDATE\_SETTINGS\_WATCH**

Tool to update watch settings for your Hugging Face account. Use when you want to get notified about discussions on organizations, users, or repositories. You can add new items to watch and/or remove items from your watch list in a single request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                               | Description                                                                                                                                                                                                       |
| --------- | ----- | :------: | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `add`     | array |          | `[{"id":"huggingface","type":"org"}]` | Array of items to start watching. Each item must specify an 'id' and 'type'. You will receive notifications when discussions happen on these items. Leave empty if you only want to remove items from watch list. |
| `delete`  | array |          | `[{"id":"old-user","type":"user"}]`   | Array of items to stop watching. Each item must specify an 'id' and 'type'. You will no longer receive notifications for discussions on these items. Leave empty if you only want to add items to watch list.     |

***

### `Hugging Face Update Settings Webhooks`

Integration name: **HUGGING\_FACE\_UPDATE\_SETTINGS\_WEBHOOKS**

Tool to update an existing webhook in Hugging Face settings. Use when you need to modify webhook configuration such as watched entities, event domains, target URL, or job settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                       | Description                                                                                                                                            |
| ------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `job`         | object |          | —                                             | Model for webhook job configuration to execute when webhook triggers.                                                                                  |
| `url`         | string |          | `"https://webhook.site/updated-test-webhook"` | URL endpoint where webhook POST requests will be sent when events occur. Must be a valid HTTP/HTTPS URL.                                               |
| `secret`      | string |          | `"my-secret-key-123"`                         | Secret string used to sign webhook requests for verification. Must contain only printable ASCII characters.                                            |
| `domains`     | array  |     ✅    | `["repo"]`                                    | List of event domains that trigger the webhook. At least one domain is required. 'repo' for repository events, 'discussion' for discussion events.     |
| `watched`     | array  |     ✅    | `[{"name":"test-user","type":"user"}]`        | List of entities to watch (users, organizations, or repositories). At least one item is required. Events from these entities will trigger the webhook. |
| `webhookId`   | string |     ✅    | `"69497316e950b2fad95060df"`                  | The unique identifier of the webhook to update (24-character hexadecimal string). Get this from the list webhooks action.                              |
| `jobSourceId` | string |          | `"source-123"`                                | Source identifier for the job. Used to track the origin of the job execution.                                                                          |

***

### `Hugging Face Update Spaces Settings`

Integration name: **HUGGING\_FACE\_UPDATE\_SPACES\_SETTINGS**

Tool to update settings for a Hugging Face Spaces repository. Use when you need to modify repository configuration such as privacy, discussions, or gated access settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example               | Description                                                                                                                                                                          |
| ------------------------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `repo`                    | string  |     ✅    | `"test-curl-space"`   | The name of the Spaces repository to update settings for.                                                                                                                            |
| `gated`                   | —       |          | —                     | Gating configuration for the Spaces repository. Controls access restrictions and gating behavior. Can be a boolean to enable/disable gating, or an object with gating configuration. |
| `private`                 | boolean |          | `false`               | Whether the Spaces repository should be private (requires authentication to access) or public.                                                                                       |
| `namespace`               | string  |     ✅    | `"121tester"`         | The namespace (organization or username) that owns the Spaces repository.                                                                                                            |
| `discussionsSorting`      | string  |          | `"recently-created"`  | Sorting order for discussions.                                                                                                                                                       |
| `discussionsDisabled`     | boolean |          | `false`               | Whether to disable discussions for this Spaces repository. Set to true to disable, false to enable.                                                                                  |
| `gatedNotificationsMode`  | string  |          | `"bulk"`              | Notification mode for gated access requests.                                                                                                                                         |
| `gatedNotificationsEmail` | string  |          | `"admin@example.com"` | Email address to receive notifications about gated access requests. Must be a valid email format.                                                                                    |

***

### `Hugging Face Update Sql Console Embed`

Integration name: **HUGGING\_FACE\_UPDATE\_SQL\_CONSOLE\_EMBED**

Tool to update an existing SQL console embed for a Hugging Face dataset. Use when you need to modify the SQL query, title, or privacy settings of an existing embed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                           | Description                                                                                                              |
| ----------- | ------- | :------: | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `id`        | string  |     ✅    | `"UL_7SQR"`                       | The slug identifier of the SQL console embed to update (not the \_id). This is returned as 'slug' when creating an embed |
| `sql`       | string  |          | `"SELECT * FROM train LIMIT 100"` | The SQL query string to execute in the console embed                                                                     |
| `repo`      | string  |     ✅    | `"test-discussion-dataset"`       | The name of the dataset repository                                                                                       |
| `title`     | string  |          | `"Fully Updated SQL Query"`       | The title of the SQL console embed. Maximum 200 characters                                                               |
| `private`   | boolean |          | `true`                            | Whether the SQL console embed is private. Set to true to make it private, false to make it public                        |
| `namespace` | string  |     ✅    | `"121tester"`                     | The namespace (username or organization) that owns the dataset repository                                                |
| `repo_type` | string  |     ✅    | `"datasets"`                      | The type of repository. Currently only 'datasets' is supported                                                           |

***

### `Hugging Face Update Webhook Status`

Integration name: **HUGGING\_FACE\_UPDATE\_WEBHOOK\_STATUS**

Tool to enable or disable a webhook on Hugging Face. Use when you need to temporarily deactivate a webhook without deleting it, or reactivate a previously disabled webhook.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                                                                           |
| ----------- | ------ | :------: | ---------------------------- | ----------------------------------------------------------------------------------------------------- |
| `action`    | string |     ✅    | `"disable"`                  | The action to perform on the webhook: 'enable' to activate the webhook or 'disable' to deactivate it. |
| `webhookId` | string |     ✅    | `"69497316e950b2fad95060df"` | The unique identifier of the webhook to enable or disable. Must be a 24-character hexadecimal string. |


# Instagram

Your Toolhouse AI Worker can connect to Instagram using 36 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](https://toolhouse.app/auth-connections?authkit_slugs=instagram).

## Tools (36)

### `Instagram Create Carousel Container`

Integration name: **INSTAGRAM\_CREATE\_CAROUSEL\_CONTAINER**

Create a draft carousel post with multiple images/videos before publishing. Instagram requires carousels to have between 2 and 10 media items. Container creation\_ids expire in under 24 hours, so publish promptly after creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `caption`           | string |          | —       | Caption for the carousel post (maximum 2,200 characters) Maximum 30 hashtags.                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `children`          | array  |          | —       | List of child creation\_ids (image/video items). Total carousel items across all sources must be between 2 and 10. All child containers must be in FINISHED status before use; pending or failed items will block carousel creation. Order of IDs determines slide sequence.                                                                                                                                                                                                                                                       |
| `ig_user_id`        | string |     ✅    | —       | Instagram Business Account ID Must be a Business or Creator account; personal accounts are rejected.                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `child_image_urls`  | array  |          | —       | List of image URLs to include as carousel children. Images must meet Instagram's requirements: JPEG format, aspect ratio between 4:5 (0.8) and 1.91:1, width between 320-1440px (images below 320px are scaled up, larger images are downscaled), maximum file size 8MB. URLs must be publicly accessible by Instagram's servers. Total carousel items across all sources must be between 2 and 10. Must be direct HTTPS URLs (not HTML pages, redirects, or generic Google Drive share links); use a public direct-download link. |
| `child_video_urls`  | array  |          | —       | List of video URLs to include as carousel children. Videos must meet Instagram's requirements: MP4 or MOV format, aspect ratio between 4:5 (0.8) and 1.91:1, duration 3-60 seconds, maximum file size 4GB. URLs must be publicly accessible by Instagram's servers. Total carousel items across all sources must be between 2 and 10. Must be direct HTTPS URLs (not HTML pages, redirects, or generic Google Drive share links).                                                                                                  |
| `child_image_files` | array  |          | —       | List of local image files to include as carousel children. Images must meet Instagram's requirements: JPEG format, aspect ratio between 4:5 (0.8) and 1.91:1, width between 320-1440px (images below 320px are scaled up, larger images are downscaled), maximum file size 8MB. Total carousel items across all sources must be between 2 and 10.                                                                                                                                                                                  |
| `child_video_files` | array  |          | —       | List of local video files to include as carousel children. Videos must meet Instagram's requirements: MP4 or MOV format, aspect ratio between 4:5 (0.8) and 1.91:1, duration 3-60 seconds, maximum file size 4GB. Total carousel items across all sources must be between 2 and 10.                                                                                                                                                                                                                                                |
| `graph_api_version` | string |          | —       | Instagram Graph API version to use                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Instagram Create Media Container`

Integration name: **INSTAGRAM\_CREATE\_MEDIA\_CONTAINER**

DEPRECATED: Use INSTAGRAM\_POST\_IG\_USER\_MEDIA instead. Creates a draft media container for photos/videos/reels before publishing. Business/Creator accounts only — personal accounts unsupported. Returns a container ID (data.id or data.creation\_id) used as creation\_id for publishing. Containers expire in \~24 hours — recreate stale containers rather than reusing old IDs. Before publishing via INSTAGRAM\_CREATE\_POST, call INSTAGRAM\_GET\_POST\_STATUS and wait for FINISHED status — publishing before FINISHED triggers error 9007. Each creation\_id is one-time-use; if container creation fails (status\_code='ERROR'), fix media params and recreate via this tool rather than retrying publish with the failed ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `caption`           | string  |          | —       | Post caption text. Maximum 2,200 characters. Hashtag limit: 30 hashtags maximum per post (Instagram enforces this limit). Mention limit: 20 @mentions maximum.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `cover_url`         | string  |          | —       | Cover image URL for videos. For feed videos (content\_type='video'), if image\_url is not provided, this will be used as the required thumbnail. For reels, this is optional.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `image_url`         | string  |          | —       | Public URL of the image. CRITICAL REQUIREMENTS: (1) Must be a DIRECT link to the raw image file - no redirects, no authentication, no HTML wrappers. (2) Must be publicly accessible by Meta's crawlers (URLs from Google Drive, dynamic API endpoints, or generated URLs like 'backend.composio.dev/dynamic-module-load/...' will NOT work). (3) Must return proper HTTP 200 status with correct Content-Type header (image/jpeg or image/png). (4) Supported formats: JPG, PNG (WebP not supported). Max 8MB, min 320px width, aspect ratio 4:5 to 1.91:1. RECOMMENDED: Use image hosting services like Imgur, Cloudinary, AWS S3 (public), or similar that provide direct download URLs. For feed videos (content\_type='video'), this parameter is required as a thumbnail. |
| `video_url`         | string  |          | —       | Public URL of the video. CRITICAL REQUIREMENTS: (1) Must be a DIRECT link to the raw video file - no redirects, no authentication, no HTML wrappers. (2) Must be publicly accessible by Meta's crawlers (URLs from Google Drive, dynamic API endpoints, or generated URLs will NOT work). (3) Must return proper HTTP 200 status with correct Content-Type header (video/mp4 or video/quicktime). (4) Supported formats: MP4, MOV. Max 100MB for feed videos, max 1GB for IGTV, min 3 seconds duration. RECOMMENDED: Use video hosting services or cloud storage like AWS S3 (public), Cloudinary, or similar.                                                                                                                                                                  |
| `ig_user_id`        | string  |          | —       | Instagram Business Account ID (numeric string like '17841400008460056'). Optional - defaults to the current authenticated user. Do NOT pass Composio connection IDs (starting with 'ca\_') or other auth identifiers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `media_type`        | string  |          | —       | Explicit media type override (IMAGE, REELS, or CAROUSEL). If not provided, media\_type is automatically inferred: IMAGE for image\_url, REELS for video\_url. IMPORTANT: Each media\_type has specific URL requirements: IMAGE requires image\_url; REELS requires video\_url. NOTE: VIDEO media\_type was deprecated on November 9, 2023. If VIDEO is provided, it will be automatically converted to REELS.                                                                                                                                                                                                                                                                                                                                                                   |
| `content_type`      | string  |          | —       | What you want to post: 'photo', 'video', 'reel', or 'carousel\_item' (for carousel drafts)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `is_carousel_item`  | boolean |          | —       | Legacy parameter to mark media as a carousel item. Prefer using content\_type='carousel\_item' instead, which automatically sets this flag. When creating carousel items, you must provide either image\_url or video\_url. Carousels support a maximum of 10 items; each item must independently satisfy format, size, and aspect-ratio constraints.                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

***

### `Instagram Create Post`

Integration name: **INSTAGRAM\_CREATE\_POST**

DEPRECATED: Use INSTAGRAM\_POST\_IG\_USER\_MEDIA\_PUBLISH instead. Publish a draft media container to Instagram (final publishing step). Posts become immediately and publicly visible upon success — confirm intent before calling. Requires Business or Creator account with publish scopes; missing scopes return Graph error code 10. After creating a media container, Instagram may need time to process media before publishing. If called too early, error code 9007 is returned. This action automatically retries with exponential backoff (up to \~44 seconds total). For large videos, use INSTAGRAM\_GET\_POST\_STATUS to poll until status\_code='FINISHED' before calling; for carousels, all child containers must individually reach FINISHED status first. No native scheduling support — use an external scheduler to trigger this call at the desired time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_user_id`        | string |     ✅    | —       | Instagram Business Account ID. Must be a numeric string (e.g., '25162441193410545'). Personal accounts and misconfigured IDs are rejected.                                                                                                                                                                                                                                                                                                                                                                 |
| `creation_id`       | string |     ✅    | —       | The media container ID returned in the 'id' field from INSTAGRAM\_CREATE\_MEDIA\_CONTAINER or INSTAGRAM\_CREATE\_CAROUSEL\_CONTAINER. Typically a long numeric string like '17895695668004550'. IMPORTANT: Do NOT use datetime strings (e.g., '2024-01-15T10:30:00+0000') - those are unrelated fields in Instagram responses. The container ID is found in the response like: {'id': '17895695668004550'}. Containers expire after \~24 hours; recreate via INSTAGRAM\_CREATE\_MEDIA\_CONTAINER if stale. |
| `graph_api_version` | string |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

***

### `Instagram Delete Comment`

Integration name: **INSTAGRAM\_DELETE\_COMMENT**

Tool to delete a comment on Instagram media. Use when you need to remove a comment that was created by your Instagram Business or Creator Account. Note: You can only delete comments that your account created - you cannot delete other users' comments unless they are on your own media.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example               | Description                                                                                                                             |
| ------------------- | ------ | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_comment_id`     | string |     ✅    | `"17871247656396682"` | The unique identifier of the Instagram comment to delete. This must be a comment created by your Instagram Business or Creator Account. |
| `graph_api_version` | string |          | —                     | Instagram Graph API version to use. Defaults to v21.0.                                                                                  |

***

### `Instagram Delete Messenger Profile`

Integration name: **INSTAGRAM\_DELETE\_MESSENGER\_PROFILE**

Tool to delete messenger profile settings for an Instagram account. Use when you need to remove ice breakers, persistent menu, greeting messages, or other messaging configuration from the messenger profile.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example               | Description                                                                                                                                                                                                                                |
| ------------------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`            | array  |     ✅    | `["ice_breakers"]`    | Array of messenger profile properties to delete. Valid values: ice\_breakers, persistent\_menu, get\_started, greeting, account\_linking\_url, whitelisted\_domains. Only the specified fields will be removed from the messenger profile. |
| `ig_user_id`        | string |     ✅    | `"25162441193410545"` | Instagram Business Account ID whose messenger profile settings will be deleted.                                                                                                                                                            |
| `graph_api_version` | string |          | —                     | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                                                                                     |

***

### `Instagram Get Conversation`

Integration name: **INSTAGRAM\_GET\_CONVERSATION**

Get details about a specific Instagram DM conversation (participants, etc). Requires a Business or Creator account with Instagram messaging permissions; personal accounts will return permission errors. Newly sent/received messages may take a few seconds to appear in results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `conversation_id`   | string |     ✅    | —       | The unique identifier for the Instagram conversation thread. The thread must already exist; first-contact DMs cannot be initiated via the API — a manual first message must be sent before a conversation\_id is available.This is typically a base64-encoded string obtained from the list\_conversations or list\_all\_conversations actions. Must not be empty or contain only whitespace. |
| `graph_api_version` | string |          | —       | The Graph API version to use (e.g., 'v21.0'). Defaults to 'v21.0'.                                                                                                                                                                                                                                                                                                                            |

***

### `Instagram Get Ig Comment Replies`

Integration name: **INSTAGRAM\_GET\_IG\_COMMENT\_REPLIES**

Get replies to a specific Instagram comment. Returns a list of comment replies with details like text, username, timestamp, and like count. Use when you need to retrieve child comments (replies) for a specific parent comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example               | Description                                                                                                                                                                      |
| ------------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —                     | Cursor for forward pagination - get replies after this cursor                                                                                                                    |
| `limit`             | integer |          | —                     | Number of replies to return per page (max 100)                                                                                                                                   |
| `before`            | string  |          | —                     | Cursor for backward pagination - get replies before this cursor                                                                                                                  |
| `fields`            | string  |          | —                     | Comma-separated list of fields to return. Available fields: id, text, username, timestamp, like\_count, hidden, from, media, parent\_id, replies, legacy\_instagram\_comment\_id |
| `ig_comment_id`     | string  |     ✅    | `"18101534863756048"` | Instagram Comment ID to get replies for                                                                                                                                          |
| `graph_api_version` | string  |          | —                     | Graph API version to use                                                                                                                                                         |

***

### `Instagram Get Ig Media`

Integration name: **INSTAGRAM\_GET\_IG\_MEDIA**

Get a published Instagram Media object (photo, video, story, reel, or carousel). Use when you need to retrieve detailed information about a specific Instagram post including engagement metrics, caption, media URLs, and metadata. NOTE: This action is for published media only. For unpublished container IDs (from INSTAGRAM\_CREATE\_MEDIA\_CONTAINER), use INSTAGRAM\_GET\_POST\_STATUS to check status instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------- | ------ | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string |          | —                     | Comma-separated list of fields to return. Defaults to commonly useful fields including id, caption, media\_type, media\_url, permalink, timestamp, like\_count, comments\_count, and media\_product\_type. Supported fields: id, caption, comments\_count, is\_comment\_enabled, like\_count, media\_type, media\_url, media\_product\_type, owner, permalink, shortcode, thumbnail\_url, timestamp, username, children, comments. For nested fields use syntax like 'children{media\_url,media\_type}'. UNSUPPORTED FIELDS (will cause errors): tagged\_users, user\_tags, location, filter\_name, latitude, longitude, text. Note: Use 'caption' instead of 'text' for the media caption. INSIGHTS METRICS (use INSTAGRAM\_GET\_IG\_MEDIA\_INSIGHTS instead): plays, reach, saved, impressions, video\_views, engagement. To get media where a user is tagged, use INSTAGRAM\_GET\_IG\_USER\_TAGS instead. IMPORTANT: If you receive a MediaBuilder error, the ID is an unpublished container - use INSTAGRAM\_GET\_POST\_STATUS instead. |
| `ig_media_id`       | string |     ✅    | `"17858625294504375"` | The numeric ID of the Instagram media object from the Graph API (e.g., '17858625294504375'). IMPORTANT: This must be a numeric string, NOT an alphanumeric shortcode from instagram.com/p// URLs (e.g., 'DUTi4n4D9wg' is NOT valid). Obtain numeric IDs from INSTAGRAM\_GET\_IG\_USER\_MEDIA or similar endpoints. For unpublished container IDs, use INSTAGRAM\_GET\_POST\_STATUS instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `graph_api_version` | string |          | —                     | Instagram Graph API version to use                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

***

### `Instagram Get Ig Media Children`

Integration name: **INSTAGRAM\_GET\_IG\_MEDIA\_CHILDREN**

Tool to get media objects (images/videos) that are children of an Instagram carousel/album post. Use when you need to retrieve individual media items from a carousel album post. Note: Carousel children media do not support insights queries - for analytics, query metrics at the parent carousel level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                   |
| ------------------- | ------ | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string |          | —                     | Comma-separated list of fields to return for each child media item. Available fields: id, caption, media\_type, media\_url, username, timestamp, permalink, thumbnail\_url, ig\_id, owner, shortcode, is\_comment\_enabled, comments\_count, like\_count                                                                                      |
| `ig_media_id`       | string |     ✅    | `"17858625294504375"` | The ID of a CAROUSEL\_ALBUM media post (not a user ID). This must be a media ID from a carousel/album post, typically obtained by calling 'Get IG User Media' action first and filtering for media\_type='CAROUSEL\_ALBUM'. Media IDs are numeric strings (17 digits) that identify specific Instagram posts, distinct from user/account IDs. |
| `graph_api_version` | string |          | —                     | Instagram Graph API version to use                                                                                                                                                                                                                                                                                                            |

***

### `Instagram Get Ig Media Comments`

Integration name: **INSTAGRAM\_GET\_IG\_MEDIA\_COMMENTS**

Tool to retrieve comments on an Instagram media object. Use when you need to fetch comments from a specific Instagram post, photo, video, or carousel owned by the connected Business/Creator account. Supports cursor-based pagination for navigating through large comment lists. An empty data array in the response indicates the post has no comments and is not an error. Bulk-fetching across many media objects may trigger API rate limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------- | ------- | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —                     | Cursor for forward pagination. Use the cursor value from previous response's paging.cursors.after field                                                                                                                                                                                                                                                                            |
| `limit`             | integer |          | —                     | Number of comments to return per page (typically 50-100)                                                                                                                                                                                                                                                                                                                           |
| `before`            | string  |          | —                     | Cursor for backward pagination. Use the cursor value from previous response's paging.cursors.before field                                                                                                                                                                                                                                                                          |
| `fields`            | string  |          | —                     | Comma-separated list of fields to retrieve for each comment. Available fields: id, text, username, timestamp, like\_count, replies, from, hidden, media, parent\_id, user                                                                                                                                                                                                          |
| `ig_media_id`       | string  |     ✅    | `"17858625294504375"` | The ID of the Instagram media object (post/photo/video/album) to retrieve comments from. Must be a Media ID, not a User ID. Media IDs can be obtained from endpoints like GET /ig-user-id/media. Media IDs typically look like '17858625294504375'. The media must belong to the connected Business/Creator account; media from other accounts will return empty data or an error. |
| `graph_api_version` | string  |          | —                     | Instagram Graph API version to use                                                                                                                                                                                                                                                                                                                                                 |

***

### `Instagram Get Ig Media Insights`

Integration name: **INSTAGRAM\_GET\_IG\_MEDIA\_INSIGHTS**

Tool to get insights and metrics for Instagram media objects (photos, videos, reels, carousel albums). Use when you need to retrieve performance data such as views, reach, likes, comments, saves, and shares for specific media. Note: Insights data is only available for media published within the last 2 years, and the account must have at least 1,000 followers. Requires a Business or Creator account; personal Instagram profiles are not supported.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------- | ------ | :------: | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `metric`            | array  |     ✅    | `["views","reach","likes","comments","saved"]` | List of metrics to retrieve. Must be provided as an array of strings, e.g., \['reach', 'saved', 'likes']. COMMONLY SUPPORTED METRICS: views, reach, saved, likes, comments, shares, total\_interactions. REELS-SPECIFIC METRICS: ig\_reels\_video\_view\_total\_time, ig\_reels\_avg\_watch\_time, reels\_skip\_rate, facebook\_views, crossposted\_views. STORIES-SPECIFIC METRICS: replies, navigation, follows, profile\_visits. DEPRECATED METRICS (will be filtered out): 'impressions', 'plays', 'video\_views', 'clips\_replays\_count', 'ig\_reels\_aggregated\_all\_plays\_count' (use 'views' instead); 'taps\_forward', 'taps\_back', 'exits' (Story navigation metrics deprecated in API v18+, use 'navigation' instead). INVALID METRIC NAMES (will be rejected): 'clicks', 'engagement' are NOT valid metric names. |
| `period`            | string |          | —                                              | The time period for metric aggregation. For media insights, 'lifetime' is the default and typically the only available option. Note: You can only request metrics for one period type per request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `ig_media_id`       | string |     ✅    | `"18044673371703564"`                          | The ID of the Instagram media object (photo, video, reel, carousel album) for which to retrieve insights                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `graph_api_version` | string |          | —                                              | Instagram Graph API version to use                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

***

### `Instagram Get Ig User Content Publishing Limit`

Integration name: **INSTAGRAM\_GET\_IG\_USER\_CONTENT\_PUBLISHING\_LIMIT**

Get an Instagram Business Account's current content publishing usage. Use this to monitor quota usage before publishing; exceeding the daily cap blocks new posts until the quota resets (no partial failure — new publish calls are rejected until reset). IMPORTANT: This endpoint requires an IG User ID (Instagram Business Account ID), NOT an IGSID (Instagram Scoped ID). IGSID is only used for messaging-related endpoints. Content publishing endpoints require a proper IG User ID. Excessive polling of this endpoint may trigger Graph error 613 (rate limit); space calls several seconds apart.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example         | Description                                                                                                                                                                                                                                      |
| ------------------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `fields`            | string |          | `"quota_usage"` | Comma-separated list of fields to return. Available fields: quota\_usage, config. Defaults to 'quota\_usage,config'.                                                                                                                             |
| `ig_user_id`        | string |          | —               | Instagram Business Account ID (IG User ID). Must be a valid IG User ID, NOT an IGSID/scoped ID (used for messaging). Defaults to 'me' for current user. To get your IG User ID, use GET /{facebook-page-id}?fields=instagram\_business\_account. |
| `graph_api_version` | string |          | —               | Facebook Graph API version to use                                                                                                                                                                                                                |

***

### `Instagram Get Ig User Live Media`

Integration name: **INSTAGRAM\_GET\_IG\_USER\_LIVE\_MEDIA**

Get live media objects during an active Instagram broadcast. Returns the live video media ID and metadata when a live broadcast is in progress on an Instagram Business or Creator account. Use this to monitor active live streams and access real-time engagement data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                |
| ------------------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string |          | `"id"`  | Comma-separated list of fields to return for the live media object. Available fields: id, media\_type, media\_url, timestamp, permalink. Defaults to all available fields. |
| `ig_user_id`        | string |          | —       | Instagram Business or Creator Account ID (optional, defaults to 'me' for current user). Must be an account with an active live broadcast.                                  |
| `graph_api_version` | string |          | —       | Facebook Graph API version to use                                                                                                                                          |

***

### `Instagram Get Ig User Media`

Integration name: **INSTAGRAM\_GET\_IG\_USER\_MEDIA**

Get Instagram user's media collection (posts, photos, videos, reels, carousels). Use when you need to retrieve all media published by an Instagram Business or Creator account with support for pagination and time-based filtering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`                   | string  |          | —       | Cursor for forward pagination - retrieve media after this cursor Value comes from paging.cursors.after in the response; stopping at the first page silently omits older posts.                                                                                                                                                                                                                                                                                                                                                                                                            |
| `limit`                   | integer |          | —       | Number of media items to return per page (default: 25, max: 100)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `since`                   | integer |          | —       | Unix timestamp - filter results to media created after this time. If both 'since' and 'until' are provided, 'since' must be less than 'until'.                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `until`                   | integer |          | —       | Unix timestamp - filter results to media created before this time. If both 'since' and 'until' are provided, 'since' must be less than 'until'.                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `before`                  | string  |          | —       | Cursor for backward pagination - retrieve media before this cursor                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `fields`                  | string  |          | —       | Comma-separated list of fields to return. Available fields: id, caption, media\_type, media\_url, permalink, thumbnail\_url, timestamp, username, comments\_count, like\_count, ig\_id, is\_comment\_enabled, owner, shortcode, media\_product\_type, video\_title, children{media\_url,media\_type,thumbnail\_url} Reels appear as media\_type=VIDEO and media\_product\_type=REELS; filter both fields to identify reels. media\_url is a direct file URL; permalink is the user-facing share link. Optional fields like caption and like\_count may be null or absent in the response. |
| `ig_user_id`              | string  |     ✅    | `"me"`  | Instagram Business or Creator Account ID. Use 'me' for the authenticated user, or provide the numeric ID obtained from the Instagram Graph API (typically 17 digits, e.g., '17841405793187218'). If you provide a Facebook Page ID, it will be automatically converted to the Instagram Business Account ID.                                                                                                                                                                                                                                                                              |
| `graph_api_version`       | string  |          | —       | Instagram Graph API version to use (e.g., 'v21.0')                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `auto_resolve_fb_page_id` | boolean |          | —       | If true and the provided ig\_user\_id fails, automatically attempt to resolve it as a Facebook Page ID by retrieving the instagram\_business\_account field. Set to false to disable this behavior.                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Instagram Get Ig User Stories`

Integration name: **INSTAGRAM\_GET\_IG\_USER\_STORIES**

Get active story media objects for an Instagram Business or Creator account. Stories are retrieved via the /stories endpoint. Returns stories that are currently active within the 24-hour window. Use this to retrieve story content, metadata, and engagement metrics for monitoring or analytics purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                         |
| ------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for pagination to get the next page of results. Use the 'after' cursor from the previous response's paging object.                                                                                                                                                                                                           |
| `limit`             | integer |          | —       | Number of stories to return per page for pagination. If not specified, returns all active stories.                                                                                                                                                                                                                                  |
| `before`            | string  |          | —       | Cursor for pagination to get the previous page of results. Use the 'before' cursor from the previous response's paging object.                                                                                                                                                                                                      |
| `fields`            | string  |          | `"id"`  | Comma-separated list of fields to return for each story. Available fields: id, caption, comments\_count, ig\_id, is\_comment\_enabled, like\_count, media\_type, media\_url, owner, permalink, shortcode, thumbnail\_url, timestamp, username. If not specified, defaults to id, media\_type, media\_url, permalink, and timestamp. |
| `ig_user_id`        | string  |          | —       | Instagram Business or Creator Account ID (optional, defaults to 'me' for current user). Must be an account with active stories within the 24-hour window. Must be a numeric ID; usernames are not accepted.                                                                                                                         |
| `graph_api_version` | string  |          | —       | Facebook Graph API version to use                                                                                                                                                                                                                                                                                                   |

***

### `Instagram Get Ig User Tags`

Integration name: **INSTAGRAM\_GET\_IG\_USER\_TAGS**

Get Instagram media where the user has been tagged by other users. Use when you need to retrieve all media in which an Instagram Business or Creator account has been tagged, including tags in captions, comments, or on the media itself.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                             |
| ------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for forward pagination - retrieve media after this cursor                                                                                                                                                                                                                                                        |
| `limit`             | integer |          | —       | Number of tagged media items to return per page (default: 25, max: 100)                                                                                                                                                                                                                                                 |
| `before`            | string  |          | —       | Cursor for backward pagination - retrieve media before this cursor                                                                                                                                                                                                                                                      |
| `fields`            | string  |          | —       | Comma-separated list of fields to return. Available fields: id, caption, comments\_count, ig\_id, is\_comment\_enabled, like\_count, media\_product\_type, media\_type, media\_url, owner, permalink, shortcode, thumbnail\_url, timestamp, username, video\_title. If not specified, defaults to commonly used fields. |
| `ig_user_id`        | string  |     ✅    | `"me"`  | Instagram Business or Creator Account ID. Use 'me' for the authenticated user's account.                                                                                                                                                                                                                                |
| `graph_api_version` | string  |          | —       | Instagram Graph API version (e.g., 'v21.0'). If not specified, uses v21.0 as default.                                                                                                                                                                                                                                   |

***

### `Instagram Get Messenger Profile`

Integration name: **INSTAGRAM\_GET\_MESSENGER\_PROFILE**

Get the messenger profile settings for an Instagram account. Returns ice breakers and other messaging configuration. Use when you need to retrieve messaging settings, ice breaker questions, or messenger configuration for an Instagram Business account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                    |
| ------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`            | string |          | —       | Comma-separated list of messenger profile fields to retrieve. Available options: ice\_breakers, greeting, persistent\_menu, get\_started, account\_linking\_url, whitelisted\_domains. If not provided, all available fields will be returned. |
| `ig_user_id`        | string |     ✅    | —       | The Instagram User ID for which to retrieve messenger profile settings                                                                                                                                                                         |
| `graph_api_version` | string |          | —       | The Graph API version to use (e.g., 'v21.0'). Defaults to 'v21.0'.                                                                                                                                                                             |

***

### `Instagram Get Page Conversations`

Integration name: **INSTAGRAM\_GET\_PAGE\_CONVERSATIONS**

Get Instagram conversations for a Page connected to an Instagram Business account. Use platform=instagram parameter to filter for Instagram conversations only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example               | Description                                                                                                                                  |
| ------------------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —                     | Cursor for pagination to get the next page of results.                                                                                       |
| `limit`             | integer |          | —                     | Maximum number of conversations to return per page.                                                                                          |
| `page_id`           | string  |     ✅    | `"25162441193410545"` | Instagram user ID or page ID to get conversations for. This is the Instagram Business Account ID that can be obtained from the /me endpoint. |
| `platform`          | string  |          | `"instagram"`         | Platform to filter conversations. Set to 'instagram' to get Instagram conversations only.                                                    |
| `graph_api_version` | string  |          | —                     | The Graph API version to use (e.g., 'v21.0'). Defaults to 'v21.0'.                                                                           |

***

### `Instagram Get Post Comments`

Integration name: **INSTAGRAM\_GET\_POST\_COMMENTS**

DEPRECATED: Use INSTAGRAM\_GET\_IG\_MEDIA\_COMMENTS instead. Get comments on an Instagram post. Requires Instagram Business or Creator account. Returns empty `data` array (not an error) when no comments exist. Response data is nested under `data.data`; unwrap before processing. Timestamps are timezone-aware ISO 8601 strings; use UTC-based comparison.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                     |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for pagination - get comments after this cursor Value comes from `paging.cursors.after` in the response. |
| `limit`             | integer |          | —       | Number of comments to return (max 100)                                                                          |
| `ig_post_id`        | string  |     ✅    | —       | Instagram Post ID                                                                                               |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                          |

***

### `Instagram Get Post Insights`

Integration name: **INSTAGRAM\_GET\_POST\_INSIGHTS**

DEPRECATED: Use INSTAGRAM\_GET\_IG\_MEDIA\_INSIGHTS instead. Get Instagram post insights/analytics (impressions, reach, engagement, etc.). Requires a Business or Creator account; personal accounts cannot access insights. Metrics may be unavailable for several minutes after publishing; verify post status is FINISHED before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `metric`            | array  |          | —       | Metrics to retrieve for the media. If not provided and metric\_preset is not set, uses auto\_safe preset. Allowed metrics vary by media\_product\_type: IMAGE/CAROUSEL: reach, likes, comments, saved, shares. VIDEO: reach, plays, likes, comments, saved, shares. REELS: reach, likes, comments, saved, shares, total\_interactions, ig\_reels\_video\_view\_total\_time, ig\_reels\_avg\_watch\_time, clips\_replays\_count, ig\_reels\_aggregated\_all\_plays\_count, views, reels\_skip\_rate. Note: 'plays' may not work consistently for all reel types - use 'views' instead (plays is being deprecated in API v22). Stories: reach, replies, taps\_forward, taps\_back, exits. Note: 'engagement' and 'impressions' are NOT valid standalone metrics - use individual metrics like likes, comments, saved, shares instead. If a metric is unsupported for the post type, API returns 400 error. Some metrics (e.g., shares) may return null even for supported media types; handle missing values before computing ratios. |
| `ig_post_id`        | string |     ✅    | —       | Numeric Instagram Media ID from the Graph API (e.g., '17895695668004196'). This must be the numeric ID, NOT the shortcode from Instagram URLs (e.g., 'DT0ndbTgcLH' from instagram.com/p/DT0ndbTgcLH/ will NOT work). Use INSTAGRAM\_GET\_IG\_USER\_MEDIA to obtain valid numeric media IDs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `metric_preset`     | string |          | —       | Predefined metric sets for different media types to avoid API errors.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `graph_api_version` | string |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Instagram Get Post Status`

Integration name: **INSTAGRAM\_GET\_POST\_STATUS**

DEPRECATED: Use GetIgMedia instead. Check the processing status of a draft post container. Poll until status\_code='FINISHED' before calling INSTAGRAM\_CREATE\_POST; publishing early triggers OAuthException 9007 (HTTP 400). If status\_code='ERROR' or remains non-terminal after \~30 attempts, the container is permanently failed — recreate a new container. Poll every 3–5s with exponential backoff to avoid error 613/code 4/HTTP 429. For carousels, all child containers must reach FINISHED before publishing the parent.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `creation_id`       | string |     ✅    | —       | The media container ID returned from INSTAGRAM\_CREATE\_MEDIA\_CONTAINER action. This is a numeric string (e.g., '17843131380645284') that uniquely identifies the media container. Use this ID to check the container's publishing status before calling the publish endpoint. Sourced from the data.id field (not data.creation\_id) in the INSTAGRAM\_CREATE\_MEDIA\_CONTAINER response. Containers expire after \~24 hours; do not reuse an expired creation\_id. |
| `graph_api_version` | string |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                                                                                                                                |

***

### `Instagram Get User Info`

Integration name: **INSTAGRAM\_GET\_USER\_INFO**

Get Instagram Business Account info including profile details and statistics. IMPORTANT: Only works for Business/Creator accounts you manage through Facebook Business Manager. Cannot query arbitrary public Instagram accounts. Use "me" to query your own authenticated account. NOTE: followers\_count and follows\_count are ONLY available when querying your own profile with ig\_user\_id="me" - these fields return null for specific user IDs due to Instagram Graph API limitations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                |
| ------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_user_id`        | string |          | —       | Instagram Business Account ID. IMPORTANT: You can only query Business/Creator accounts that you manage through Facebook Business Manager. Use "me" to query your own authenticated account. To query other accounts you manage, provide their numeric Business Account ID. Arbitrary public accounts cannot be queried. If not provided, defaults to "me". |
| `graph_api_version` | string |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                     |

***

### `Instagram Get User Insights`

Integration name: **INSTAGRAM\_GET\_USER\_INSIGHTS**

Get Instagram account-level insights and analytics (profile views, reach, follower count, etc.). Requires a Business or Creator account; personal accounts are not supported. Returned timestamps are in UTC. metric\_type (time\_series or total\_value): When set to total\_value, the API returns a total\_value object instead of values. breakdown: Only applicable when metric\_type=total\_value and only for supported metrics. timeframe: Required for demographics-related metrics and overrides since/until for those metrics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `since`             | integer |          | —       | Start of time range (inclusive) as a Unix timestamp (seconds). Also accepts date strings (YYYY-MM-DD or ISO 8601 format) which will be converted to timestamps.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `until`             | integer |          | —       | End of time range (inclusive) as a Unix timestamp (seconds). Also accepts date strings (YYYY-MM-DD or ISO 8601 format) which will be converted to timestamps.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `metric`            | array   |          | —       | Metrics to retrieve for the user account. Accepts a list of metric names or a comma-separated string. Core metrics: reach, follower\_count, online\_followers. Engagement metrics: accounts\_engaged, total\_interactions, likes, comments, shares, saves, replies. Activity metrics: follows\_and\_unfollows, profile\_links\_taps, views. Demographics metrics (require timeframe parameter): engaged\_audience\_demographics, reached\_audience\_demographics, follower\_demographics. Threads metrics: threads\_likes, threads\_replies, reposts, quotes, threads\_followers, etc. If multiple metrics are provided, all must support the same period. DEPRECATED (January 2025, Graph API v21+): impressions, email\_contacts, phone\_call\_clicks, text\_message\_clicks, get\_directions\_clicks, profile\_views, and website\_clicks are no longer supported. |
| `period`            | string  |          | —       | Valid period values for Instagram user insights aggregation. Available periods: - day: Daily aggregation - week: Weekly aggregation - days\_28: 28-day aggregation - lifetime: Lifetime aggregation (for audience-related metrics)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `breakdown`         | string  |          | —       | Breakdown to use when metric\_type=total\_value. Allowed values: contact\_button\_type, follow\_type, media\_product\_type, age, city, country, gender.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `timeframe`         | string  |          | —       | Valid timeframe values for demographics-related Instagram user insights. Required for engaged\_audience\_demographics and reached\_audience\_demographics metrics. Overrides since/until parameters when specified. Note: As of 2025, Instagram deprecated the following timeframe values for demographics metrics: last\_14\_days, last\_30\_days, last\_90\_days, and prev\_month. Only this\_week and this\_month are currently supported by the Instagram Graph API. The follower\_demographics metric uses period=lifetime and does not support the timeframe parameter.                                                                                                                                                                                                                                                                                         |
| `ig_user_id`        | string  |          | —       | Instagram Business Account ID - must be a numeric ID (e.g., '17841400008460056'). Content API IDs with 'ca\_' prefix are not supported. Optional, defaults to current user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `metric_type`       | string  |          | —       | Aggregation type for results. Allowed values: time\_series, total\_value.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

***

### `Instagram Get User Media`

Integration name: **INSTAGRAM\_GET\_USER\_MEDIA**

DEPRECATED: Use INSTAGRAM\_GET\_IG\_USER\_MEDIA instead. Get Instagram user's media (posts, photos, videos). Only works for connected Business or Creator accounts; personal accounts return no data. Response data is nested under `data.data`; unwrap before processing. Items mix images, videos, carousels, and reels — filter by `media_type` and `media_product_type`. Use `media_url` for file download, `permalink` for share links. Fields like `caption`, `like_count` may be null. Timestamps are UTC ISO 8601. HTTP 429 with `Retry-After` header indicates rate limiting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                         |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for pagination - get media after this cursor Chain calls using `paging.cursors.after` from the response to paginate; set an upper bound (e.g., \~300 posts) to avoid unbounded loops.                                                        |
| `limit`             | integer |          | —       | Number of media items to return (max 100) A single call may not return all media; paginate via `after` for complete results.                                                                                                                        |
| `ig_user_id`        | string  |          | —       | Numeric Instagram Business Account ID (NOT username). Must be a numeric ID like '17841405793187218'. Omit or leave empty to get the current authenticated user's media. To find an account's numeric ID, use the INSTAGRAM\_GET\_USER\_INFO action. |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                                                              |

***

### `Instagram List All Conversations`

Integration name: **INSTAGRAM\_LIST\_ALL\_CONVERSATIONS**

List all Instagram DM conversations for the authenticated user. Requires a Business/Creator account with messaging permissions; personal accounts return empty results. Response conversations are nested under `data.data` — accessing top-level `data` as the final list returns zero items. An empty `data` list is a valid non-error outcome meaning no conversations exist in scope.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                          |
| ------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for pagination Obtain from `paging.cursors.after` in the response; absence of `paging.cursors.after` or `paging.next` signals end-of-results. |
| `limit`             | integer |          | —       | Maximum number of conversations to return.                                                                                                           |
| `ig_user_id`        | string  |          | —       | Instagram Business Account ID (optional for /me/conversations)                                                                                       |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                                                               |

***

### `Instagram List All Messages`

Integration name: **INSTAGRAM\_LIST\_ALL\_MESSAGES**

List all messages from a specific Instagram DM conversation. Requires a Business or Creator account with messaging permissions; personal accounts return empty results. Response data is nested under data.data (double-wrapped); attachment-only messages may have empty text fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                   |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`             | string  |          | —       | Cursor for paginationPass paging.cursors.after from the previous response to fetch the next page. Stop when paging.cursors.after or paging.next is absent.                                                    |
| `limit`             | integer |          | —       | Maximum number of messages to return.                                                                                                                                                                         |
| `conversation_id`   | string  |     ✅    | —       | Unique identifier for the Instagram conversation. Obtain this by calling the INSTAGRAM\_LIST\_ALL\_CONVERSATIONS action, which returns conversation IDs in the format 'aWdfZAG06...' (base64-encoded string). |
| `graph_api_version` | string  |          | —       | The Facebook Graph API version to use for the request.                                                                                                                                                        |

***

### `Instagram Mark Seen`

Integration name: **INSTAGRAM\_MARK\_SEEN**

Mark Instagram DM messages as read/seen for a specific user. Sends a 'mark\_seen' sender action to indicate messages from the specified recipient have been read. Marking as seen is visible to the other party and changes inbox read state — use with explicit user approval in automated or bulk flows. IMPORTANT LIMITATIONS: - The sender\_action API feature may have limited support on Instagram - The recipient must have an active 24-hour messaging window open - Requires instagram\_manage\_messages permission - Only works with Instagram Business or Creator accounts If this action fails with a 500 error, it may indicate that the sender\_action feature is not supported for your Instagram account or the specific recipient.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                             |
| ------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_user_id`        | string |          | —       | Instagram Business Account ID. Optional - when not provided, the /me/messages endpoint is used instead of /{ig\_user\_id}/messages.                                                                                                                                                                                                                     |
| `recipient_id`      | string |     ✅    | —       | Instagram-Scoped User ID (IGSID) of the recipient. This is a numeric string obtained from conversation participants (e.g., '17841479358498320'). The recipient must have an existing conversation with your Instagram Business/Creator account. In multi-participant threads, use the individual participant's IGSID, not a group or thread identifier. |
| `graph_api_version` | string |          | —       | Instagram Graph API version to use (e.g., 'v21.0').                                                                                                                                                                                                                                                                                                     |

***

### `Instagram Post Ig Comment Replies`

Integration name: **INSTAGRAM\_POST\_IG\_COMMENT\_REPLIES**

Tool to create a reply to an Instagram comment. Use when you need to reply to a specific comment on an Instagram post owned by a Business or Creator account. The reply must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                          | Description                                                                                                                                                                |
| ------------------- | ------ | :------: | ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`           | string |     ✅    | `"This is a test reply via Instagram Graph API"` | The text content of the reply to be posted. Maximum length: 300 characters. Maximum 4 hashtags allowed. Maximum 1 URL allowed. Cannot consist entirely of capital letters. |
| `ig_comment_id`     | string |     ✅    | `"18542901907038144"`                            | The unique identifier of the Instagram comment to which you want to reply. This is the ID of the parent comment that will receive the reply.                               |
| `graph_api_version` | string |          | —                                                | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                     |

***

### `Instagram Post Ig Media Comments`

Integration name: **INSTAGRAM\_POST\_IG\_MEDIA\_COMMENTS**

Tool to create a comment on an Instagram media object. Use when you need to post a comment on a specific Instagram post, photo, video, or carousel. The comment must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                   | Description                                                                                                                                                                                      |
| ------------------- | ------ | :------: | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `message`           | string |     ✅    | `"This is a great post!"` | The text content of the comment to be posted on the media object. Maximum length: 300 characters. Maximum 4 hashtags allowed. Maximum 1 URL allowed. Cannot consist entirely of capital letters. |
| `ig_media_id`       | string |     ✅    | `"17858625294504375"`     | The unique identifier of the Instagram media object where the comment will be posted. This is the ID of the Instagram post, photo, video, or carousel.                                           |
| `graph_api_version` | string |          | —                         | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                                           |

***

### `Instagram Post Ig User Media`

Integration name: **INSTAGRAM\_POST\_IG\_USER\_MEDIA**

Tool to create a media container for Instagram posts. Use this to create a container for images, videos, Reels, or carousels. This is the first step in Instagram's two-step publishing process - after creating the container, use the media\_publish endpoint to publish it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `caption`           | string  |          | `"Testing Instagram API"`                   | Caption text for the post. Use HTML URL encoding for hashtags (# becomes %23).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `children`          | array   |          | `["17842618866645284","17842618866645285"]` | For carousel posts - array of container IDs (2-10 items) from previously created media containers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `cover_url`         | string  |          | `"https://example.com/cover.jpg"`           | For Reels - MUST be a valid HTTP/HTTPS URL pointing to a custom cover image. Must start with 'http\://' or 'https\://'. IMPORTANT: URLs with query parameters (like signed URLs) are NOT supported by Instagram. Use direct, publicly accessible URLs without query strings. If both cover\_url and thumb\_offset provided, cover\_url takes precedence.                                                                                                                                                                                                                                                                                                           |
| `image_url`         | string  |          | `"https://example.com/image.jpg"`           | MUST be a valid HTTP/HTTPS URL pointing to a publicly accessible JPEG image file. Must start with 'http\://' or 'https\://' (e.g., '<https://example.com/image.jpg>'). IMPORTANT: URLs with query parameters (like AWS S3 signed URLs with authentication tokens) are NOT supported by Instagram and will be rejected. Use direct, publicly accessible URLs without query strings. DO NOT pass image descriptions or text - only actual URLs are accepted. At least one of: image\_url, image\_file, video\_url, video\_file, or children must be provided.                                                                                                        |
| `user_tags`         | array   |          | `[{"x":0.5,"y":0.5,"username":"testuser"}]` | Array of user tag objects for tagging public Instagram accounts. For images: x and y coordinates (0.0-1.0, from top-left) are REQUIRED. For Reels: only username is allowed; x/y coordinates CANNOT be used.                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `video_url`         | string  |          | `"https://example.com/video.mp4"`           | MUST be a valid HTTP/HTTPS URL pointing to a publicly accessible video or Reel MP4 file. Must start with 'http\://' or 'https\://' (e.g., '<https://example.com/video.mp4>'). IMPORTANT: URLs with query parameters (like AWS S3 signed URLs with authentication tokens) are NOT supported by Instagram and will be rejected. Use direct, publicly accessible URLs without query strings. DO NOT pass video descriptions or text - only actual URLs are accepted. At least one of: image\_url, image\_file, video\_url, video\_file, or children must be provided. When using video\_url alone, media\_type will be automatically set to 'REELS' if not specified. |
| `audio_name`        | string  |          | `"My Custom Audio"`                         | For Reels - custom name for the audio track (default: 'Original Audio').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `ig_user_id`        | string  |     ✅    | `"17841405309211844"`                       | The unique identifier of the Instagram Business account (IG User ID) to create media for. This must be an Instagram Business account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `image_file`        | object  |          | —                                           | Local image file to upload. FileUploadable object where 'name' is the filename. The file will be uploaded to a temporary public URL for Instagram to fetch. At least one of: image\_url, image\_file, video\_url, video\_file, or children must be provided.                                                                                                                                                                                                                                                                                                                                                                                                       |
| `media_type`        | string  |          | `"REELS"`                                   | Media type for the container. Valid values: 'REELS' (for video content), 'CAROUSEL' (for carousel posts with children), 'STORIES' (for story posts). When posting video content with video\_url alone (no image\_url), this will automatically default to 'REELS' if not specified. Note: 'VIDEO' is deprecated and no longer supported - use 'REELS' for all video content.                                                                                                                                                                                                                                                                                       |
| `video_file`        | object  |          | —                                           | Local video file to upload. FileUploadable object where 'name' is the filename. The file will be uploaded to a temporary public URL for Instagram to fetch. At least one of: image\_url, image\_file, video\_url, video\_file, or children must be provided.                                                                                                                                                                                                                                                                                                                                                                                                       |
| `location_id`       | string  |          | `"123456789"`                               | Facebook Page ID of a location to tag. The Page must have latitude/longitude data.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `thumb_offset`      | integer |          | `1000`                                      | For videos/Reels - millisecond offset for thumbnail frame (default: 0).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `collaborators`     | array   |          | `["username1","username2"]`                 | Array of up to 3 public Instagram usernames to tag as collaborators. Supported for images, videos, and parent carousel containers (not Stories or carousel child items). Cannot be used when is\_carousel\_item=true - collaborators must be set on the parent carousel container instead.                                                                                                                                                                                                                                                                                                                                                                         |
| `share_to_feed`     | boolean |          | —                                           | For Reels - whether to share to both Feed and Reels tabs. Only applicable when media\_type is REELS.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `is_carousel_item`  | boolean |          | —                                           | Indicates this container is part of a carousel. For carousels: create 2-10 individual containers, then create a parent carousel container with their IDs. When true, collaborators cannot be set on this child item - they must be set on the parent carousel container instead.                                                                                                                                                                                                                                                                                                                                                                                   |
| `graph_api_version` | string  |          | —                                           | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Instagram Post Ig User Media Publish`

Integration name: **INSTAGRAM\_POST\_IG\_USER\_MEDIA\_PUBLISH**

Tool to publish a media container to an Instagram Business account. This action automatically waits for the container to finish processing before publishing. Rate limited to 25 API-published posts per 24-hour moving window. The publishing process: 1. First, create a media container using INSTAGRAM\_CREATE\_MEDIA\_CONTAINER 2. Call this action with the creation\_id - it will automatically poll for FINISHED status 3. Once ready, the media is published and the published media ID is returned For videos/reels, processing may take 30-120 seconds. Images are typically instant.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------------- | ------- | :------: | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_user_id`            | string  |     ✅    | `"17841405309211844"` | Instagram Business Account ID (numeric string) or 'me' for the authenticated user. This ID is returned by INSTAGRAM\_GET\_USER\_INFO or similar actions. Do NOT pass bank account numbers, connection IDs, or other non-Instagram identifiers.                                                                                                                                                                                                                                                                                                                                                                    |
| `creation_id`           | string  |     ✅    | `"17842618866645284"` | Container ID returned by INSTAGRAM\_CREATE\_MEDIA\_CONTAINER (numeric string). This is NOT the same as ig\_user\_id. Do NOT pass bank account numbers or other non-Instagram identifiers.                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `max_wait_seconds`      | integer |          | —                     | Maximum time in seconds to wait for the container to reach FINISHED status before publishing. Images are typically ready instantly, but videos/reels commonly take 30-120 seconds to process. WARNING: Setting this to 0 skips all status checks and attempts immediate publish, which will fail with error 9007 if the container is still processing (common for videos). Only use 0 if you are certain the container is already in FINISHED status (rare - typically only after manually checking via INSTAGRAM\_GET\_POST\_STATUS). For videos/reels, use at least 60 seconds (default) or higher (up to 300). |
| `graph_api_version`     | string  |          | —                     | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `poll_interval_seconds` | number  |          | —                     | Interval in seconds between status checks while waiting for the container to be ready. Default is 3 seconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Instagram Post Ig User Mentions`

Integration name: **INSTAGRAM\_POST\_IG\_USER\_MENTIONS**

Tool to reply to a mention of your Instagram Business or Creator account. Use when you need to respond to comments or media captions where your account has been @mentioned by another Instagram user. This creates a comment on the media or comment containing the mention.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                          | Description                                                                                                                                                                          |
| ------------------- | ------ | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `message`           | string |     ✅    | `"Thank you for mentioning us!"` | The text content of your reply to the mention. This creates a comment on the media or comment where you were mentioned.                                                              |
| `media_id`          | string |     ✅    | `"17867229126432217"`            | The ID of the Instagram media object (post, photo, video, or carousel) where your account was mentioned. This is the media containing the original mention.                          |
| `comment_id`        | string |          | `"17862345678901234"`            | Optional ID of a specific comment where you were mentioned. If provided, your reply will be directed to that comment. If not provided, the reply will be posted on the media itself. |
| `ig_user_id`        | string |     ✅    | `"25162441193410545"`            | The unique identifier of the Instagram Business or Creator account that was mentioned. This is the ID of your Instagram account that received the mention.                           |
| `graph_api_version` | string |          | —                                | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                               |

***

### `Instagram Reply To Comment`

Integration name: **INSTAGRAM\_REPLY\_TO\_COMMENT**

DEPRECATED: Use INSTAGRAM\_POST\_IG\_COMMENT\_REPLIES instead. Reply to a comment on Instagram media. Only usable on comments belonging to media owned by the authenticated account. Creates a public, irreversible reply; invoke only with explicit user confirmation, not for bulk or speculative use.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                             |
| ------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`           | string |     ✅    | —       | Reply message text Must comply with Instagram content policies; overly long or policy-violating text may be rejected.                                   |
| `ig_comment_id`     | string |     ✅    | —       | Instagram Comment ID to reply to Must belong to media owned by the authenticated Instagram account; replies to other accounts' media are not permitted. |
| `graph_api_version` | string |          | —       | The Facebook Graph API version to use for the request.                                                                                                  |

***

### `Instagram Send Image`

Send an image via Instagram DM to a specific user. Each send modifies inbox state; avoid bulk or automated sends without explicit user approval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `image_url`         | string |     ✅    | —       | Publicly accessible URL of the image to send. Must be a direct link to an image file (JPEG, PNG, or GIF) that is reachable over HTTPS. The URL must not require authentication to access.                                                                                                                                                                                    |
| `ig_user_id`        | string |          | —       | Instagram Business Account ID. Must be a numeric ID string (e.g., '17841400123456789'), not a username. Optional when using /me/messages endpoint.                                                                                                                                                                                                                           |
| `recipient_id`      | string |     ✅    | —       | Recipient's IGSID (Instagram Scoped User ID). Must be a numeric ID string (e.g., '17841479358498320'), NOT a username. IGSIDs are obtained from conversations or webhook events when users message your business first. You can only send messages to users who have initiated a conversation with your business within the past 24 hours (or 7 days with HUMAN\_AGENT tag). |
| `graph_api_version` | string |          | —       | Instagram Graph API version to use (e.g., 'v21.0').                                                                                                                                                                                                                                                                                                                          |

***

### `Instagram Send Text Message`

Integration name: **INSTAGRAM\_SEND\_TEXT\_MESSAGE**

Send a text message to an Instagram user via DM in an existing conversation. Cannot initiate new DM threads — a prior conversation must exist. Requires an Instagram Business or Creator account with messaging permissions. Fails with error\_subcode 2534022 if outside the messaging window; do not retry these failures.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example | Description                                                                                                                                                                                           |
| --------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`                | string |     ✅    | —       | Message text to send                                                                                                                                                                                  |
| `ig_user_id`          | string |          | —       | Instagram Business Account ID (optional when using /me/messages)                                                                                                                                      |
| `recipient_id`        | string |     ✅    | —       | Recipient PSID (Instagram-scoped ID) Must be a real PSID obtained from INSTAGRAM\_LIST\_ALL\_CONVERSATIONS or INSTAGRAM\_LIST\_ALL\_MESSAGES — usernames or fabricated IDs cause HTTP 400 (code 100). |
| `graph_api_version`   | string |          | —       | Instagram Graph API version                                                                                                                                                                           |
| `reply_to_message_id` | string |          | —       | Message ID (mid) to reply to. This creates a visual reply link to the original message in the conversation. The mid can be obtained from webhook events or previous API responses.                    |

***

### `Instagram Update Messenger Profile`

Integration name: **INSTAGRAM\_UPDATE\_MESSENGER\_PROFILE**

Tool to update the messenger profile settings for an Instagram account. Use when you need to configure ice breakers and messaging options. Ice breakers are suggested questions that help users start conversations with your Instagram Business account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                                                      | Description                                                                                                                                                                      |
| ------------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ig_user_id`        | string |     ✅    | `"25162441193410545"`                                                                                                                        | Instagram Business Account ID whose messenger profile will be updated.                                                                                                           |
| `ice_breakers`      | array  |     ✅    | `[{"payload":"HOURS_PAYLOAD","question":"What are your business hours?"},{"payload":"CONTACT_PAYLOAD","question":"How can I contact you?"}]` | Array of ice breaker objects to configure for the messenger profile. Ice breakers provide suggested questions to help users start conversations. Maximum 4 ice breakers allowed. |
| `graph_api_version` | string |          | —                                                                                                                                            | Instagram Graph API version to use. Defaults to v21.0.                                                                                                                           |

***


# Intercom

Your Toolhouse AI Worker can connect to Intercom using 133 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](https://toolhouse.app/auth-connections?authkit_slugs=intercom).

## Tools (133)

### `Intercom Add Subscription To A Contact`

Integration name: **INTERCOM\_ADD\_SUBSCRIPTION\_TO\_A\_CONTACT**

You can add a specific subscription to a contact. In Intercom, we have two different subscription types based on user consent - opt-out and opt-in: 1.Attaching a contact to an opt-out subscription type will opt that user out from receiving messages related to that subscription type. 2.Attaching a contact to an opt-in subscription type will opt that user in to receiving messages related to that subscription type. This will return a subscription type model for the subscription type that was added to the contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description                                                           |
| -------------- | ------ | :------: | ------- | --------------------------------------------------------------------- |
| `id`           | string |     ✅    | —       | The unique identifier for the subscription which is given by Intercom |
| `contact_id`   | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom      |
| `consent_type` | string |     ✅    | —       | The consent\_type of a subscription, opt\_out or opt\_in.             |

***

### `Intercom Add Tag To Contact`

Integration name: **INTERCOM\_ADD\_TAG\_TO\_CONTACT**

Tool to add a tag to a contact in Intercom. Use when you need to attach or add a specific tag to a contact for categorization or tracking purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                      |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------------------------- |
| `id`         | string |     ✅    | `"7522907"`                  | The unique identifier for the tag which is given by Intercom     |
| `contact_id` | string |     ✅    | `"63a07ddf05a32042dffac965"` | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Archive Contact`

Integration name: **INTERCOM\_ARCHIVE\_CONTACT**

Tool to archive a single contact in Intercom. Use when you need to archive a contact by their ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                      |
| ------------ | ------ | :------: | ---------------------------- | ------------------------------------------------ |
| `contact_id` | string |     ✅    | `"67eedf68fbd061d9f4fee259"` | The unique identifier for the contact to archive |

***

### `Intercom Assign Conversation`

Integration name: **INTERCOM\_ASSIGN\_CONVERSATION**

Assigns a conversation to a specific admin or team in Intercom. Mutates live conversation state; confirm intent before bulk-assigning multiple conversations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example       | Description                                                                                  |
| ----------------- | ------ | :------: | ------------- | -------------------------------------------------------------------------------------------- |
| `team_id`         | string |          | `"123456"`    | ID of the team to assign the conversation to. Either admin\_id or team\_id must be provided  |
| `admin_id`        | string |          | `"7222173"`   | ID of the admin to assign the conversation to. Either admin\_id or team\_id must be provided |
| `assignee_id`     | string |          | `"7222173"`   | ID of the admin making the assignment (who is performing this action)                        |
| `conversation_id` | string |     ✅    | `"123456789"` | The ID of the conversation to assign                                                         |

***

### `Intercom Attach Contact To Company`

Integration name: **INTERCOM\_ATTACH\_CONTACT\_TO\_COMPANY**

Tool to attach a contact to a company in Intercom. Use when you need to associate a contact with a company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                      |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------------------------- |
| `company_id` | string |     ✅    | `"58a430d35458202d41b1e65b"` | The unique identifier for the company which is given by Intercom |
| `contact_id` | string |     ✅    | `"63a07ddf05a32042dffac965"` | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Attach Contact To Conversation`

Integration name: **INTERCOM\_ATTACH\_CONTACT\_TO\_CONVERSATION**

Tool to attach a contact participant to a conversation on behalf of admin or contact. Use when you need to add a new participant to an existing conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example             | Description                                                                                                    |
| ----------------- | ------ | :------: | ------------------- | -------------------------------------------------------------------------------------------------------------- |
| `admin_id`        | string |     ✅    | `"7222173"`         | The id of the admin who is adding the new participant                                                          |
| `customer`        | object |     ✅    | —                   | Object containing contact identifier. Must include at least one of: id, intercom\_user\_id, user\_id, or email |
| `conversation_id` | string |     ✅    | `"215472278493860"` | The identifier for the conversation as given by Intercom                                                       |

***

### `Intercom Attach Tag To Conversation`

Integration name: **INTERCOM\_ATTACH\_TAG\_TO\_CONVERSATION**

Tool to add a tag to a specific conversation in Intercom. Use when you need to attach or tag a conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example             | Description                                                    |
| ----------------- | ------ | :------: | ------------------- | -------------------------------------------------------------- |
| `id`              | string |     ✅    | `"10933556"`        | The unique identifier for the tag which is given by Intercom   |
| `admin_id`        | string |     ✅    | `"8226931"`         | The unique identifier for the admin which is given by Intercom |
| `conversation_id` | string |     ✅    | `"215468802130392"` | The unique identifier for the conversation                     |

***

### `Intercom Attach Tag To Ticket`

Integration name: **INTERCOM\_ATTACH\_TAG\_TO\_TICKET**

Tool to add a tag to a ticket in Intercom. Use when you need to attach or add a specific tag to a ticket for categorization or tracking purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example             | Description                                                     |
| ----------- | ------ | :------: | ------------------- | --------------------------------------------------------------- |
| `id`        | string |     ✅    | `"12874108"`        | The unique identifier for the tag which is given by Intercom    |
| `admin_id`  | string |     ✅    | `"8226930"`         | The unique identifier for the admin which is given by Intercom  |
| `ticket_id` | string |     ✅    | `"215468802130392"` | The unique identifier for the ticket which is given by Intercom |

***

### `Intercom Block Contact`

Integration name: **INTERCOM\_BLOCK\_CONTACT**

Tool to block a single contact in Intercom. Use when you need to block a contact, which will also archive their conversations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                    |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------- |
| `contact_id` | string |     ✅    | `"689995fa0cd4fe5d1f7458be"` | The unique identifier for the contact to block |

***

### `Intercom Cancel Data Export`

Integration name: **INTERCOM\_CANCEL\_DATA\_EXPORT**

Tool to cancel an active content data export job. Use when you need to terminate an ongoing export and update its status to 'canceled'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example              | Description                                         |
| ---------------- | ------ | :------: | -------------------- | --------------------------------------------------- |
| `job_identifier` | string |     ✅    | `"v134nyc2bku9hj91"` | The unique identifier for the export job to cancel. |

***

### `Intercom Close Conversation`

Integration name: **INTERCOM\_CLOSE\_CONVERSATION**

Closes a conversation in Intercom, marking it as resolved. Requires explicit user confirmation before calling; closing is irreversible without a separate reopen action. Send any reply via INTERCOM\_REPLY\_TO\_CONVERSATION before calling this tool — parallel execution on the same conversation causes conflicts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                  | Description                                                                                                                                                                                                  |
| ----------------- | ------ | :------: | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `body`            | string |          | `"This issue has been resolved. Feel free to reach out if you need further assistance!"` | Optional message to send when closing the conversation                                                                                                                                                       |
| `admin_id`        | string |     ✅    | `"7222173"`                                                                              | ID of the admin closing the conversation                                                                                                                                                                     |
| `conversation_id` | string |     ✅    | `"123456789"`                                                                            | The ID of the conversation to close Conversation must be in open state; verify state via INTERCOM\_GET\_CONVERSATION first, as closing a snoozed or already-closed conversation produces unexpected results. |

***

### `Intercom Create A Collection`

Integration name: **INTERCOM\_CREATE\_A\_COLLECTION**

You can create a new collection by making a POST request to `https://api.intercom.io/help_center/collections.`

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                      |
| ------------------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                     | string  |     ✅    | —       | The name of the collection. For multilingual collections, this will be the name of the default language"s content.               |
| `parent_id`                                | string  |          | —       | The id of the parent collection. If `null` then it will be created as the first level collection.                                |
| `description`                              | string  |          | —       | The description of the collection. For multilingual collections, this will be the description of the default language"s content. |
| `help_center_id`                           | integer |          | —       | The id of the help center where the collection will be created. If `null` then it will be created in the default help center.    |
| `translated__content__type`                | string  |          | —       | The type of object - group\_translated\_content.                                                                                 |
| `translated__content__ar__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ar__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__bg__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__bg__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__bs__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__bs__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ca__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ca__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__cs__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__cs__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__da__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__da__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__de__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__de__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__el__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__el__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__en__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__en__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__es__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__es__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__et__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__et__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__fi__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__fi__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__fr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__fr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__he__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__he__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__hr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__hr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__hu__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__hu__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__id__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__id__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__it__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__it__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ja__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ja__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ko__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ko__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__lt__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__lt__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__lv__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__lv__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__mn__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__mn__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__nb__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__nb__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__nl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__nl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pt__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pt__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ro__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ro__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ru__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ru__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sv__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sv__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__tr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__tr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__vi__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__vi__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pt__BR__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pt__BR__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__zh__CN__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__zh__CN__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__zh__TW__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__zh__TW__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ar__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__bg__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__bs__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ca__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__cs__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__da__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__de__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__el__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__en__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__es__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__et__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__fi__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__fr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__he__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__hr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__hu__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__id__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__it__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ja__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ko__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__lt__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__lv__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__mn__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__nb__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__nl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pt__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ro__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ru__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sv__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__tr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__vi__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pt__BR__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__zh__CN__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__zh__TW__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |

***

### `Intercom Create An Article`

Integration name: **INTERCOM\_CREATE\_AN\_ARTICLE**

You can create a new article by making a POST request to `https://api.intercom.io/articles`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                                                                             |
| ------------------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `body`                                     | string  |          | —       | The content of the article. For multilingual articles, this will be the body of the default language"s content.                                                                         |
| `state`                                    | string  |          | —       | Whether the article will be `published` or will be a `draft`. Defaults to draft. For multilingual articles, this will be the state of the default language"s content.                   |
| `title`                                    | string  |     ✅    | —       | The title of the article.For multilingual articles, this will be the title of the default language"s content.                                                                           |
| `author_id`                                | integer |     ✅    | —       | The id of the author of the article. For multilingual articles, this will be the id of the author of the default language"s content. Must be a teammate on the help center"s workspace. |
| `parent_id`                                | integer |          | —       | The id of the article"s parent collection or section. An article without this field stands alone.                                                                                       |
| `description`                              | string  |          | —       | The description of the article. For multilingual articles, this will be the description of the default language"s content.                                                              |
| `parent_type`                              | string  |          | —       | The type of parent, which can either be a `collection` or `section`.                                                                                                                    |
| `translated__content__type`                | string  |          | —       | The type of object - article\_translated\_content.                                                                                                                                      |
| `translated__content__ar__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__bg__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__bs__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ca__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__cs__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__da__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__de__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__el__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__en__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__es__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__et__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__fi__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__fr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__he__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__hr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__hu__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__id__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__it__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ja__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ko__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__lt__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__lv__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__mn__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__nb__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__nl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pt__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ro__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ru__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sv__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__tr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__vi__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ar__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ar__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__bg__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__bg__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__bs__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__bs__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ca__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ca__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__cs__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__cs__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__da__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__da__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__de__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__de__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__el__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__el__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__en__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__en__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__es__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__es__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__et__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__et__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__fi__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__fi__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__fr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__fr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__he__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__he__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__hr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__hr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__hu__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__hu__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__id__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__id__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__it__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__it__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ja__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ja__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ko__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ko__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__lt__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__lt__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__lv__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__lv__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__mn__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__mn__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__nb__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__nb__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__nl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__nl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pt__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pt__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ro__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ro__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ru__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ru__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sv__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sv__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__tr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__tr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__vi__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__vi__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ar__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ar__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__bg__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__bg__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__bs__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__bs__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ca__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ca__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__cs__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__cs__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__da__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__da__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__de__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__de__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__el__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__el__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__en__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__en__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__es__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__es__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__et__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__et__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__fi__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__fi__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__fr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__fr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__he__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__he__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__hr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__hr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__hu__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__hu__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__id__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__id__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__it__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__it__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ja__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ja__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ko__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ko__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__lt__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__lt__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__lv__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__lv__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__mn__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__mn__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__nb__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__nb__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__nl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__nl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pt__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pt__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ro__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ro__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ru__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ru__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sv__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sv__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__tr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__tr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__vi__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__vi__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pt__BR__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__zh__CN__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__zh__TW__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pt__BR__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pt__BR__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__zh__CN__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__zh__CN__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__zh__TW__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__zh__TW__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pt__BR__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pt__BR__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__zh__CN__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__zh__CN__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__zh__TW__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__zh__TW__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ar__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__bg__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__bs__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ca__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__cs__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__da__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__de__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__el__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__en__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__es__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__et__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__fi__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__fr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__he__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__hr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__hu__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__id__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__it__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ja__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ko__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__lt__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__lv__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__mn__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__nb__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__nl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pt__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ro__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ru__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sv__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__tr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__vi__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ar__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ar__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ar__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__bg__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__bg__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__bg__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__bs__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__bs__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__bs__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ca__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ca__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ca__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__cs__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__cs__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__cs__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__da__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__da__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__da__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__de__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__de__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__de__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__el__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__el__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__el__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__en__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__en__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__en__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__es__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__es__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__es__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__et__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__et__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__et__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__fi__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__fi__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__fi__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__fr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__fr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__fr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__he__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__he__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__he__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__hr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__hr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__hr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__hu__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__hu__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__hu__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__id__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__id__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__id__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__it__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__it__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__it__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ja__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ja__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ja__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ko__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ko__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ko__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__lt__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__lt__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__lt__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__lv__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__lv__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__lv__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__mn__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__mn__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__mn__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__nb__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__nb__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__nb__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__nl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__nl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__nl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pt__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pt__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pt__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ro__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ro__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ro__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ru__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ru__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ru__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sv__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sv__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sv__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__tr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__tr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__tr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__vi__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__vi__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__vi__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pt__BR__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__zh__CN__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__zh__TW__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pt__BR__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pt__BR__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pt__BR__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__zh__CN__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__zh__CN__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__zh__CN__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__zh__TW__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__zh__TW__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__zh__TW__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |

***

### `Intercom Create A Note`

Integration name: **INTERCOM\_CREATE\_A\_NOTE**

You can add a note to a single contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                               |
| ------------ | ------ | :------: | ------- | ----------------------------------------- |
| `id`         | string |     ✅    | —       | The unique identifier of a given contact. |
| `body`       | string |     ✅    | —       | The text of the note.                     |
| `admin_id`   | string |          | —       | The unique identifier of a given admin.   |
| `contact_id` | string |          | —       | The unique identifier of a given contact. |

***

### `Intercom Create Contact`

Integration name: **INTERCOM\_CREATE\_CONTACT**

Tool to create a new contact in Intercom workspace. Use when you need to add a user or lead to Intercom. At least one identifier (email, external\_id, or role) must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                            | Description                                                                                                          |
| -------------------------- | ------- | :------: | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `name`                     | string  |          | `"John Doe"`                       | Contact's full name                                                                                                  |
| `role`                     | string  |          | `"user"`                           | The contact's role designation (user/lead). At least one identifier (email, external\_id, or role) must be provided. |
| `email`                    | string  |          | `"test.user@example.com"`          | The contact's email address. At least one identifier (email, external\_id, or role) must be provided.                |
| `phone`                    | string  |          | `"+353871234567"`                  | Contact phone number (E.164 format recommended, e.g., +353871234567)                                                 |
| `avatar`                   | string  |          | `"https://example.com/avatar.jpg"` | Image URL for the contact's avatar                                                                                   |
| `owner_id`                 | integer |          | `123456`                           | Admin ID assigned as account owner                                                                                   |
| `external_id`              | string  |          | `"external-user-123"`              | A unique identifier from your system. At least one identifier (email, external\_id, or role) must be provided.       |
| `last_seen_at`             | integer |          | `1638316800`                       | Unix timestamp of last activity                                                                                      |
| `signed_up_at`             | integer |          | `1638316800`                       | Unix timestamp of signup date                                                                                        |
| `custom_attributes`        | object  |          | `{"plan":"premium","tier":"gold"}` | Custom key-value data fields                                                                                         |
| `unsubscribed_from_emails` | boolean |          | `false`                            | Email subscription status                                                                                            |

***

### `Intercom Create Content Import Source`

Integration name: **INTERCOM\_CREATE\_CONTENT\_IMPORT\_SOURCE**

Tool to create a new content import source for the Fin Content Library. Use when you need to create a container for External Pages to be ingested into Intercom's AI content system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                     | Description                                                    |
| --------------- | ------ | :------: | --------------------------- | -------------------------------------------------------------- |
| `url`           | string |     ✅    | `"https://www.example.com"` | The URL of the content import source. Must be a valid URL.     |
| `status`        | string |          | `"active"`                  | The status of the content import source. Defaults to 'active'. |
| `sync_behavior` | string |     ✅    | `"api"`                     | Defines sync method.                                           |

***

### `Intercom Create Conversation`

Integration name: **INTERCOM\_CREATE\_CONVERSATION**

Creates a new conversation in Intercom. Requires exactly one of from\_user\_id or from\_contact\_id — both are schema-optional but at least one must be provided.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                               | Description                                                                                               |
| ----------------- | ------ | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `body`            | string |     ✅    | `"Hello! How can we help you today?"` | The message content for the conversation                                                                  |
| `subject`         | string |          | `"Welcome to our service"`            | Subject line for the conversation                                                                         |
| `from_user_id`    | string |          | `"123456789"`                         | ID of the user to create the conversation from. Either from\_user\_id or from\_contact\_id is required    |
| `message_type`    | string |          | `"inapp"`                             | Type of message: inapp, email, or facebook                                                                |
| `from_admin_id`   | string |          | `"123456"`                            | ID of the admin creating the conversation. If not provided, uses authenticated admin                      |
| `from_contact_id` | string |          | `"123456789"`                         | ID of the contact to create the conversation from. Either from\_user\_id or from\_contact\_id is required |

***

### `Intercom Create Data Attribute`

Integration name: **INTERCOM\_CREATE\_DATA\_ATTRIBUTE**

Tool to create a custom data attribute for contacts or companies. Use when you need to define a new attribute to track additional information beyond standard fields.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                                    | Description                                                                                                   |
| -------------------- | ------- | :------: | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `name`               | string  |     ✅    | `"test_attribute"`                                         | The identifier for the data attribute. This will be the key used to reference the attribute.                  |
| `model`              | string  |     ✅    | `"contact"`                                                | Specifies which object type this attribute applies to. Must be either 'contact' or 'company'.                 |
| `options`            | array   |          | `[{"value":"small"},{"value":"medium"},{"value":"large"}]` | Required when data\_type is 'options'. Array of option objects, each containing a 'value' property.           |
| `data_type`          | string  |     ✅    | `"string"`                                                 | The type of data stored. Valid values: 'string', 'integer', 'float', 'boolean', or 'date'.                    |
| `description`        | string  |          | `"Customer loyalty tier"`                                  | A readable description of the attribute shown in the UI. Helps users understand the purpose of the attribute. |
| `messenger_writable` | boolean |          | `true`                                                     | Whether the Messenger can update this attribute. Set to true to allow updates via Messenger.                  |

***

### `Intercom Create Data Event`

Integration name: **INTERCOM\_CREATE\_DATA\_EVENT**

Tool to submit a data event to Intercom to track user activities. Use when you need to notify Intercom of user actions and changes. Events are detected as duplicates using workspace ID, contact identifier, event name, and timestamp.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                         | Description                                                                                                                                                                                                                                  |
| ------------ | ------- | :------: | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`         | string  |          | `"67eedf68fbd061d9f4fee259"`                    | Intercom's 24-character UUID identifier for a lead or user. The contact must already exist in Intercom; events cannot be created for non-existent contacts. At least one of user\_id, id, or email is required.                              |
| `email`      | string  |          | `"test.user@example.com"`                       | The user's email address. The contact with this email must already exist in Intercom; events cannot be created for non-existent contacts. Use only when email uniquely identifies users. At least one of user\_id, id, or email is required. |
| `user_id`    | string  |          | `"user123"`                                     | Your application's unique identifier for the user. The contact must already exist in Intercom with this user\_id; events cannot be created for non-existent contacts. At least one of user\_id, id, or email is required.                    |
| `metadata`   | object  |          | `{"source":"api_test","test_key":"test_value"}` | Additional key-value pairs providing context about the event. Can include custom properties relevant to the event.                                                                                                                           |
| `created_at` | integer |     ✅    | `1734220800`                                    | Unix timestamp indicating when the event occurred.                                                                                                                                                                                           |
| `event_name` | string  |     ✅    | `"test-event-completed"`                        | The name of the event in past tense verb-noun format (e.g., 'updated-plan', 'purchased-item'). Describes what action occurred.                                                                                                               |

***

### `Intercom Create Data Export`

Integration name: **INTERCOM\_CREATE\_DATA\_EXPORT**

Tool to initiate an async data export job for message content. Use when you need to export messages created within a specific timeframe. Only one active job per workspace is allowed; exceeding this limit triggers a 429 error. Jobs expire two days after completion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example      | Description                                                                                                                |
| ------------------- | ------- | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------- |
| `created_at_after`  | integer |     ✅    | `1733875200` | Start date for data export; must be formatted as a UNIX timestamp. Only messages created after this time will be included. |
| `created_at_before` | integer |     ✅    | `1734480000` | End date for data export; formatted as UNIX timestamp. This parameter is required by the API.                              |

***

### `Intercom Create External Page`

Integration name: **INTERCOM\_CREATE\_EXTERNAL\_PAGE**

Tool to create an external page in Fin Content Library or update an existing page by external ID. Use when you need to ingest new content or update existing content for AI-generated answers. Supports upsert behavior: if a page with the same source\_id and external\_id exists, it will be updated instead of creating a new one.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                                   | Description                                                                                                                                                            |
| ------------------------- | ------- | :------: | --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                     | string  |     ✅    | `"https://help.example.com/articles/getting-started"`     | The page URL; used by Fin to attribute answers to sources. Must be a valid URL.                                                                                        |
| `html`                    | string  |     ✅    | `"<h1>Welcome</h1><p>This is a comprehensive guide.</p>"` | The body content of the external page in HTML format                                                                                                                   |
| `title`                   | string  |     ✅    | `"Getting Started Guide"`                                 | The title of the external page                                                                                                                                         |
| `locale`                  | string  |     ✅    | `"en"`                                                    | Language code for the page. Must be 'en'.                                                                                                                              |
| `source_id`               | integer |     ✅    | `125351`                                                  | Identifier for the content import source. This links the page to a specific content import source in your workspace.                                                   |
| `external_id`             | string  |     ✅    | `"test-page-12345"`                                       | Unique ID from the source; enables upsert functionality. If a page with the same source\_id and external\_id exists, it will be updated instead of creating a new one. |
| `ai_agent_availability`   | boolean |          | `true`                                                    | Whether Fin AI Agent can reference this content. Defaults to false if not provided.                                                                                    |
| `ai_copilot_availability` | boolean |          | `true`                                                    | Whether AI Copilot can use this content. Defaults to false if not provided.                                                                                            |

***

### `Intercom Create Help Center Section`

Integration name: **INTERCOM\_CREATE\_HELP\_CENTER\_SECTION**

Tool to create a new help center section within a collection. Use when you need to add a new section to organize articles in the help center hierarchy (Help Center → Collections → Sections → Articles). Supports multilingual content via translated\_content parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                                                                                                   | Description                                                                                                                                                                           |
| -------------------- | ------ | :------: | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string |     ✅    | `"Getting Started"`                                                                                                                       | The name of the section. For multilingual sections, this will be the name of the default language's content.                                                                          |
| `parent_id`          | string |     ✅    | `"14578321"`                                                                                                                              | The collection ID where the section will be located.                                                                                                                                  |
| `translated_content` | object |          | `{"es":{"name":"Comenzando","description":"Aprende los conceptos básicos"},"fr":{"name":"Commencer","description":"Apprenez les bases"}}` | A dictionary of locale codes to translated content. Keys are locale codes (e.g., 'es', 'fr', 'de'). Each value contains the translated name and optional description for that locale. |

***

### `Intercom Create Internal Article`

Integration name: **INTERCOM\_CREATE\_INTERNAL\_ARTICLE**

Tool to create a new internal article for team knowledge sharing. Use when you need to add new internal documentation or knowledge base articles for team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                     | Description                                         |
| ----------- | ------- | :------: | ------------------------------------------- | --------------------------------------------------- |
| `body`      | string  |          | `"<p>This is the article body content</p>"` | The content of the article (supports HTML).         |
| `title`     | string  |     ✅    | `"How to use the internal dashboard"`       | The title of the article.                           |
| `locale`    | string  |          | `"en"`                                      | Language/locale identifier for the article content. |
| `owner_id`  | integer |     ✅    | `1295`                                      | The id of the owner of the article.                 |
| `author_id` | integer |     ✅    | `1295`                                      | The id of the author of the article.                |

***

### `Intercom Create Or Update A Company`

Integration name: **INTERCOM\_CREATE\_OR\_UPDATE\_A\_COMPANY**

You can create or update a company. Companies will be only visible in Intercom when there is at least one associated user. Companies are looked up via `company_id` in a `POST` request, if not found via `company_id`, the new company will be created, if found, that company will be updated.

{% hint style="warning" %}
**Using `company_id`**\
You can set a unique `company_id` value when creating a company. However, it is not possible to update `company_id`. Be sure to set a unique value once upon creation of the company.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                           |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`              | string  |          | —       | The name of the Company                                                                                                                                                                                                               |
| `plan`              | string  |          | —       | The name of the plan you have associated with the company.                                                                                                                                                                            |
| `size`              | integer |          | —       | The number of employees in this company.                                                                                                                                                                                              |
| `website`           | string  |          | —       | The URL for this company"s website. Please note that the value specified here is not validated. Accepts any string.                                                                                                                   |
| `industry`          | string  |          | —       | The industry that this company operates in.                                                                                                                                                                                           |
| `company_id`        | string  |          | —       | The company id you have defined for the company. Can"t be updated                                                                                                                                                                     |
| `monthly_spend`     | integer |          | —       | How much revenue the company generates for your business. Note that this will truncate floats. i.e. it only allow for whole integers, 155.98 will be truncated to 155. Note that this has an upper limit of 2\*\*31-1 or 2147483647.. |
| `custom_attributes` | object  |          | —       | A hash of key/value pairs containing any other data about the company you want Intercom to store. Values must be strings, numbers, or booleans (not objects or arrays).                                                               |
| `remote_created_at` | integer |          | —       | The time the company was created by you.                                                                                                                                                                                              |

***

### `Intercom Create Tag`

Integration name: **INTERCOM\_CREATE\_TAG**

Tool to create or update a tag, and optionally tag/untag companies or tag contacts. Use when you need to create a new tag, update an existing tag, or apply/remove tags to/from companies or users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example              | Description                                                                                                                                              |
| ----------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`        | string |          | `"7522907"`          | The ID of an existing tag to update. Optional - only needed when updating a specific tag.                                                                |
| `name`      | string |     ✅    | `"Premium Customer"` | The name of the tag. Will be created if it doesn't exist, or the existing tag will be used if it does.                                                   |
| `users`     | array  |          | —                    | Optional list of users to tag. Each user must have an 'id' field.                                                                                        |
| `companies` | array  |          | —                    | Optional list of companies to tag or untag. Each company should have either 'id' or 'company\_id' field, and optionally 'untag': true to remove the tag. |

***

### `Intercom Create Ticket`

Integration name: **INTERCOM\_CREATE\_TICKET**

Tool to create a ticket in Intercom to track customer requests and issues. Use when you need to create a new support ticket with specified type, contacts, and attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example     | Description                                                                                                                                                                                                             |
| ------------------------- | ------- | :------: | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `contacts`                | array   |     ✅    | —           | Array of contact objects representing users affected by this ticket. Each contact must include one of: id, external\_id, or email                                                                                       |
| `assignment`              | object  |          | —           | Assignment information for the ticket                                                                                                                                                                                   |
| `company_id`              | string  |          | —           | The ID of the company associated with this ticket                                                                                                                                                                       |
| `created_at`              | integer |          | —           | Unix timestamp indicating when the ticket was created. Defaults to current time if not provided                                                                                                                         |
| `ticket_type_id`          | string  |     ✅    | `"2521663"` | The ID of the ticket type you want to create. This defines the structure and workflow for the ticket                                                                                                                    |
| `ticket_attributes`       | object  |          | —           | Custom attribute key-value pairs for the ticket. Use '*default\_title*' for the ticket title and '*default\_description*' for the ticket description. Additional custom fields depend on your ticket type configuration |
| `conversation_to_link_id` | string  |          | —           | The ID of an existing conversation to link to this ticket                                                                                                                                                               |

***

### `Intercom Create Ticket Type`

Integration name: **INTERCOM\_CREATE\_TICKET\_TYPE**

Tool to create a new ticket type that defines the data structure for tracking customer requests. Use when you need to establish a new category of tickets with specific fields and states.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                             | Description                                                          |
| ------------- | ------- | :------: | ----------------------------------- | -------------------------------------------------------------------- |
| `icon`        | string  |          | `"🎟️"`                             | Emoji representation (from Twemoji Cheatsheet)                       |
| `name`        | string  |     ✅    | `"Customer Issue"`                  | The designation for the ticket type                                  |
| `category`    | string  |     ✅    | `"Customer"`                        | Classification as 'Customer', 'Back-office', or 'Tracker' (required) |
| `description` | string  |          | `"Ticket type for customer issues"` | Explanatory text about the ticket type                               |
| `is_internal` | boolean |          | —                                   | Whether tickets are for internal use only; defaults to false         |

***

### `Intercom Create Ticket Type Attribute`

Integration name: **INTERCOM\_CREATE\_TICKET\_TYPE\_ATTRIBUTE**

Tool to create a new attribute for a ticket type in Intercom. Use when you need to add custom attributes to ticket types for data collection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                       | Description                                                                                              |
| --------------------------------- | ------- | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `name`                            | string  |     ✅    | `"Priority Level"`                            | The name of the ticket type attribute                                                                    |
| `data_type`                       | string  |     ✅    | `"list"`                                      | The data type of the attribute. Allowed values: string, list, integer, decimal, boolean, datetime, files |
| `multiline`                       | boolean |          | —                                             | Whether the attribute allows multiple lines of text (applicable for string data\_type only)              |
| `list_items`                      | string  |          | `"High, Medium, Low"`                         | A comma delimited list of items for the attribute value (applicable to list data\_type only)             |
| `description`                     | string  |     ✅    | `"Select the priority level for this ticket"` | The description of the attribute presented to the teammate or contact                                    |
| `ticket_type_id`                  | string  |     ✅    | `"2521663"`                                   | The unique identifier of the ticket type to add the attribute to                                         |
| `visible_on_create`               | boolean |          | —                                             | Visibility to teammates during creation (default: true)                                                  |
| `required_to_create`              | boolean |          | —                                             | Whether teammates must fill this attribute when creating tickets (default: false)                        |
| `visible_to_contacts`             | boolean |          | —                                             | Visibility to contacts in Messenger (default: true)                                                      |
| `allow_multiple_values`           | boolean |          | —                                             | Whether the attribute allows multiple files to be attached (applicable for files data\_type only)        |
| `required_to_create_for_contacts` | boolean |          | —                                             | Whether contacts must fill this attribute in Messenger (default: false)                                  |

***

### `Intercom Data Event Summaries`

Integration name: **INTERCOM\_DATA\_EVENT\_SUMMARIES**

Tool to create event summaries for a user to track event occurrences. Use when you need to bulk update event counts for a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                            | Description                                                |
| ----------------- | ------ | :------: | ---------------------------------------------------------------------------------- | ---------------------------------------------------------- |
| `user_id`         | string |     ✅    | `"external_test_2357"`                                                             | Your identifier for the user to create event summaries for |
| `event_summaries` | array  |     ✅    | `[{"last":1700500000,"count":5,"first":1700000000,"event_name":"viewed-product"}]` | List of event summaries to create for the user             |

***

### `Intercom Delete A Collection`

Integration name: **INTERCOM\_DELETE\_A\_COLLECTION**

You can delete a single collection by making a DELETE request to `https://api.intercom.io/collections/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier for the collection which is given by Intercom. |

***

### `Intercom Delete A Company`

Integration name: **INTERCOM\_DELETE\_A\_COMPANY**

You can delete a single company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                      |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier for the company which is given by Intercom |

***

### `Intercom Delete An Article`

Integration name: **INTERCOM\_DELETE\_AN\_ARTICLE**

You can delete a single article by making a DELETE request to `https://api.intercom.io/articles/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                       |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier for the article which is given by Intercom. |

***

### `Intercom Delete A Tag Delete Tag`

Integration name: **INTERCOM\_DELETE\_A\_TAG\_DELETE\_TAG**

Tool to delete a tag from Intercom workspace. Use when you need to permanently remove a tag that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                                |
| --------- | ------ | :------: | --------- | ------------------------------------------ |
| `tag_id`  | string |     ✅    | `"17513"` | The unique identifier of the tag to delete |

***

### `Intercom Delete A Visitor`

Integration name: **INTERCOM\_DELETE\_A\_VISITOR**

Tool to delete a visitor from the Intercom workspace. Use when you need to permanently remove a visitor record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                      |
| --------- | ------ | :------: | ------------------------ | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | `"530370b477ad7120001d"` | The unique identifier for the visitor which is given by Intercom |

***

### `Intercom Delete Contact`

Integration name: **INTERCOM\_DELETE\_CONTACT**

Tool to delete a contact from the Intercom workspace. Use when you need to permanently remove a contact record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                      |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------------------------- |
| `contact_id` | string |     ✅    | `"68999c450cd4fe5e2f749a62"` | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Delete Content Import Source`

Integration name: **INTERCOM\_DELETE\_CONTENT\_IMPORT\_SOURCE**

Tool to delete a content import source and all its external pages. Use when you need to remove a content import source from Intercom. This operation is permanent and cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example    | Description                                                                     |
| ----------- | ------ | :------: | ---------- | ------------------------------------------------------------------------------- |
| `source_id` | string |     ✅    | `"125350"` | The unique identifier for the content import source which is given by Intercom. |

***

### `Intercom Delete External Page`

Integration name: **INTERCOM\_DELETE\_EXTERNAL\_PAGE**

Tool to delete an external page from content library and AI answers. Use when you need to remove an external page from Intercom's AI knowledge base.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                      |
| --------- | ------ | :------: | ------------- | ---------------------------------------------------------------- |
| `page_id` | string |     ✅    | `"170233803"` | The unique identifier for the external page provided by Intercom |

***

### `Intercom Delete Internal Article`

Integration name: **INTERCOM\_DELETE\_INTERNAL\_ARTICLE**

Tool to delete a single internal article by ID. Use when you need to permanently remove an internal article from Intercom.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example   | Description                                                                |
| --------------------- | ------- | :------: | --------- | -------------------------------------------------------------------------- |
| `internal_article_id` | integer |     ✅    | `3562450` | The unique identifier for the internal article which is given by Intercom. |

***

### `Intercom Delete Ticket`

Integration name: **INTERCOM\_DELETE\_TICKET**

Tool to delete a ticket from the Intercom system. Use when you need to permanently remove a ticket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example             | Description                                               |
| ----------- | ------ | :------: | ------------------- | --------------------------------------------------------- |
| `ticket_id` | string |     ✅    | `"215472278398575"` | The unique identifier for the ticket assigned by Intercom |

***

### `Intercom Detach A Contact`

Integration name: **INTERCOM\_DETACH\_A\_CONTACT**

Tool to remove a tag from a specific contact in Intercom. Use when you need to detach or untag a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                      |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------------------------- |
| `tag_id`     | string |     ✅    | `"7522907"`                  | The unique identifier for the tag which is given by Intercom     |
| `contact_id` | string |     ✅    | `"63a07ddf05a32042dffac965"` | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Detach Contact From Company`

Integration name: **INTERCOM\_DETACH\_CONTACT\_FROM\_COMPANY**

Tool to detach a contact from a company in Intercom. Use when you need to remove a company association from a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                                      |
| ------------ | ------ | :------: | ---------------------------- | ---------------------------------------------------------------- |
| `company_id` | string |     ✅    | `"5f8e5b5d5e5f5b5d5e5f5b5d"` | The unique identifier for the company which is given by Intercom |
| `contact_id` | string |     ✅    | `"63a07ddf05a32042dffac965"` | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Detach Tag From Conversation`

Integration name: **INTERCOM\_DETACH\_TAG\_FROM\_CONVERSATION**

Tool to remove a tag from a specific conversation in Intercom. Use when you need to detach or untag a conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example             | Description                                                        |
| ----------------- | ------ | :------: | ------------------- | ------------------------------------------------------------------ |
| `tag_id`          | string |     ✅    | `"10933556"`        | The unique identifier for the tag to be removed                    |
| `admin_id`        | string |     ✅    | `"8226930"`         | The unique identifier for the admin which is performing the action |
| `conversation_id` | string |     ✅    | `"215468802130405"` | The unique identifier for the conversation                         |

***

### `Intercom Detach Tag From Ticket`

Integration name: **INTERCOM\_DETACH\_TAG\_FROM\_TICKET**

Tool to remove a tag from a ticket in Intercom. Use when you need to detach or remove a specific tag from a ticket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example             | Description                                                     |
| ----------- | ------ | :------: | ------------------- | --------------------------------------------------------------- |
| `tag_id`    | string |     ✅    | `"10933556"`        | The unique identifier for the tag which is given by Intercom    |
| `admin_id`  | string |     ✅    | `"991267622"`       | The unique identifier for the admin which is given by Intercom  |
| `ticket_id` | string |     ✅    | `"215472278420733"` | The unique identifier for the ticket which is given by Intercom |

***

### `Intercom Download Data Export`

Integration name: **INTERCOM\_DOWNLOAD\_DATA\_EXPORT**

Tool to download content data export from Intercom. Use when you need to retrieve exported message data from a completed data export job. The data is returned as a gzipped CSV file stream.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example              | Description                                                                                                                                                 |
| ---------------- | ------ | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `job_identifier` | string |     ✅    | `"cay83dq2f1zpe145"` | The location identifier where you can download your data. This is obtained from the download\_url when a content data export job reaches 'complete' status. |

***

### `Intercom Enqueue Create Ticket`

Integration name: **INTERCOM\_ENQUEUE\_CREATE\_TICKET**

Tool to enqueue ticket creation for asynchronous processing. Use when you need to create a ticket in Intercom. The system attempts validation on inputs before tasks are enqueued.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                                                   | Description                                                                                                                                                           |
| ------------------------- | ------- | :------: | ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `contacts`                | array   |     ✅    | —                                                                         | List of contacts affected by the ticket (currently only one allowed). Provide at least one of: id, external\_id, or email                                             |
| `assignment`              | object  |          | —                                                                         | Optional assignment details for the ticket                                                                                                                            |
| `company_id`              | string  |          | `"987654321"`                                                             | Associated company identifier                                                                                                                                         |
| `created_at`              | integer |          | `1730815200`                                                              | Timestamp for ticket creation (current time if omitted)                                                                                                               |
| `ticket_type_id`          | string  |     ✅    | `"2521663"`                                                               | The identifier of the ticket type you want to create                                                                                                                  |
| `ticket_attributes`       | object  |          | `{"_default_title_":"Test Ticket","_default_description_":"Description"}` | Ticket field values as key-value pairs. Default fields: *default\_title* and *default\_description*. Supports strings, numbers, booleans, arrays, and file attributes |
| `skip_notifications`      | boolean |          | —                                                                         | Disable notifications when created                                                                                                                                    |
| `conversation_to_link_id` | string  |          | `"123456789"`                                                             | Conversation ID to link to the ticket                                                                                                                                 |

***

### `Intercom Find Tag`

Integration name: **INTERCOM\_FIND\_TAG**

Tool to retrieve details for a specific tag by its ID. Use when you need to get information about a particular tag in the workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                             |
| --------- | ------ | :------: | ---------- | ------------------------------------------------------- |
| `tag_id`  | string |     ✅    | `"123456"` | The unique identifier for the tag within the workspace. |

***

### `Intercom Get A Contact`

Integration name: **INTERCOM\_GET\_A\_CONTACT**

You can fetch the details of a single contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description |
| --------- | ------ | :------: | ------- | ----------- |
| `id`      | string |     ✅    | —       | id          |

***

### `Intercom Get Content Import Source`

Integration name: **INTERCOM\_GET\_CONTENT\_IMPORT\_SOURCE**

Tool to retrieve a content import source by its ID. Use when you need to fetch details about a specific content import source from Intercom's AI features.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example    | Description                                                                     |
| ----------- | ------ | :------: | ---------- | ------------------------------------------------------------------------------- |
| `source_id` | string |     ✅    | `"125351"` | The unique identifier for the content import source which is given by Intercom. |

***

### `Intercom Get Conversation`

Integration name: **INTERCOM\_GET\_CONVERSATION**

Retrieves a specific conversation by ID with all messages and details. Key response caveats: `conversation_parts` are paginated — walk all cursors for complete transcripts. Fields `title`, `subject`, `source.body`, `conversation_parts.body`, `statistics`, and some contact properties can be null. System/workflow events appear in `conversation_parts` with null `body` or `author`; `first_admin_reply_at` may be null despite actual replies — use `last_admin_reply_at` for SLA calculations. Attachment URLs in `conversation_parts` are short-lived — download promptly. The `state` field and `open` boolean can diverge — re-fetch to verify state before assign/reply/close actions. Timestamps are Unix epoch seconds UTC. Use this tool (not INTERCOM\_SEARCH\_CONVERSATIONS) when full message context is required.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example       | Description                                                                                                                                                                  |
| ----------------- | ------ | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `display_as`      | string |          | `"plaintext"` | Display format for message content: plaintext or html Even with 'plaintext', fields like `subject` and `custom_attributes` may still contain raw HTML — sanitize separately. |
| `conversation_id` | string |     ✅    | `"123456789"` | The ID of the conversation to retrieve                                                                                                                                       |

***

### `Intercom Get Counts`

Integration name: **INTERCOM\_GET\_COUNTS**

Tool to retrieve summary counts for Intercom app entities including companies, users, leads, tags, segments, and conversations. Use when you need to get statistics about the total number of entities in the workspace or conversation counts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                                                                                                                                     |
| --------- | ------ | :------: | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`    | string |          | `"conversation"` | Set to 'conversation' to retrieve conversation-specific counts. If omitted, returns app total counts (companies, users, leads, tags, segments). |

***

### `Intercom Get Custom Object Instance By External Id`

Integration name: **INTERCOM\_GET\_CUSTOM\_OBJECT\_INSTANCE\_BY\_EXTERNAL\_ID**

Tool to retrieve a custom object instance by its external\_id. Use when you need to fetch a specific custom object instance from Intercom using an identifier from your external system rather than Intercom's internal ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type   | Required | Example            | Description                                                                                    |
| ------------------------------- | ------ | :------: | ------------------ | ---------------------------------------------------------------------------------------------- |
| `external_id`                   | string |     ✅    | `"test-order-001"` | The unique identifier for the Custom Object instance in the external system it originated from |
| `custom_object_type_identifier` | string |     ✅    | `"Order"`          | The unique identifier of the custom object type (e.g., 'Order', 'Product')                     |

***

### `Intercom Get External Page`

Integration name: **INTERCOM\_GET\_EXTERNAL\_PAGE**

Tool to retrieve an external page from Fin Content Library by ID. Use when you need to fetch details of a specific external page including its content, metadata, and AI availability settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                                      |
| --------- | ------ | :------: | ------------- | ---------------------------------------------------------------- |
| `page_id` | string |     ✅    | `"170233833"` | The unique identifier for the external page provided by Intercom |

***

### `Intercom Get Ticket`

Integration name: **INTERCOM\_GET\_TICKET**

Tool to retrieve a ticket from Intercom. Use when you need to fetch comprehensive details about a specific ticket including state, type, attributes, and contacts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example             | Description                                               |
| ----------- | ------ | :------: | ------------------- | --------------------------------------------------------- |
| `ticket_id` | string |     ✅    | `"215472278493860"` | The unique identifier for the ticket assigned by Intercom |

***

### `Intercom Get Ticket Type`

Integration name: **INTERCOM\_GET\_TICKET\_TYPE**

Tool to retrieve details for a specific ticket type by its ID. Use when you need to get complete information about a ticket type including its attributes and states.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example     | Description                                            |
| ---------------- | ------ | :------: | ----------- | ------------------------------------------------------ |
| `ticket_type_id` | string |     ✅    | `"2521663"` | The unique identifier for the ticket type to retrieve. |

***

### `Intercom Identify An Admin`

Integration name: **INTERCOM\_IDENTIFY\_AN\_ADMIN**

You can view the currently authorised admin along with the embedded app object (a "workspace" in legacy terminology).

{% hint style="warning" %}
🚧 **Single Sign On**\
If you are building a custom "Log in with Intercom" flow for your site, and you call the `/me` endpoint to identify the logged-in user, you should not accept any sign-ins from users with unverified email addresses as it poses a potential impersonation security risk.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom Jobs Status`

Integration name: **INTERCOM\_JOBS\_STATUS**

Tool to retrieve the status of job execution. Use when checking progress and outcome of asynchronous operations like data imports or exports.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                                  |
| --------- | ------ | :------: | ---------- | ------------------------------------------------------------ |
| `job_id`  | string |     ✅    | `"619017"` | The unique identifier for the job which is given by Intercom |

***

### `Intercom List All Activity Logs`

Integration name: **INTERCOM\_LIST\_ALL\_ACTIVITY\_LOGS**

You can get a log of activities by all admins in an app.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example | Description                                                                         |
| ------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------- |
| `created_at_after`  | string |     ✅    | —       | The start date that you request data for. It must be formatted as a UNIX timestamp. |
| `created_at_before` | string |          | —       | The end date that you request data for. It must be formatted as a UNIX timestamp.   |

***

### `Intercom List All Admins`

Integration name: **INTERCOM\_LIST\_ALL\_ADMINS**

You can fetch a list of admins for a given workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List All Articles`

Integration name: **INTERCOM\_LIST\_ALL\_ARTICLES**

You can fetch a list of all articles by making a GET request to `https://api.intercom.io/articles`.

{% hint style="info" %}
**How are the articles sorted and ordered?**\
Articles will be returned in descending order on the `updated_at` attribute. This means if you need to iterate through results then we'll show the most recently updated articles first.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List All Collections`

Integration name: **INTERCOM\_LIST\_ALL\_COLLECTIONS**

You can fetch a list of all collections by making a GET request to `https://api.intercom.io/help_center/collections`. Collections will be returned in descending order on the `updated_at` attribute. This means if you need to iterate through results then we'll show the most recently updated collections first.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List All Companies`

Integration name: **INTERCOM\_LIST\_ALL\_COMPANIES**

You can list companies. The company list is sorted by the `last_request_at` field and by default is ordered descending, most recently requested first. Note that the API does not include companies who have no associated users in list responses. When using the Companies endpoint and the pages object to iterate through the returned companies, there is a limit of 10,000 Companies that can be returned. If you need to list or iterate on more than 10,000 Companies, please use the [Scroll API](https://developers.intercom.com/reference#iterating-over-all-companies).

{% hint style="warning" %}
**Pagination**\
You can use pagination to limit the number of results returned. The default is `20` results per page. See the [pagination section](https://developers.intercom.com/docs/build-an-integration/learn-more/rest-apis/pagination/#pagination-for-list-apis) for more details on how to use the `starting_after` param.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                                              |
| ---------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `page`     | integer |          | —       | The page of results to fetch. Defaults to first page                                     |
| `order`    | string  |          | —       | `asc` or `desc`. Return the companies in ascending or descending order. Defaults to desc |
| `per_page` | integer |          | —       | How many results to return per page. Defaults to 15. Maximum allowed value is 60.        |

***

### `Intercom List All Help Centers`

Integration name: **INTERCOM\_LIST\_ALL\_HELP\_CENTERS**

You can list all Help Centers by making a GET request to `https://api.intercom.io/help_center/help_centers`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List All Macros`

Integration name: **INTERCOM\_LIST\_ALL\_MACROS**

Tool to fetch a list of all macros (saved replies) in your workspace for use in automating responses. The macros are returned in descending order by updated\_at. Use when you need to retrieve available macros or sync macro data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                          | Description                                                                                                                                                      |
| ---------------- | ------- | :------: | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `per_page`       | integer |          | `50`                                                             | Number of results to return per page. Controls pagination size.                                                                                                  |
| `updated_since`  | integer |          | `1609459200`                                                     | Unix timestamp to retrieve only macros modified after this time. Useful for incremental syncs.                                                                   |
| `starting_after` | string  |          | `"WzE2Mzk1Nzk4MDAwMDAsIjVmZDYzN2NjN2Y2YzBkMDA2ZjJmMzNkZiIsMl0="` | Cursor for pagination - Base64-encoded JSON array containing \[updated\_at, id] of the last item from previous page. Use this to fetch the next page of results. |

***

### `Intercom List All Notes`

Integration name: **INTERCOM\_LIST\_ALL\_NOTES**

You can fetch a list of notes that are associated to a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                         |
| --------- | ------ | :------: | ------- | ----------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of a contact. |

***

### `Intercom List Attached Companies For Contact`

Integration name: **INTERCOM\_LIST\_ATTACHED\_COMPANIES\_FOR\_CONTACT**

You can fetch a list of companies that are associated to a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                      |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom |

***

### `Intercom List Attached Contacts`

Integration name: **INTERCOM\_LIST\_ATTACHED\_CONTACTS**

You can fetch a list of all contacts that belong to a company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                      |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier for the company which is given by Intercom |

***

### `Intercom List Attached Segments For Companies`

Integration name: **INTERCOM\_LIST\_ATTACHED\_SEGMENTS\_FOR\_COMPANIES**

You can fetch a list of all segments that belong to a company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                      |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier for the company which is given by Intercom |

***

### `Intercom List Attached Segments For Contact`

Integration name: **INTERCOM\_LIST\_ATTACHED\_SEGMENTS\_FOR\_CONTACT**

You can fetch a list of segments that are associated to a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                      |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `contact_id` | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom |

***

### `Intercom List Away Status Reasons`

Integration name: **INTERCOM\_LIST\_AWAY\_STATUS\_REASONS**

Tool to retrieve all away status reasons for a workspace including deleted ones. Use when you need to list available away status options for team members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Calls`

Integration name: **INTERCOM\_LIST\_CALLS**

Tool to list all phone calls from Intercom with pagination support. Use when you need to retrieve call records, view call history, or iterate through calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example | Description                                                       |
| ---------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `page`     | integer |          | `1`     | The page of results to fetch. Defaults to first page.             |
| `per_page` | integer |          | `10`    | How many results to display per page. Defaults to 25. Maximum 25. |

***

### `Intercom List Calls With Transcripts`

Integration name: **INTERCOM\_LIST\_CALLS\_WITH\_TRANSCRIPTS**

Tool to retrieve calls by conversation IDs with transcripts when available. Use when you need to get call records with their transcripts for specific conversations. Maximum 20 conversation IDs per request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type  | Required | Example                               | Description                                                                                    |
| ------------------ | ----- | :------: | ------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `conversation_ids` | array |     ✅    | `["64619700005694","64619700005695"]` | A list of conversation IDs to fetch calls for. Must contain between 1 and 20 conversation IDs. |

***

### `Intercom List Company Notes`

Integration name: **INTERCOM\_LIST\_COMPANY\_NOTES**

Tool to list all notes associated with a specific company. Use when you need to retrieve all notes that have been added to a company record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                      |
| ------------ | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------- |
| `company_id` | string |     ✅    | `"5f4d3c1c-7b1b-4d7d-a97e-6095715c6632"` | The unique identifier for the company which is given by Intercom |

***

### `Intercom List Contacts`

Integration name: **INTERCOM\_LIST\_CONTACTS**

Tool to list all contacts (users or leads) in your Intercom workspace with pagination support. Use when you need to retrieve multiple contacts or iterate through all contacts in the workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                          | Description                                                                                                                  |
| ---------------- | ------- | :------: | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `per_page`       | integer |          | `50`                                                             | Number of results per page. Maximum 150.                                                                                     |
| `starting_after` | string  |          | `"WzE2Mzk1Nzk4MDAwMDAsIjVmZDYzN2NjN2Y2YzBkMDA2ZjJmMzNkZiIsMl0="` | Pagination cursor to fetch the next page of results. Use the value from pages.next.starting\_after in the previous response. |

***

### `Intercom List Content Import Sources`

Integration name: **INTERCOM\_LIST\_CONTENT\_IMPORT\_SOURCES**

Tool to retrieve all content import sources for the workspace. Use when you need to list all content sources for Fin Content Library.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                      |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------ |
| `per_page`       | integer |          | —       | Number of items per page. Default: 20, max: 150. |
| `starting_after` | string  |          | —       | Cursor for fetching the next page of results.    |

***

### `Intercom List Conversations`

Integration name: **INTERCOM\_LIST\_CONVERSATIONS**

Lists all conversations from Intercom with pagination support. This endpoint does not support filtering by state, assignee, or other attributes - use INTERCOM\_SEARCH\_CONVERSATIONS for filtering. Paginate by reading pages.next.starting\_after from each response and passing it as starting\_after until pages.next is absent. Response fields including title, source.body, conversation\_parts.body, and statistics may be null; guard before string operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example       | Description                                                        |
| ---------------- | ------- | :------: | ------------- | ------------------------------------------------------------------ |
| `per_page`       | integer |          | `20`          | Number of conversations per page (1-150)                           |
| `starting_after` | string  |          | `"123456789"` | Pagination cursor - ID of the last conversation from previous page |

***

### `Intercom List Data Attributes`

Integration name: **INTERCOM\_LIST\_DATA\_ATTRIBUTES**

Tool to list all data attributes for contacts, companies, and conversations. Use when you need to retrieve metadata about available data attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example     | Description                                                                       |
| ------------------ | ------- | :------: | ----------- | --------------------------------------------------------------------------------- |
| `model`            | string  |          | `"contact"` | Filter attributes by model type. Accepts: 'contact', 'company', or 'conversation' |
| `include_archived` | boolean |          | `true`      | Include archived attributes in results. Defaults to false (non-archived only)     |

***

### `Intercom List Data Events`

Integration name: **INTERCOM\_LIST\_DATA\_EVENTS**

Tool to retrieve a log of data events belonging to a customer. Use when you need to list events for a specific user. Note: Only events less than 90 days old can be listed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                      | Description                                                                                       |
| ------------------ | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------- |
| `email`            | string  |          | `"user@example.com"`         | Contact's email address. Required if user\_id and intercom\_user\_id are not provided.            |
| `summary`          | boolean |          | `true`                       | Flag to include event summaries in response                                                       |
| `user_id`          | string  |          | `"user123"`                  | Your internal identifier for the user. Required if intercom\_user\_id and email are not provided. |
| `intercom_user_id` | string  |          | `"67eedf68fbd061d9f4fee259"` | Intercom's identifier for the contact. Required if user\_id and email are not provided.           |

***

### `Intercom List External Pages`

Integration name: **INTERCOM\_LIST\_EXTERNAL\_PAGES**

Tool to list all external pages from Fin Content Library. Use when you need to retrieve external pages used for AI-generated answers in Intercom.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                      |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------ |
| `per_page`       | integer |          | —       | Number of items per page. Default: 20, max: 150. |
| `starting_after` | string  |          | —       | Cursor for fetching the next page of results.    |

***

### `Intercom List Help Center Sections`

Integration name: **INTERCOM\_LIST\_HELP\_CENTER\_SECTIONS**

Tool to fetch a list of all help center sections in descending order by updated\_at. Use when you need to retrieve sections from the help center hierarchy (Help Center → Collections → Sections → Articles).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                                    |
| ---------------- | ------- | :------: | ----------------- | -------------------------------------------------------------- |
| `per_page`       | integer |          | `20`              | Number of results per page. Maximum is 150.                    |
| `starting_after` | string  |          | `"section_12345"` | Cursor value for pagination to fetch the next page of results. |

***

### `Intercom List Internal Articles`

Integration name: **INTERCOM\_LIST\_INTERNAL\_ARTICLES**

Fetches one page of internal articles from Intercom. Uses Intercom's cursor-based pagination via `starting_after`. ONE Intercom API call is made per invocation; pagination is caller-driven via the `starting_after` request parameter and the `next_starting_after` field in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                              | Description                                                                                                                                                  |
| ---------------- | ------- | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `per_page`       | integer |          | `25`                                 | Number of internal articles to fetch in this single call (1-200). Defaults to 25.                                                                            |
| `starting_after` | string  |          | `"WzE2OTk5OTk5OTksMTIzNDU2Nzg5XQ=="` | Pagination cursor for cursor-based pagination. Omit on the first call. Pass the `next_starting_after` value from a previous response to fetch the next page. |

***

### `Intercom List News Items`

Integration name: **INTERCOM\_LIST\_NEWS\_ITEMS**

Tool to fetch a list of all news items from Intercom. Use when you need to retrieve news items posted in the workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Segments`

Integration name: **INTERCOM\_LIST\_SEGMENTS**

Tool to retrieve all segments defined within a workspace for filtering and categorizing contacts. Use when you need to get a list of all available segments or check segment counts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                                           |
| --------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `include_count` | boolean |          | `true`  | Include the count of contacts in each segment. When true, the 'count' field will be populated in each segment object. |

***

### `Intercom List Subscriptions For A Contact`

Integration name: **INTERCOM\_LIST\_SUBSCRIPTIONS\_FOR\_A\_CONTACT**

You can fetch a list of subscription types that are attached to a contact. These can be subscriptions that a user has 'opted-in' to or has 'opted-out' from, depending on the subscription type. This will return a list of Subscription Type objects that the contact is associated with. The data property will show a combined list of: 1.Opt-out subscription types that the user has opted-out from. 2.Opt-in subscription types that the user has opted-in to receiving.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                      |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `contact_id` | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom |

***

### `Intercom List Subscription Types`

Integration name: **INTERCOM\_LIST\_SUBSCRIPTION\_TYPES**

Tool to list all subscription types available in the workspace. Use when you need to retrieve subscription configuration details including state, translations, consent type, and supported content types.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Tags`

Integration name: **INTERCOM\_LIST\_TAGS**

Tool to fetch all tags for the workspace. Use when you need to retrieve all available tags that can be applied to contacts, companies, and conversations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Tags Attached To A Contact`

Integration name: **INTERCOM\_LIST\_TAGS\_ATTACHED\_TO\_A\_CONTACT**

You can fetch a list of all tags that are attached to a specific contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                      |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `contact_id` | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom |

***

### `Intercom List Teams`

Integration name: **INTERCOM\_LIST\_TEAMS**

Tool to retrieve all teams within a workspace. Use when you need to get a list of all available teams, their members, or assignment configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Ticket States`

Integration name: **INTERCOM\_LIST\_TICKET\_STATES**

Tool to fetch all ticket states for the workspace. Use when you need to retrieve all configured ticket states, including both active and archived ones.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom List Ticket Types`

Integration name: **INTERCOM\_LIST\_TICKET\_TYPES**

Tool to retrieve all ticket types for the workspace. Use when you need to get all available ticket type configurations including attributes and states.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Intercom Merge A Lead And A User`

Integration name: **INTERCOM\_MERGE\_A\_LEAD\_AND\_A\_USER**

You can merge a contact with a `role` of `lead` into a contact with a `role` of `user`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                               |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------- |
| `from`    | string |          | —       | The unique identifier for the contact to merge away from. Must be a lead. |
| `into`    | string |          | —       | The unique identifier for the contact to merge into. Must be a user.      |

***

### `Intercom Register Fin Voice Call`

Integration name: **INTERCOM\_REGISTER\_FIN\_VOICE\_CALL**

Tool to register a Fin Voice call with Intercom. Use when you need to create a record of an external voice call in Intercom, enabling AI-powered call analysis and customer interaction tracking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example           | Description                                                                                                             |
| -------------- | ------ | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `data`         | object |          | `{"key":"value"}` | Additional metadata about the call as key-value pairs. Use this to store custom information about the call.             |
| `source`       | string |          | —                 | Enum for supported call sources.                                                                                        |
| `call_id`      | string |     ✅    | `"call-123-abc"`  | External call identifier from the call provider. This is a unique identifier for the call in your system.               |
| `phone_number` | string |     ✅    | `"+1234567890"`   | Phone number in E.164 format for the call (e.g., +1234567890). Must start with '+' followed by country code and number. |

***

### `Intercom Remove Subscription From A Contact`

Integration name: **INTERCOM\_REMOVE\_SUBSCRIPTION\_FROM\_A\_CONTACT**

You can remove a specific subscription from a contact. This will return a subscription type model for the subscription type that was removed from the contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                |
| ------------ | ------ | :------: | ------- | -------------------------------------------------------------------------- |
| `id`         | string |     ✅    | —       | The unique identifier for the subscription type which is given by Intercom |
| `contact_id` | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom           |

***

### `Intercom Remove Tag From A Contact`

Integration name: **INTERCOM\_REMOVE\_TAG\_FROM\_A\_CONTACT**

You can remove tag from a specific contact. This will return a tag object for the tag that was removed from the contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                      |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`         | string |     ✅    | —       | The unique identifier for the tag which is given by Intercom     |
| `contact_id` | string |     ✅    | —       | The unique identifier for the contact which is given by Intercom |

***

### `Intercom Reopen Conversation`

Integration name: **INTERCOM\_REOPEN\_CONVERSATION**

Reopens a closed conversation in Intercom. Only operates correctly on conversations in a closed state; verify state via INTERCOM\_GET\_CONVERSATION before calling, as using on open or snoozed conversations may produce unexpected results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                         | Description                                              |
| ----------------- | ------ | :------: | --------------------------------------------------------------- | -------------------------------------------------------- |
| `body`            | string |          | `"Reopening this conversation to address additional concerns."` | Optional message to send when reopening the conversation |
| `admin_id`        | string |     ✅    | `"7222173"`                                                     | ID of the admin reopening the conversation               |
| `conversation_id` | string |     ✅    | `"123456789"`                                                   | The ID of the conversation to reopen                     |

***

### `Intercom Reply Ticket`

Integration name: **INTERCOM\_REPLY\_TICKET**

Tool to reply to a ticket with a message from admin or contact, or with a note for admins. Use when you need to add a response or comment to an existing ticket.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                         | Description                                                                            |
| ------------------ | ------- | :------: | ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| `body`             | string  |     ✅    | `"Thank you for your inquiry. We are reviewing your request and will get back to you shortly."` | The content of the reply. HTML is supported for notes.                                 |
| `email`            | string  |          | `"user@example.com"`                                                                            | Contact's email address for contact replies. Used when replying as a contact.          |
| `user_id`          | string  |          | `"user_123"`                                                                                    | External contact identifier for contact replies. Used when replying as a contact.      |
| `admin_id`         | string  |          | `"8226930"`                                                                                     | Admin identifier for admin replies. Required when replying as an admin.                |
| `ticket_id`        | string  |     ✅    | `"215472278547564"`                                                                             | The unique identifier for the ticket to reply to                                       |
| `created_at`       | integer |          | `1672531200`                                                                                    | Unix timestamp for when the reply was created. Optional, used for contact replies.     |
| `message_type`     | string  |     ✅    | `"comment"`                                                                                     | Type of message to send. Must be 'comment', 'note', or 'quick\_reply'                  |
| `attachment_urls`  | array   |          | `["https://example.com/file.pdf"]`                                                              | List of URLs of attachments to include in the reply                                    |
| `intercom_user_id` | string  |          | `"5f9c0a1e2b1d3c0001a3b4c5"`                                                                    | Contact identifier from Intercom for contact replies. Used when replying as a contact. |

***

### `Intercom Reply To Conversation`

Integration name: **INTERCOM\_REPLY\_TO\_CONVERSATION**

Sends a reply to an existing conversation in Intercom. Always send reply before closing a conversation — never parallelize with INTERCOM\_CLOSE\_CONVERSATION on the same conversation. Verify conversation state via INTERCOM\_GET\_CONVERSATION before replying, as open/snoozed/closed states may diverge from cached values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                    | Description                                                                                                                                                    |
| ----------------- | ------ | :------: | ---------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `admin_id`        | string |     ✅    | `"123456"`                                                 | ID of the admin sending the reply. Required - must be explicitly provided.                                                                                     |
| `message_body`    | string |     ✅    | `"Thank you for contacting us. How can I help you today?"` | The message content to send as a reply                                                                                                                         |
| `message_type`    | string |          | `"comment"`                                                | Type of message: comment, note, or assignment                                                                                                                  |
| `attachment_urls` | array  |          | `["https://example.com/file.pdf"]`                         | List of attachment URLs to include in the reply URLs must be publicly accessible (no auth required); private or oversized URLs will cause the request to fail. |
| `conversation_id` | string |     ✅    | `"123456789"`                                              | The ID of the conversation to reply to                                                                                                                         |

***

### `Intercom Retrieve A Collection`

Integration name: **INTERCOM\_RETRIEVE\_A\_COLLECTION**

You can fetch the details of a single collection by making a GET request to `https://api.intercom.io/help_center/collections/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier for the collection which is given by Intercom. |

***

### `Intercom Retrieve A Company By Id`

Integration name: **INTERCOM\_RETRIEVE\_A\_COMPANY\_BY\_ID**

You can fetch a single company.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                      |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier for the company which is given by Intercom |

***

### `Intercom Retrieve A Help Center`

Integration name: **INTERCOM\_RETRIEVE\_A\_HELP\_CENTER**

You can fetch the details of a single Help Center by making a GET request to `https://api.intercom.io/help_center/help_center/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                          |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier for the collection which is given by Intercom. |

***

### `Intercom Retrieve A Job Status`

Integration name: **INTERCOM\_RETRIEVE\_A\_JOB\_STATUS**

Tool to retrieve the status of a data export job. Use when checking the progress of an export job by providing the job identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example             | Description                                                              |
| ---------------- | ------ | :------: | ------------------- | ------------------------------------------------------------------------ |
| `job_identifier` | string |     ✅    | `"v5xsp8c19ji0s82"` | The unique identifier for the export job whose status you want to check. |

***

### `Intercom Retrieve A Macro`

Integration name: **INTERCOM\_RETRIEVE\_A\_MACRO**

Tool to fetch a single macro (saved reply) by its ID. The macro will only be returned if it is visible to the authenticated user based on its visibility settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                     |
| --------- | ------ | :------: | ----------- | ----------------------------------------------- |
| `id`      | string |     ✅    | `"8861176"` | The unique identifier for the macro to retrieve |

***

### `Intercom Retrieve An Admin`

Integration name: **INTERCOM\_RETRIEVE\_AN\_ADMIN**

You can retrieve the details of a single admin.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                            |
| --------- | ------- | :------: | ------- | -------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier of a given admin |

***

### `Intercom Retrieve An Article`

Integration name: **INTERCOM\_RETRIEVE\_AN\_ARTICLE**

You can fetch the details of a single article by making a GET request to `https://api.intercom.io/articles/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                       |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------- |
| `id`      | integer |     ✅    | —       | The unique identifier for the article which is given by Intercom. |

***

### `Intercom Retrieve A Segment`

Integration name: **INTERCOM\_RETRIEVE\_A\_SEGMENT**

Tool to retrieve details for a single segment by its ID. Use when you need to get information about a specific segment including its name, type, and optionally the count of items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                      | Description                                                                                                               |
| --------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `segment_id`    | string  |     ✅    | `"53203e244cba153d39000062"` | The unique identifier of the segment to retrieve.                                                                         |
| `include_count` | boolean |          | `true`                       | When set to true, includes the count field showing the number of items in the segment. Only applicable for user segments. |

***

### `Intercom Retrieve Companies`

Integration name: **INTERCOM\_RETRIEVE\_COMPANIES**

You can fetch a single company by passing in `company_id` or `name`. `https://api.intercom.io/companies?name={name}` `https://api.intercom.io/companies?company_id={company_id}` You can fetch all companies and filter by `segment_id` or `tag_id` as a query parameter. `https://api.intercom.io/companies?tag_id={tag_id}` `https://api.intercom.io/companies?segment_id={segment_id}`

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                          |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------- |
| `name`       | string  |          | —       | The `name` of the company to filter by.              |
| `page`       | integer |          | —       | The page of results to fetch. Defaults to first page |
| `tag_id`     | string  |          | —       | The `tag_id` of the company to filter by.            |
| `per_page`   | integer |          | —       | How many results to display per page. Defaults to 15 |
| `company_id` | string  |          | —       | The `company_id` of the company to filter by.        |
| `segment_id` | string  |          | —       | The `segment_id` of the company to filter by.        |

***

### `Intercom Retrieve Internal Article`

Integration name: **INTERCOM\_RETRIEVE\_INTERNAL\_ARTICLE**

Tool to retrieve an internal article by ID from Intercom. Use when you need to fetch details of a specific internal article including its title, body content, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example   | Description                                                                |
| --------------------- | ------- | :------: | --------- | -------------------------------------------------------------------------- |
| `internal_article_id` | integer |     ✅    | `6532416` | The unique identifier for the internal article which is given by Intercom. |

***

### `Intercom Retrieve Note`

Integration name: **INTERCOM\_RETRIEVE\_NOTE**

Tool to retrieve details of a single note by its identifier. Use when you need to fetch the complete information about a specific note.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example       | Description                                   |
| --------- | ------ | :------: | ------------- | --------------------------------------------- |
| `note_id` | string |     ✅    | `"229524950"` | The unique identifier of the note to retrieve |

***

### `Intercom Retrieve Team`

Integration name: **INTERCOM\_RETRIEVE\_TEAM**

Tool to retrieve detailed information about a specific team by ID. Use when you need to get team details including members and assignment configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                   |
| --------- | ------ | :------: | ---------- | --------------------------------------------- |
| `team_id` | string |     ✅    | `"123456"` | The unique identifier of the team to retrieve |

***

### `Intercom Retrieve Visitor With User Id`

Integration name: **INTERCOM\_RETRIEVE\_VISITOR\_WITH\_USER\_ID**

Tool to retrieve a specific visitor's details using their user\_id. Use when you need to fetch comprehensive visitor information including profile data, location, and activity metrics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example           | Description                                              |
| --------- | ------ | :------: | ----------------- | -------------------------------------------------------- |
| `user_id` | string |     ✅    | `"test_user_123"` | A unique identifier for the visitor that you've assigned |

***

### `Intercom Scroll Over All Companies`

Integration name: **INTERCOM\_SCROLL\_OVER\_ALL\_COMPANIES**

The `list all companies` functionality does not work well for huge datasets, and can result in errors and performance problems when paging deeply. The Scroll API provides an efficient mechanism for iterating over all companies in a dataset. - Each app can only have 1 scroll open at a time. You'll get an error message if you try to have more than one open per app. You can get the first page of companies by simply sending a GET request to the scroll endpoint. For subsequent requests you will need to use the scroll parameter from the response.

{% hint style="danger" %}
**Scroll network timeouts**\
Since scroll is often used on large datasets network errors such as timeouts can be encountered. When this occurs you will see a HTTP 500 error with the following message: "Request failed due to an internal network error. Please restart the scroll operation." If this happens, you will need to restart your scroll query.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example | Description  |
| -------------- | ------ | :------: | ------- | ------------ |
| `scroll_param` | string |          | —       | Scroll Param |

***

### `Intercom Search Contacts`

Integration name: **INTERCOM\_SEARCH\_CONTACTS**

Tool to search for contacts using query filters with operators. Use when finding contacts by role, email, name, or attributes. Response entries may include null or non-dictionary values; guard against missing/null fields before accessing nested properties. A contact may have multiple emails or contact\_ids; deduplicate when aggregating across searches.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                                    |
| ---------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`          | string  |     ✅    | —       | Search query as a JSON string. Single filter: {"field": "role", "operator": "=", "value": "user"}. Multiple: {"operator": "AND", "value": \[filter1, filter2]} |
| `per_page`       | integer |          | —       | Number of results per page (1-150)                                                                                                                             |
| `starting_after` | string  |          | —       | Cursor for pagination                                                                                                                                          |

***

### `Intercom Search Conversations`

Integration name: **INTERCOM\_SEARCH\_CONVERSATIONS**

Searches for conversations using query string with support for filtering and sorting

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                         | Description                                                                                                                                                                                                                                                 |
| ---------------- | ------- | :------: | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`          | string  |     ✅    | `"{\"field\": \"created_at\", \"operator\": \">\", \"value\": \"1600000000\"}"` | JSON object defining the Intercom search query. Example: '{"field": "created\_at", "operator": ">", "value": "1600000000"}'. For compound queries use: '{"operator": "AND", "value": \[{"field": "created\_at", "operator": ">", "value": "1600000000"}]}'. |
| `per_page`       | integer |          | `20`                                                                            | Number of conversations per page (1-150)                                                                                                                                                                                                                    |
| `sort_field`     | string  |          | `"created_at"`                                                                  | Field to sort by: created\_at, updated\_at, waiting\_since                                                                                                                                                                                                  |
| `sort_order`     | string  |          | `"ascending"`                                                                   | Sort order: ascending or descending                                                                                                                                                                                                                         |
| `starting_after` | string  |          | `"123456789"`                                                                   | Pagination cursor - ID of the last conversation from previous page                                                                                                                                                                                          |

***

### `Intercom Search For Articles`

Integration name: **INTERCOM\_SEARCH\_FOR\_ARTICLES**

You can search for articles by making a GET request to `https://api.intercom.io/articles/search`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                               |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `state`          | string  |          | —       | The state of the Articles returned. One of `published`, `draft` or `all`.                                                 |
| `phrase`         | string  |          | —       | The phrase within your articles to search for.                                                                            |
| `highlight`      | boolean |          | —       | Return a highlighted version of the matching content within your articles. Refer to the response schema for more details. |
| `help_center_id` | integer |          | —       | The ID of the Help Center to search in.                                                                                   |

***

### `Intercom Search Internal Articles`

Integration name: **INTERCOM\_SEARCH\_INTERNAL\_ARTICLES**

Searches one page of internal articles in Intercom. Uses Intercom's cursor-based pagination via `starting_after`. ONE Intercom API call is made per invocation; pagination is caller-driven via the `starting_after` request parameter and the `next_starting_after` field in the response. Optionally filtered by `folder_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                              | Description                                                                                                                                                  |
| ---------------- | ------- | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `per_page`       | integer |          | `25`                                 | Number of internal articles to fetch in this single call (1-200). Defaults to 25.                                                                            |
| `folder_id`      | string  |          | `"123"`                              | The ID of the folder to search in. If not provided, searches across all folders.                                                                             |
| `starting_after` | string  |          | `"WzE2OTk5OTk5OTksMTIzNDU2Nzg5XQ=="` | Pagination cursor for cursor-based pagination. Omit on the first call. Pass the `next_starting_after` value from a previous response to fetch the next page. |

***

### `Intercom Search Tickets`

Integration name: **INTERCOM\_SEARCH\_TICKETS**

Tool to search tickets in Intercom by filtering attribute values. Use when you need to find tickets matching specific criteria like state, creation date, assignment, or custom attributes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                     |
| ------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `query`      | object |     ✅    | —       | Query object containing filters to search tickets. Can be simple (single field/value) or complex (AND/OR with multiple filters) |
| `pagination` | object |          | —       | Pagination settings for search results                                                                                          |

***

### `Intercom Set Admin To Away`

Integration name: **INTERCOM\_SET\_ADMIN\_TO\_AWAY**

Tool to set an admin to away status in Intercom. Use when you need to mark an admin as away, optionally with a specific reason and reassignment behavior.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type    | Required | Example   | Description                                                                 |
| ----------------------- | ------- | :------: | --------- | --------------------------------------------------------------------------- |
| `admin_id`              | integer |     ✅    | `8226930` | The unique identifier of the admin to set away                              |
| `away_mode_enabled`     | boolean |          | `true`    | Set to "true" to change the status of the admin to away.                    |
| `away_mode_reassign`    | boolean |          | `false`   | Set to "true" to assign any new conversation replies to your default inbox. |
| `away_status_reason_id` | integer |          | `12345`   | The unique identifier of the away status reason                             |

***

### `Intercom Set An Admin To Away`

Integration name: **INTERCOM\_SET\_AN\_ADMIN\_TO\_AWAY**

You can set an Admin as away for the Inbox.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                 |
| -------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `id`                 | integer |     ✅    | —       | The unique identifier of a given admin                                      |
| `away_mode_enabled`  | boolean |          | —       | Set to "true" to change the status of the admin to away.                    |
| `away_mode_reassign` | boolean |          | —       | Set to "true" to assign any new conversation replies to your default inbox. |

***

### `Intercom Show Call`

Integration name: **INTERCOM\_SHOW\_CALL**

Tool to retrieve a single call by ID from Intercom. Use when you need to get detailed information about a specific phone call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                    |
| --------- | ------ | :------: | ---------- | ---------------------------------------------- |
| `call_id` | string |     ✅    | `"123456"` | The unique identifier of the call to retrieve. |

***

### `Intercom Show Call Transcript`

Integration name: **INTERCOM\_SHOW\_CALL\_TRANSCRIPT**

Tool to get call transcript by call ID. Use when you need to retrieve the transcript text from a recorded call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example          | Description                        |
| --------- | ------ | :------: | ---------------- | ---------------------------------- |
| `call_id` | string |     ✅    | `"test-call-id"` | The unique identifier for the call |

***

### `Intercom Show Contact By External Id`

Integration name: **INTERCOM\_SHOW\_CONTACT\_BY\_EXTERNAL\_ID**

Tool to retrieve a contact by their external ID. Use when you need to fetch contact details using an identifier from your external system rather than Intercom's internal ID. Only supports users, not leads.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                    |
| ------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `external_id` | string |     ✅    | `"53c8517b-eaee-48b9-8700-1bdbc1f1be40"` | The unique identifier for the contact which is provided by the Client in their external system |

***

### `Intercom Unarchive Contact`

Integration name: **INTERCOM\_UNARCHIVE\_CONTACT**

Tool to unarchive a previously archived contact in Intercom. Use when you need to restore an archived contact by their ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                      | Description                                        |
| ------------ | ------ | :------: | ---------------------------- | -------------------------------------------------- |
| `contact_id` | string |     ✅    | `"67eedf68fbd061d9f4fee259"` | The unique identifier for the contact to unarchive |

***

### `Intercom Update A Collection`

Integration name: **INTERCOM\_UPDATE\_A\_COLLECTION**

You can update the details of a single collection by making a PUT request to `https://api.intercom.io/collections/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                      |
| ------------------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                       | integer |     ✅    | —       | The unique identifier for the collection which is given by Intercom.                                                             |
| `name`                                     | string  |          | —       | The name of the collection. For multilingual collections, this will be the name of the default language"s content.               |
| `parent_id`                                | string  |          | —       | The id of the parent collection. If `null` then it will be updated as the first level collection.                                |
| `description`                              | string  |          | —       | The description of the collection. For multilingual collections, this will be the description of the default language"s content. |
| `translated__content__type`                | string  |          | —       | The type of object - group\_translated\_content.                                                                                 |
| `translated__content__ar__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ar__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__bg__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__bg__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__bs__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__bs__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ca__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ca__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__cs__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__cs__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__da__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__da__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__de__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__de__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__el__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__el__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__en__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__en__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__es__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__es__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__et__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__et__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__fi__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__fi__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__fr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__fr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__he__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__he__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__hr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__hr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__hu__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__hu__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__id__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__id__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__it__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__it__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ja__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ja__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ko__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ko__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__lt__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__lt__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__lv__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__lv__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__mn__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__mn__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__nb__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__nb__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__nl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__nl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pt__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pt__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ro__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ro__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ru__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__ru__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sl__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sl__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__sv__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__sv__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__tr__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__tr__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__vi__name`            | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__vi__type`            | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__pt__BR__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__pt__BR__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__zh__CN__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__zh__CN__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__zh__TW__name`        | string  |          | —       | The name of the collection or section.                                                                                           |
| `translated__content__zh__TW__type`        | string  |          | —       | The type of object - `group_content` .                                                                                           |
| `translated__content__ar__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__bg__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__bs__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ca__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__cs__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__da__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__de__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__el__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__en__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__es__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__et__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__fi__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__fr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__he__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__hr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__hu__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__id__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__it__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ja__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ko__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__lt__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__lv__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__mn__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__nb__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__nl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pt__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ro__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__ru__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sl__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__sv__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__tr__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__vi__description`     | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__pt__BR__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__zh__CN__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |
| `translated__content__zh__TW__description` | string  |          | —       | The description of the collection. Only available for collections.                                                               |

***

### `Intercom Update A Company`

Integration name: **INTERCOM\_UPDATE\_A\_COMPANY**

You can update a single company using the Intercom provisioned `id`.

{% hint style="warning" %}
**Using `company_id`**\
When updating a company it is not possible to update `company_id`. This can only be set once upon creation of the company.
{% endhint %}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                                                                                                                                                                                                                  |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                | string  |     ✅    | —       | The unique identifier for the company which is given by Intercom                                                                                                                                                                                             |
| `name`              | string  |          | —       | The name of the Company                                                                                                                                                                                                                                      |
| `plan`              | string  |          | —       | The name of the plan you have associated with the company.                                                                                                                                                                                                   |
| `size`              | integer |          | —       | The number of employees in this company.                                                                                                                                                                                                                     |
| `website`           | string  |          | —       | The URL for this company's website. Please note that the value specified here is not validated. Accepts any string.                                                                                                                                          |
| `industry`          | string  |          | —       | The industry that this company operates in.                                                                                                                                                                                                                  |
| `monthly_spend`     | integer |          | —       | How much revenue the company generates for your business. Note that this will truncate floats. i.e. it only allows whole integers, 155.98 will be truncated to 155. Note that this has an upper limit of 2\*\*31-1 or 2147483647.                            |
| `custom_attributes` | object  |          | —       | User-defined key-value pairs for custom company data. Keys must be pre-defined via the Data Attributes API. Field names must not contain periods or dollar signs, max 190 characters. Values: strings (max 255 chars), numbers, or booleans. Max 100 fields. |
| `remote_created_at` | integer |          | —       | The time the company was created by you as a Unix timestamp.                                                                                                                                                                                                 |

***

### `Intercom Update A Contact`

Integration name: **INTERCOM\_UPDATE\_A\_CONTACT**

You can update an existing contact (ie. user or lead).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example | Description                                                                                                                                                                                                                                   |
| -------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | string  |     ✅    | —       | The unique identifier for the contact which is given by Intercom.                                                                                                                                                                             |
| `name`                     | string  |          | —       | The contact's name.                                                                                                                                                                                                                           |
| `role`                     | string  |          | —       | The role of the contact. Can be 'user' or 'lead'.                                                                                                                                                                                             |
| `email`                    | string  |          | —       | The contact's email address.                                                                                                                                                                                                                  |
| `phone`                    | string  |          | —       | The contact's phone number.                                                                                                                                                                                                                   |
| `avatar`                   | string  |          | —       | An image URL containing the avatar of a contact.                                                                                                                                                                                              |
| `owner_id`                 | integer |          | —       | The id of an admin that has been assigned account ownership of the contact.                                                                                                                                                                   |
| `companies`                | array   |          | —       | List of companies to attach to the contact. Each company object must contain either 'id' (Intercom company ID) or 'company\_id' (client-provided company ID). Company attachments are made via separate API calls after updating the contact. |
| `external_id`              | string  |          | —       | A unique identifier for the contact which is provided by the client.                                                                                                                                                                          |
| `last_seen_at`             | integer |          | —       | The time when the contact was last seen as a UNIX timestamp.                                                                                                                                                                                  |
| `signed_up_at`             | integer |          | —       | The time specified for when a contact signed up as a UNIX timestamp.                                                                                                                                                                          |
| `custom_attributes`        | object  |          | —       | The custom attributes which are set for the contact as key-value pairs.                                                                                                                                                                       |
| `unsubscribed_from_emails` | boolean |          | —       | Whether the contact is unsubscribed from emails.                                                                                                                                                                                              |

***

### `Intercom Update An Article`

Integration name: **INTERCOM\_UPDATE\_AN\_ARTICLE**

You can update the details of a single article by making a PUT request to `https://api.intercom.io/articles/<id>`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                  | Type    | Required | Example | Description                                                                                                                                                                             |
| ------------------------------------------ | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                       | integer |     ✅    | —       | The unique identifier for the article which is given by Intercom.                                                                                                                       |
| `body`                                     | string  |          | —       | The content of the article. For multilingual articles, this will be the body of the default language"s content.                                                                         |
| `state`                                    | string  |          | —       | Whether the article will be `published` or will be a `draft`. Defaults to draft. For multilingual articles, this will be the state of the default language"s content.                   |
| `title`                                    | string  |          | —       | The title of the article.For multilingual articles, this will be the title of the default language"s content.                                                                           |
| `author_id`                                | integer |          | —       | The id of the author of the article. For multilingual articles, this will be the id of the author of the default language"s content. Must be a teammate on the help center"s workspace. |
| `parent_id`                                | string  |          | —       | The id of the article"s parent collection or section. An article without this field stands alone.                                                                                       |
| `description`                              | string  |          | —       | The description of the article. For multilingual articles, this will be the description of the default language"s content.                                                              |
| `parent_type`                              | string  |          | —       | The type of parent, which can either be a `collection` or `section`.                                                                                                                    |
| `translated__content__type`                | string  |          | —       | The type of object - article\_translated\_content.                                                                                                                                      |
| `translated__content__ar__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__bg__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__bs__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ca__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__cs__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__da__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__de__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__el__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__en__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__es__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__et__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__fi__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__fr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__he__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__hr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__hu__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__id__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__it__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ja__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ko__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__lt__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__lv__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__mn__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__nb__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__nl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pt__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ro__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ru__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sl__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__sv__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__tr__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__vi__url`             | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__ar__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ar__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__bg__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__bg__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__bs__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__bs__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ca__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ca__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__cs__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__cs__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__da__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__da__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__de__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__de__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__el__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__el__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__en__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__en__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__es__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__es__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__et__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__et__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__fi__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__fi__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__fr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__fr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__he__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__he__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__hr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__hr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__hu__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__hu__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__id__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__id__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__it__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__it__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ja__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ja__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ko__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ko__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__lt__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__lt__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__lv__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__lv__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__mn__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__mn__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__nb__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__nb__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__nl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__nl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pt__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pt__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ro__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ro__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ru__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__ru__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sl__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sl__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__sv__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__sv__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__tr__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__tr__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__vi__body`            | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__vi__type`            | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__ar__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ar__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__bg__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__bg__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__bs__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__bs__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ca__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ca__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__cs__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__cs__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__da__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__da__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__de__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__de__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__el__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__el__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__en__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__en__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__es__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__es__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__et__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__et__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__fi__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__fi__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__fr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__fr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__he__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__he__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__hr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__hr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__hu__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__hu__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__id__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__id__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__it__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__it__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ja__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ja__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ko__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ko__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__lt__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__lt__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__lv__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__lv__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__mn__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__mn__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__nb__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__nb__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__nl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__nl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pt__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pt__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ro__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ro__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ru__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__ru__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sl__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sl__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__sv__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__sv__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__tr__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__tr__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__vi__state`           | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__vi__title`           | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__pt__BR__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__zh__CN__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__zh__TW__url`         | string  |          | —       | The URL of the article.                                                                                                                                                                 |
| `translated__content__pt__BR__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__pt__BR__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__zh__CN__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__zh__CN__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__zh__TW__body`        | string  |          | —       | The body of the article.                                                                                                                                                                |
| `translated__content__zh__TW__type`        | string  |          | —       | The type of object - `article_content` .                                                                                                                                                |
| `translated__content__pt__BR__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__pt__BR__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__zh__CN__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__zh__CN__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__zh__TW__state`       | string  |          | —       | Whether the article is `published` or is a `draft` .                                                                                                                                    |
| `translated__content__zh__TW__title`       | string  |          | —       | The title of the article.                                                                                                                                                               |
| `translated__content__ar__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__bg__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__bs__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ca__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__cs__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__da__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__de__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__el__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__en__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__es__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__et__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__fi__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__fr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__he__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__hr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__hu__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__id__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__it__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ja__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ko__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__lt__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__lv__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__mn__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__nb__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__nl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pt__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ro__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ru__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sl__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__sv__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__tr__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__vi__author__id`      | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__ar__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ar__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ar__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__bg__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__bg__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__bg__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__bs__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__bs__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__bs__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ca__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ca__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ca__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__cs__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__cs__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__cs__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__da__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__da__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__da__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__de__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__de__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__de__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__el__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__el__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__el__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__en__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__en__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__en__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__es__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__es__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__es__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__et__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__et__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__et__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__fi__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__fi__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__fi__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__fr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__fr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__fr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__he__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__he__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__he__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__hr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__hr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__hr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__hu__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__hu__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__hu__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__id__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__id__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__id__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__it__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__it__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__it__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ja__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ja__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ja__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ko__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ko__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ko__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__lt__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__lt__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__lt__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__lv__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__lv__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__lv__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__mn__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__mn__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__mn__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__nb__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__nb__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__nb__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__nl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__nl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__nl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pt__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pt__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pt__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ro__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ro__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ro__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__ru__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__ru__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__ru__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sl__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sl__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sl__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__sv__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__sv__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__sv__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__tr__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__tr__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__tr__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__vi__created__at`     | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__vi__description`     | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__vi__updated__at`     | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__pt__BR__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__zh__CN__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__zh__TW__author__id`  | integer |          | —       | The ID of the author of the article.                                                                                                                                                    |
| `translated__content__pt__BR__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__pt__BR__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__pt__BR__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__zh__CN__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__zh__CN__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__zh__CN__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |
| `translated__content__zh__TW__created__at` | integer |          | —       | The time when the article was created (seconds).                                                                                                                                        |
| `translated__content__zh__TW__description` | string  |          | —       | The description of the article.                                                                                                                                                         |
| `translated__content__zh__TW__updated__at` | integer |          | —       | The time when the article was last updated (seconds).                                                                                                                                   |

***

### `Intercom Update Contact`

Integration name: **INTERCOM\_UPDATE\_CONTACT**

Tool to update an existing contact in Intercom. Use when you need to modify contact information such as name, email, custom attributes, or other properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                            | Description                                                          |
| -------------------------- | ------- | :------: | ---------------------------------- | -------------------------------------------------------------------- |
| `name`                     | string  |          | `"Updated User Name"`              | Contact's full name                                                  |
| `role`                     | string  |          | `"user"`                           | The contact's role designation (user/lead)                           |
| `email`                    | string  |          | `"updated.user@example.com"`       | The contact's email address                                          |
| `phone`                    | string  |          | `"+353871234567"`                  | Contact phone number (E.164 format recommended, e.g., +353871234567) |
| `avatar`                   | string  |          | `"https://example.com/avatar.jpg"` | Image URL for the contact's avatar                                   |
| `owner_id`                 | integer |          | `123456`                           | Admin ID assigned as account owner                                   |
| `contact_id`               | string  |     ✅    | `"63a07ddf05a32042dffac965"`       | The unique identifier for the contact to update                      |
| `external_id`              | string  |          | `"external-user-123"`              | A unique identifier from your system                                 |
| `last_seen_at`             | integer |          | `1638316800`                       | Unix timestamp of last activity                                      |
| `signed_up_at`             | integer |          | `1638316800`                       | Unix timestamp of signup date                                        |
| `custom_attributes`        | object  |          | `{"plan":"premium","tier":"gold"}` | Custom key-value data fields                                         |
| `unsubscribed_from_emails` | boolean |          | `false`                            | Email subscription status                                            |

***

### `Intercom Update Content Import Source`

Integration name: **INTERCOM\_UPDATE\_CONTENT\_IMPORT\_SOURCE**

Tool to update an existing content import source in Fin Content Library. Use when you need to modify the URL, sync behavior, or status of an existing content import source.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                              | Description                                                                                         |
| --------------- | ------ | :------: | ------------------------------------ | --------------------------------------------------------------------------------------------------- |
| `url`           | string |     ✅    | `"https://help.updated-example.com"` | The URL of the content import source. Must be a valid URL.                                          |
| `status`        | string |          | `"active"`                           | The operational state of the source. Allowed values: 'active', 'deactivated'. Defaults to 'active'. |
| `source_id`     | string |     ✅    | `"125351"`                           | The unique identifier for the content import source which is given by Intercom.                     |
| `sync_behavior` | string |     ✅    | `"api"`                              | Controls how the source is synchronized. Via API, the only allowed value is 'api'.                  |

***

### `Intercom Update Data Attribute`

Integration name: **INTERCOM\_UPDATE\_DATA\_ATTRIBUTE**

Tool to update an existing data attribute in Intercom. Use when you need to modify a data attribute's description, archive status, or messenger writability. Note: Changing a data attribute's type via the API is restricted and must be done through the UI.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                          | Description                                                                                           |
| -------------------- | ------- | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `options`            | array   |          | `[{"value":"option1"},{"value":"option2"}]`      | Predefined value options (required for list-type attributes). Each object contains a 'value' property |
| `archived`           | boolean |          | `true`                                           | Whether to archive the attribute                                                                      |
| `description`        | string  |          | `"Updated test attribute for curl tester agent"` | Human-readable description for UI display                                                             |
| `data_attribute_id`  | integer |     ✅    | `9903318`                                        | The unique identifier of the data attribute to update                                                 |
| `messenger_writable` | boolean |          | `true`                                           | Whether the Messenger can update this attribute                                                       |

***

### `Intercom Update External Page`

Integration name: **INTERCOM\_UPDATE\_EXTERNAL\_PAGE**

Tool to update an existing external page in Fin Content Library. Use when you need to modify the content, metadata, or availability settings of an external page. Only pages created through the API can be updated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                                                    | Description                                                                                                                                |
| ------------------ | ------- | :------: | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `url`              | string  |     ✅    | `"https://help.example.com/articles/getting-started-v2"`                                   | The page URL; used by Fin to attribute answers to sources. Must be a valid URL. Required for updates.                                      |
| `html`             | string  |     ✅    | `"<h1>Updated Welcome to Our Platform</h1><p>This is an updated comprehensive guide.</p>"` | The body content of the external page in HTML format. Required for updates.                                                                |
| `title`            | string  |     ✅    | `"Updated Getting Started Guide"`                                                          | The title of the external page. Required for updates.                                                                                      |
| `locale`           | string  |     ✅    | `"en"`                                                                                     | Language identifier code. Must be 'en'. Required for updates.                                                                              |
| `page_id`          | string  |     ✅    | `"170233994"`                                                                              | The unique identifier for the external page provided by Intercom                                                                           |
| `source_id`        | integer |     ✅    | `125351`                                                                                   | Identifier for the content import source. This links the page to a specific content import source in your workspace. Required for updates. |
| `external_id`      | string  |     ✅    | `"test-page-12345"`                                                                        | The identifier for the external page which was given by the source. Required for updates.                                                  |
| `fin_availability` | boolean |          | `true`                                                                                     | Whether the external page should be used to answer questions by Fin. Defaults to true if not provided.                                     |

***

### `Intercom Update Internal Article`

Integration name: **INTERCOM\_UPDATE\_INTERNAL\_ARTICLE**

Tool to update an internal article with new title, body, author or owner information. Use when you need to modify an existing internal article in Intercom.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                                                    | Description                                                                |
| --------------------- | ------- | :------: | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| `body`                | string  |     ✅    | `"<p>This internal article has been successfully updated via the API</p>"` | The article content in HTML format.                                        |
| `title`               | string  |     ✅    | `"Updated Test Internal Article"`                                          | The article heading.                                                       |
| `owner_id`            | integer |     ✅    | `8226930`                                                                  | The id of the owner of the article.                                        |
| `author_id`           | integer |     ✅    | `8226930`                                                                  | The id of the author of the article.                                       |
| `internal_article_id` | integer |     ✅    | `6532416`                                                                  | The unique identifier for the internal article which is given by Intercom. |

***

### `Intercom Update Ticket`

Integration name: **INTERCOM\_UPDATE\_TICKET**

Tool to update an existing ticket in Intercom. Use when you need to modify ticket attributes, state, assignment, or other properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                                   | Description                                                                                                 |
| ------------------- | ------- | :------: | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `open`              | boolean |          | `true`                                                                                    | Controls ticket open status; setting to false closes and unsnoozes the ticket                               |
| `admin_id`          | integer |          | `123456`                                                                                  | The ID of the admin performing ticket update, needed for workflows                                          |
| `is_shared`         | boolean |          | `true`                                                                                    | Specifies visibility to users                                                                               |
| `ticket_id`         | string  |     ✅    | `"215472278547564"`                                                                       | The unique identifier for the ticket assigned by Intercom                                                   |
| `company_id`        | string  |          | `"5f8e1b2c3d4e5f6a7b8c9d0e"`                                                              | ID of the company linked to the ticket; set to empty string to remove company association                   |
| `assignee_id`       | string  |          | `"6536622"`                                                                               | ID of admin or team for assignment; set to '0' to unassign                                                  |
| `snoozed_until`     | integer |          | `1704067200`                                                                              | Unix timestamp for when ticket should reopen                                                                |
| `ticket_state_id`   | string  |          | `"1234567"`                                                                               | ID of the ticket state associated with the ticket type                                                      |
| `ticket_attributes` | object  |          | `{"_default_title_":"Updated Test Ticket","_default_description_":"Updated description"}` | An object containing key-value pairs for ticket attributes (e.g., *default\_title*, *default\_description*) |

***

### `Intercom Update Ticket Type`

Integration name: **INTERCOM\_UPDATE\_TICKET\_TYPE**

Tool to update an existing ticket type in the workspace. Use when you need to modify a ticket type's name, description, category, icon, or archive status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                | Description                                                 |
| ---------------- | ------- | :------: | ------------------------------------------------------ | ----------------------------------------------------------- |
| `icon`           | string  |          | `"🎫"`                                                 | An emoji icon (copy from Twemoji Cheatsheet).               |
| `name`           | string  |          | `"Updated Customer Issue"`                             | The ticket type's name.                                     |
| `archived`       | boolean |          | `false`                                                | Archived status of the ticket type.                         |
| `category`       | string  |          | `"Customer"`                                           | One of: Customer, Back-office, or Tracker.                  |
| `description`    | string  |          | `"Updated description for customer issue ticket type"` | The ticket type's description.                              |
| `is_internal`    | boolean |          | `false`                                                | Whether tickets are internal-only or shared with customers. |
| `ticket_type_id` | string  |     ✅    | `"2973618"`                                            | The unique identifier of the ticket type to update.         |

***

### `Intercom Update Ticket Type Attribute`

Integration name: **INTERCOM\_UPDATE\_TICKET\_TYPE\_ATTRIBUTE**

Tool to update an existing attribute for a ticket type. Use when you need to modify properties like description, visibility, or requirements for a ticket type attribute.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                                                      | Description                                                                                  |
| --------------------------------- | ------- | :------: | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| `name`                            | string  |          | `"Priority Level"`                                                           | The label for the ticket type attribute                                                      |
| `multiline`                       | boolean |          | —                                                                            | Enables multiple text lines for string-type attributes                                       |
| `list_items`                      | string  |          | `"High, Medium, Low"`                                                        | A comma delimited list of items for the attribute value (only applicable to list attributes) |
| `description`                     | string  |          | `"Updated description for priority level - indicates urgency of the ticket"` | The description of the attribute presented to the teammate or contact                        |
| `attribute_id`                    | string  |     ✅    | `"8492391"`                                                                  | The unique identifier of the ticket type attribute to update                                 |
| `ticket_type_id`                  | string  |     ✅    | `"2521663"`                                                                  | The unique identifier of the ticket type                                                     |
| `visible_on_create`               | boolean |          | —                                                                            | Whether this field displays to teammates during ticket creation                              |
| `required_to_create`              | boolean |          | —                                                                            | Whether teammates must complete this field when creating tickets                             |
| `visible_to_contacts`             | boolean |          | —                                                                            | Whether this field displays to contacts during ticket creation                               |
| `allow_multiple_values`           | boolean |          | —                                                                            | Permits multiple file attachments for file-type attributes                                   |
| `required_to_create_for_contacts` | boolean |          | —                                                                            | Whether contacts must complete this field when creating tickets                              |


# Kit

Your Toolhouse AI Worker can connect to Kit using 42 specialized tools.

## Auth Connection

{% hint style="info" %}
This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under [Auth Connections](https://toolhouse.app/auth-connections?authkit_slugs=kit).
{% endhint %}

## Tools (42)

### `Kit Add Subscriber To Form`

Integration name: **KIT\_ADD\_SUBSCRIBER\_TO\_FORM**

Add an existing subscriber to a form by their IDs. This action associates a subscriber with a form in Kit. The subscriber must already exist in your Kit account (use KIT\_LIST\_SUBSCRIBERS to find them). The form must also exist (use KIT\_LIST\_FORMS to find valid form IDs). Returns HTTP 201 if the subscriber is newly added to the form, or HTTP 200 if they were already associated with the form. Both cases are considered successful operations. Important: This action requires both form\_id and subscriber\_id (aliased as 'id' in requests). An optional referrer URL can be provided for tracking purposes and will have its UTM parameters automatically parsed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                                                     | Description                                                                                                                                                                |
| ---------- | ------- | :------: | --------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`       | integer |     ✅    | `3887204854`                                                                | The ID of the subscriber to add to the form. Use KIT\_LIST\_SUBSCRIBERS to get valid subscriber IDs. The subscriber must already exist in your Kit account.                |
| `form_id`  | integer |     ✅    | `9023516`                                                                   | The ID of the form to which the subscriber will be added. Use KIT\_LIST\_FORMS to get valid form IDs.                                                                      |
| `referrer` | string  |          | `"https://example.com/landing-page?utm_source=newsletter&utm_medium=email"` | Optional referrer URL for tracking purposes. Can include UTM parameters (e.g., utm\_source, utm\_medium, utm\_campaign) which will be parsed and included in the response. |

***

### `Kit Add Subscriber To Form By Email`

Integration name: **KIT\_ADD\_SUBSCRIBER\_TO\_FORM\_BY\_EMAIL**

Tool to add an existing subscriber to a form using their email address. Use when you know the subscriber's email but not their ID. The subscriber must already exist in your Kit account before adding them to a form. Returns HTTP 201 if the subscriber is newly added to the form, or HTTP 200 if they were already associated with the form.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                                     | Description                                                                                                                                                                |
| --------------- | ------- | :------: | --------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `form_id`       | integer |     ✅    | `9023516`                                                                   | The ID of the form to which the subscriber will be added. Use KIT\_LIST\_FORMS to get valid form IDs.                                                                      |
| `referrer`      | string  |          | `"https://example.com/landing-page?utm_source=newsletter&utm_medium=email"` | Optional referrer URL for tracking purposes. Can include UTM parameters (e.g., utm\_source, utm\_medium, utm\_campaign) which will be parsed and included in the response. |
| `email_address` | string  |     ✅    | `"test-subscriber-kit-api@example.com"`                                     | The email address of the subscriber to add to the form. The subscriber must already exist in your Kit account.                                                             |

***

### `Kit Create Broadcast`

Integration name: **KIT\_CREATE\_BROADCAST**

Tool to create a new broadcast (email campaign) to send to subscribers. Use when you need to draft, schedule, or immediately publish an email broadcast. To save as draft, set send\_at to null; to schedule, provide a future send\_at timestamp; to publish to web, set public to true.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                | Description                                                                                                                                                                       |
| ------------------- | ------- | :------: | ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `public`            | boolean |          | `false`                                                | Whether to publish the broadcast to your public creator profile. Set to true to make it visible on your website.                                                                  |
| `content`           | string  |     ✅    | `"<h1>Welcome!</h1><p>This is our weekly update.</p>"` | Email content/body (HTML or plain text)                                                                                                                                           |
| `send_at`           | string  |          | `"2024-03-15T14:30:00Z"`                               | Scheduled send time in ISO 8601 format. Set to null to save as draft without scheduling. Must be a future timestamp.                                                              |
| `subject`           | string  |     ✅    | `"Weekly Newsletter"`                                  | Email subject line for the broadcast                                                                                                                                              |
| `description`       | string  |          | `"Q1 Newsletter - February edition"`                   | Internal description for the broadcast (not visible to subscribers)                                                                                                               |
| `email_address`     | string  |          | `"hello@example.com"`                                  | Sending email address to use for the broadcast. Uses the account's default sending email address if not provided. Must be a confirmed email address associated with your account. |
| `email_template_id` | integer |          | `6`                                                    | ID of the email template to use for styling. If not provided, the default template will be used.                                                                                  |
| `subscriber_filter` | array   |          | `[{"all":[{"type":"all_subscribers"}]}]`               | Array of filter groups to target specific subscribers. Each group contains conditions combined with 'all' logic. If not provided, sends to all subscribers.                       |

***

### `Kit Create Custom Field`

Integration name: **KIT\_CREATE\_CUSTOM\_FIELD**

Tool to create a new custom field for subscriber data. Use when you need to store extra attributes for subscribers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example            | Description                                                      |
| --------- | ------ | :------: | ------------------ | ---------------------------------------------------------------- |
| `label`   | string |     ✅    | `"Favorite Color"` | The display label for the custom field (e.g., 'Favorite Color'). |

***

### `Kit Create Subscriber`

Integration name: **KIT\_CREATE\_SUBSCRIBER**

Tool to create a new subscriber or update an existing one (upsert). If a subscriber with the provided email address does not exist, creates one. If already exists, updates the first name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                      | Description                                                                                                                  |
| --------------- | ------ | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `state`         | string |          | `"active"`                                   | Valid states for a subscriber.                                                                                               |
| `fields`        | object |          | `{"role":"Developer","company":"Acme Corp"}` | Custom fields as key-value pairs. Custom fields that don't exist will be ignored by the API.                                 |
| `first_name`    | string |          | `"John"`                                     | The subscriber's first name. If the subscriber already exists, this will update their first name.                            |
| `email_address` | string |     ✅    | `"test@example.com"`                         | The subscriber's email address (required). If a subscriber with this email already exists, their first name will be updated. |

***

### `Kit Create Tag`

Integration name: **KIT\_CREATE\_TAG**

Tool to create a new tag in the account. Use when you need a custom label to segment subscribers. Use after confirming tag uniqueness to avoid duplicates. Example: "Create a tag called 'VIP' for premium customers."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                    |
| --------- | ------ | :------: | ------- | ------------------------------ |
| `name`    | string |     ✅    | `"VIP"` | Name of the tag to be created. |

***

### `Kit Create Webhook`

Integration name: **KIT\_CREATE\_WEBHOOK**

Creates a webhook subscription for real-time event notifications. Use this to receive HTTP POST notifications when subscriber events (activate, unsubscribe, form subscribe, tag add/remove, link clicks, etc.) or purchase events occur in your Kit account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                         | Description                                                                              |
| ------------ | ------ | :------: | ------------------------------- | ---------------------------------------------------------------------------------------- |
| `event`      | object |     ✅    | —                               | Event type and optional filters for the webhook subscription.                            |
| `target_url` | string |     ✅    | `"https://example.com/webhook"` | HTTPS URL endpoint that will receive webhook POST notifications when the event triggers. |

***

### `Kit Delete Broadcast`

Integration name: **KIT\_DELETE\_BROADCAST**

Tool to delete a specific broadcast. Use when you need to permanently remove a broadcast by ID (after confirming the ID). Example prompt: "Delete broadcast with ID 123"

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                  |
| --------- | ------- | :------: | ------- | -------------------------------------------- |
| `id`      | integer |     ✅    | `123`   | Unique identifier of the broadcast to delete |

***

### `Kit Delete Custom Field`

Integration name: **KIT\_DELETE\_CUSTOM\_FIELD**

Tool to delete a specific custom field. Use after confirming the custom field ID is correct. Deletes the field permanently.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                     |
| --------- | ------- | :------: | ------- | ----------------------------------------------- |
| `id`      | integer |     ✅    | `123`   | Unique identifier of the custom field to delete |

***

### `Kit Delete Subscriber`

Integration name: **KIT\_DELETE\_SUBSCRIBER**

Unsubscribe a subscriber from all email communications by their ID. This action permanently unsubscribes a subscriber, removing them from all sequences and forms. The subscriber's historical data is retained but they will no longer receive emails. This operation is idempotent - unsubscribing an already-unsubscribed subscriber succeeds without error. Use KIT\_LIST\_SUBSCRIBERS to find valid subscriber IDs before calling this action. Returns: Empty response on success (HTTP 204 No Content). Raises: ExecutionFailed: If the subscriber ID doesn't exist (404), authentication fails (401), or other API errors occur.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                                                                                                                   |
| --------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| `id`      | integer |     ✅    | `3887204736` | The unique subscriber ID to unsubscribe. Must be a positive integer. Use KIT\_LIST\_SUBSCRIBERS to find valid subscriber IDs. |

***

### `Kit Delete Tag`

Integration name: **KIT\_DELETE\_TAG**

Tool to delete a tag by ID. Use when you need to remove obsolete or incorrect tags after confirming the tag exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                            |
| --------- | ------- | :------: | ------- | -------------------------------------- |
| `id`      | integer |     ✅    | `123`   | Unique identifier of the tag to delete |

***

### `Kit Delete Webhook`

Integration name: **KIT\_DELETE\_WEBHOOK**

Tool to delete a webhook by ID. Use when you want to permanently remove a webhook after confirming its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                |
| --------- | ------- | :------: | ------- | ------------------------------------------ |
| `id`      | integer |     ✅    | `123`   | Unique identifier of the webhook to delete |

***

### `Kit Filter Subscribers`

Integration name: **KIT\_FILTER\_SUBSCRIBERS**

Tool to filter subscribers based on engagement criteria such as email opens, clicks, or delivery status. Use when you need to segment subscribers by their engagement behavior with specific date ranges and count thresholds.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                                                                | Description                                                                                                                                                                                                                                          |
| --------- | ----- | :------: | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `all`     | array |     ✅    | `[{"type":"opens","after":"2025-01-01","before":"2026-12-31","count_greater_than":0}]` | Array of filter conditions where ALL must be met (AND logic). At least one condition is required. Each condition filters subscribers based on engagement type (opens, clicks, sent, delivered, subscribed) with optional count and date constraints. |

***

### `Kit Get Account`

Integration name: **KIT\_GET\_ACCOUNT**

Tool to retrieve current account information. Use after validating API key to fetch account ID, plan type, primary email, and timezone details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Kit Get Account Colors`

Integration name: **KIT\_GET\_ACCOUNT\_COLORS**

Tool to retrieve list of colors associated with the account. Use after confirming authentication to fetch account-specific color palette.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Kit Get Broadcast`

Integration name: **KIT\_GET\_BROADCAST**

Tool to retrieve details of a specific broadcast by ID. Use when you have a valid broadcast ID and need its metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                    |
| --------- | ------- | :------: | ------- | ---------------------------------------------- |
| `id`      | integer |     ✅    | `2786`  | Unique identifier of the broadcast to retrieve |

***

### `Kit Get Broadcast Clicks`

Integration name: **KIT\_GET\_BROADCAST\_CLICKS**

Tool to retrieve link click data for a specific broadcast by ID. Use when you need to analyze which links were clicked and their engagement metrics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example      | Description                                                |
| -------------- | ------- | :------: | ------------ | ---------------------------------------------------------- |
| `after`        | string  |          | `"WzIwXQ=="` | Pagination cursor to retrieve results after this cursor    |
| `before`       | string  |          | `"WzMwXQ=="` | Pagination cursor to retrieve results before this cursor   |
| `per_page`     | integer |          | `100`        | Number of results per page; must be between 1 and 500      |
| `broadcast_id` | integer |     ✅    | `22933243`   | Unique identifier of the broadcast to fetch click data for |

***

### `Kit Get Broadcast Stats`

Integration name: **KIT\_GET\_BROADCAST\_STATS**

Tool to retrieve statistics for a specific broadcast by ID. Use after a broadcast has been sent to monitor performance.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                |
| --------- | ------- | :------: | ------- | ---------------------------------------------------------- |
| `id`      | integer |     ✅    | `123`   | Unique identifier of the broadcast to fetch statistics for |

***

### `Kit Get Creator Profile`

Integration name: **KIT\_GET\_CREATOR\_PROFILE**

Tool to retrieve the creator profile information for the account. Use when you need creator metadata (name, bio, avatar, profile URL) before publishing or customizing content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Kit Get Email Stats`

Integration name: **KIT\_GET\_EMAIL\_STATS**

Tool to retrieve email statistics for the account. Use after confirming authentication to fetch metrics on emails (sent, opened, clicked) over the last 90 days.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Kit Get Growth Stats`

Integration name: **KIT\_GET\_GROWTH\_STATS**

Tool to retrieve growth statistics for the account over a date range. Stats are returned in your sending time zone (not UTC). Defaults to last 90 days if no dates specified.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example        | Description                                                                                    |
| ---------- | ------ | :------: | -------------- | ---------------------------------------------------------------------------------------------- |
| `ending`   | string |          | `"2024-03-31"` | Get stats for time period ending on this date (format yyyy-mm-dd). Defaults to today.          |
| `starting` | string |          | `"2024-01-01"` | Get stats for time period beginning on this date (format yyyy-mm-dd). Defaults to 90 days ago. |

***

### `Kit Get Subscriber`

Integration name: **KIT\_GET\_SUBSCRIBER**

Tool to retrieve a specific subscriber by their ID. Use when you need to fetch detailed information about a single subscriber.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                                                       |
| --------- | ------- | :------: | ------------ | ----------------------------------------------------------------- |
| `id`      | integer |     ✅    | `3937322930` | The unique subscriber ID to retrieve. Must be a positive integer. |

***

### `Kit Get Subscriber Stats`

Integration name: **KIT\_GET\_SUBSCRIBER\_STATS**

Tool to retrieve email stats for a specific subscriber. Use when you need subscriber engagement metrics (opens, clicks, bounces, rates). Data only available for events from June 2025 onwards.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example        | Description                                                                                          |
| ------------------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------------------------------- |
| `subscriber_id`     | integer |     ✅    | `3937323835`   | The ID of the subscriber to get stats for                                                            |
| `email_sent_after`  | string  |          | `"2025-06-24"` | Filter to stats for emails sent after this date (YYYY-MM-DD format). Must be on or after 2025-06-24. |
| `email_sent_before` | string  |          | `"2025-12-31"` | Filter to stats for emails sent before this date (YYYY-MM-DD format)                                 |

***

### `Kit List Broadcasts`

Integration name: **KIT\_LIST\_BROADCASTS**

Tool to retrieve a paginated list of all broadcasts. Use when you need to enumerate or review broadcast summaries with cursor-based pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                            |
| --------------------- | ------- | :------: | ----------------- | ---------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"` | Cursor for pagination; returns results after the specified cursor.     |
| `before`              | string  |          | `"cursor_xyz789"` | Cursor for pagination; returns results before the specified cursor.    |
| `per_page`            | integer |          | `100`             | Number of results per page; must be between 1 and 500.                 |
| `include_total_count` | string  |          | `"true"`          | If set to 'true', includes the total count of records in the response. |

***

### `Kit List Custom Fields`

Integration name: **KIT\_LIST\_CUSTOM\_FIELDS**

Tool to retrieve a paginated list of custom fields. Use after confirming you need to enumerate or inspect all custom fields with cursor-based pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                            |
| --------------------- | ------- | :------: | ----------------- | ---------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"` | Cursor for pagination; returns results after the specified cursor.     |
| `before`              | string  |          | `"cursor_xyz789"` | Cursor for pagination; returns results before the specified cursor.    |
| `per_page`            | integer |          | `100`             | Number of results per page; defaults to 500 if not specified.          |
| `include_total_count` | string  |          | `"true"`          | If set to 'true', includes the total count of records in the response. |

***

### `Kit List Email Templates`

Integration name: **KIT\_LIST\_EMAIL\_TEMPLATES**

Retrieve a paginated list of all email templates in the Kit account. Returns template details including ID, name, default status, and category. Supports cursor-based pagination for navigating large template collections. Use this when you need to view or iterate through email templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example              | Description                                                                                                              |
| --------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `after`               | string  |          | `"WzE1MDUyMDc5XQ=="` | Cursor for fetching the next page of results. Use the 'end\_cursor' value from a previous response.                      |
| `before`              | string  |          | `"WzE1MDUyMTA4XQ=="` | Cursor for fetching the previous page of results. Use the 'start\_cursor' value from a previous response.                |
| `per_page`            | integer |          | `100`                | Number of email templates to return per page. Default is 500, maximum is 1000.                                           |
| `include_total_count` | boolean |          | —                    | Include the total count of email templates in the response. Note: This may slow down the response for large collections. |

***

### `Kit List Forms`

Integration name: **KIT\_LIST\_FORMS**

Lists all forms in your Kit account with optional filtering and cursor-based pagination. Use this to retrieve forms when you need to:

* Get all available forms (landing pages and embedded forms)
* Filter by status (active, archived, trashed) or type (embed, hosted)
* Paginate through large collections of forms
* Get form IDs and metadata for other operations

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                                                              |
| --------------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------------------------------------- |
| `type`                | string  |          | `"embed"`         | Filter forms by type.                                                                                    |
| `after`               | string  |          | `"cursor_abc123"` | Cursor for pagination; returns results after the specified cursor.                                       |
| `before`              | string  |          | `"cursor_xyz789"` | Cursor for pagination; returns results before the specified cursor.                                      |
| `status`              | string  |          | `"active"`        | Filter forms by status: 'active' (default), 'archived', 'trashed', or 'all'.                             |
| `per_page`            | integer |          | `25`              | Number of forms to return per page (default: 500, max: 1000).                                            |
| `include_total_count` | boolean |          | `true`            | If set to true, includes the total count of forms in the response (may be slower for large collections). |

***

### `Kit List Segments`

Integration name: **KIT\_LIST\_SEGMENTS**

Tool to retrieve a paginated list of segments. Use when you need to enumerate segments with cursor-based pagination for further processing or display.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                             |
| --------------------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"` | Cursor for pagination; returns results after this cursor.               |
| `before`              | string  |          | `"cursor_xyz789"` | Cursor for pagination; returns results before this cursor.              |
| `per_page`            | integer |          | `25`              | Number of segments to return per page (min 1).                          |
| `include_total_count` | string  |          | `"true"`          | If set to 'true', includes the total count of segments in the response. |

***

### `Kit List Sequences`

Integration name: **KIT\_LIST\_SEQUENCES**

Tool to retrieve a paginated list of all sequences. Use when you need to enumerate sequences with pagination for further processing or display.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example           | Description                                                         |
| --------------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"` | Cursor for pagination; returns results after the specified cursor.  |
| `before`              | string  |          | `"cursor_xyz789"` | Cursor for pagination; returns results before the specified cursor. |
| `per_page`            | integer |          | `100`             | Number of results per page (max 1000, default 500).                 |
| `include_total_count` | string  |          | `"true"`          | If set to 'true', includes the total count in the pagination.       |

***

### `Kit List Subscribers`

Integration name: **KIT\_LIST\_SUBSCRIBERS**

Tool to retrieve a list of subscribers. Use when you need to fetch subscriber records with optional filtering, sorting, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example              | Description                                                                                                                                                                         |
| --------------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"`    | Cursor for pagination; returns subscribers after this cursor.                                                                                                                       |
| `before`              | string  |          | `"cursor_xyz789"`    | Cursor for pagination; returns subscribers before this cursor.                                                                                                                      |
| `status`              | string  |          | `"active"`           | Filter by subscriber status (e.g., 'active' or 'inactive').                                                                                                                         |
| `per_page`            | integer |          | `25`                 | Number of subscribers to return per page (min 1).                                                                                                                                   |
| `sort_field`          | string  |          | `"id"`               | Field by which to sort the subscribers. Must be one of: 'id', 'cancelled\_at', or 'updated\_at'. Note: If 'cancelled\_at' is used, the status parameter must be set to 'cancelled'. |
| `sort_order`          | string  |          | `"asc"`              | Order in which to sort the results.                                                                                                                                                 |
| `created_after`       | string  |          | `"2023-01-01"`       | Filter to subscribers created after this date (YYYY-MM-DD).                                                                                                                         |
| `email_address`       | string  |          | `"user@example.com"` | Exact email address to filter by.                                                                                                                                                   |
| `updated_after`       | string  |          | `"2023-01-01"`       | Filter to subscribers updated after this date (YYYY-MM-DD).                                                                                                                         |
| `created_before`      | string  |          | `"2023-12-31"`       | Filter to subscribers created before this date (YYYY-MM-DD).                                                                                                                        |
| `updated_before`      | string  |          | `"2023-12-31"`       | Filter to subscribers updated before this date (YYYY-MM-DD).                                                                                                                        |
| `include_total_count` | string  |          | `"true"`             | If set to 'true', includes the total count of subscribers in the response.                                                                                                          |

***

### `Kit List Subscribers For Form`

Integration name: **KIT\_LIST\_SUBSCRIBERS\_FOR\_FORM**

Retrieves subscribers for a specific form by ID with optional filtering and cursor-based pagination. Use this action to:

* Get all subscribers who have joined a specific form
* Filter subscribers by when they were added to the form (added\_after/added\_before)
* Filter subscribers by when they were created (created\_after/created\_before)
* Filter by subscriber status (e.g., 'active')
* Navigate through results using cursor-based pagination (after/before cursors)
* Control page size with per\_page parameter
* Optionally get total subscriber count with include\_total\_count='true'

First use KIT\_LIST\_FORMS to get valid form\_id values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                            |
| --------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"`        | Cursor for pagination; returns results after this cursor.              |
| `before`              | string  |          | `"cursor_xyz789"`        | Cursor for pagination; returns results before this cursor.             |
| `status`              | string  |          | `"active"`               | Filter subscribers by status (e.g., 'active').                         |
| `form_id`             | integer |     ✅    | `123`                    | ID of the form whose subscribers you want to retrieve.                 |
| `per_page`            | integer |          | `25`                     | Number of results to return per page (min 1).                          |
| `added_after`         | string  |          | `"2021-01-01T00:00:00Z"` | Return subscribers added to the form after this date/time (ISO 8601).  |
| `added_before`        | string  |          | `"2021-12-31T23:59:59Z"` | Return subscribers added to the form before this date/time (ISO 8601). |
| `created_after`       | string  |          | `"2021-01-01T00:00:00Z"` | Return subscribers created after this date/time (ISO 8601).            |
| `created_before`      | string  |          | `"2021-12-31T23:59:59Z"` | Return subscribers created before this date/time (ISO 8601).           |
| `include_total_count` | string  |          | `"true"`                 | If 'true', includes the total count of subscribers in the response.    |

***

### `Kit List Tags`

Integration name: **KIT\_LIST\_TAGS**

Retrieve a paginated list of all tags in the Kit account. Returns tag details including ID, name, and creation date. Supports cursor-based pagination for navigating large tag collections. Use this when you need to view or iterate through tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example              | Description                                                                                                   |
| --------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------- |
| `after`               | string  |          | `"WzE1MDUyMDc5XQ=="` | Cursor for fetching the next page of results. Use the 'end\_cursor' value from a previous response.           |
| `before`              | string  |          | `"WzE1MDUyMTA4XQ=="` | Cursor for fetching the previous page of results. Use the 'start\_cursor' value from a previous response.     |
| `per_page`            | integer |          | `100`                | Number of tags to return per page. Default is 500, maximum is 1000.                                           |
| `include_total_count` | boolean |          | —                    | Include the total count of tags in the response. Note: This may slow down the response for large collections. |

***

### `Kit List Tag Subscribers`

Integration name: **KIT\_LIST\_TAG\_SUBSCRIBERS**

Tool to retrieve subscribers for a specific tag. Use after confirming the tag ID when you need to list subscribers associated with a tag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                            |
| --------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------- |
| `after`               | string  |          | `"cursor_abc123"`        | Cursor for pagination; returns subscribers after this cursor.          |
| `before`              | string  |          | `"cursor_xyz789"`        | Cursor for pagination; returns subscribers before this cursor.         |
| `status`              | string  |          | `"active"`               | Filter by subscriber status ('active' or 'inactive').                  |
| `tag_id`              | integer |     ✅    | `123`                    | Unique identifier of the tag to retrieve subscribers for               |
| `per_page`            | integer |          | `25`                     | Number of subscribers to return per page (min 1).                      |
| `tagged_after`        | string  |          | `"2023-01-01T00:00:00Z"` | Filter to subscribers tagged after this timestamp (ISO 8601).          |
| `created_after`       | string  |          | `"2023-01-01T00:00:00Z"` | Filter to subscribers created after this timestamp (ISO 8601).         |
| `tagged_before`       | string  |          | `"2023-12-31T23:59:59Z"` | Filter to subscribers tagged before this timestamp (ISO 8601).         |
| `created_before`      | string  |          | `"2023-12-31T23:59:59Z"` | Filter to subscribers created before this timestamp (ISO 8601).        |
| `include_total_count` | string  |          | `"true"`                 | If set to 'true', includes total count of subscribers in the response. |

***

### `Kit List Webhooks`

Integration name: **KIT\_LIST\_WEBHOOKS**

Retrieve a paginated list of all webhooks configured in the Kit account. Returns webhook details including ID, event type, and target URL. Supports cursor-based pagination for navigating large webhook collections. Use this when you need to view or iterate through webhooks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example              | Description                                                                                               |
| ---------- | ------- | :------: | -------------------- | --------------------------------------------------------------------------------------------------------- |
| `after`    | string  |          | `"WzE1MDUyMDc5XQ=="` | Cursor for fetching the next page of results. Use the 'end\_cursor' value from a previous response.       |
| `before`   | string  |          | `"WzE1MDUyMTA4XQ=="` | Cursor for fetching the previous page of results. Use the 'start\_cursor' value from a previous response. |
| `per_page` | integer |          | `100`                | Number of webhooks to return per page. Default is 500, maximum is 1000.                                   |

***

### `Kit Remove Tag From Subscriber`

Integration name: **KIT\_REMOVE\_TAG\_FROM\_SUBSCRIBER**

Tool to remove a tag from a subscriber using their subscriber ID. Use when you need to untag a subscriber from a specific tag after confirming both tag and subscriber IDs exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example      | Description                                            |
| --------------- | ------- | :------: | ------------ | ------------------------------------------------------ |
| `tag_id`        | integer |     ✅    | `15052356`   | The unique ID of the tag to remove from the subscriber |
| `subscriber_id` | integer |     ✅    | `3937323879` | The unique ID of the subscriber to remove the tag from |

***

### `Kit Tag Subscriber`

Integration name: **KIT\_TAG\_SUBSCRIBER**

Tool to associate a subscriber with a specific tag by ID. Use after confirming tag and subscriber IDs when tagging a subscriber.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                 |
| --------------- | ------- | :------: | ------- | --------------------------- |
| `tag_id`        | integer |     ✅    | `123`   | ID of the tag to assign     |
| `subscriber_id` | integer |     ✅    | `456`   | ID of the subscriber to tag |

***

### `Kit Tag Subscriber By Email`

Integration name: **KIT\_TAG\_SUBSCRIBER\_BY\_EMAIL**

Assigns a tag to an existing subscriber using their email address. The subscriber must already exist in your Kit account. Returns the subscriber's details including the timestamp when they were tagged. Use when you have a valid tag ID and the subscriber's email address.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                                                            |
| --------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------- |
| `tag_id`        | integer |     ✅    | `123`                | The ID of the tag to assign to the subscriber                                          |
| `email_address` | string  |     ✅    | `"user@example.com"` | The subscriber's email address. The subscriber must already exist in your Kit account. |

***

### `Kit Untag Subscriber By Email`

Integration name: **KIT\_UNTAG\_SUBSCRIBER\_BY\_EMAIL**

Tool to remove a tag from a subscriber using their email address. Use when you need to untag an existing subscriber after confirming both the tag ID and subscriber's email address are valid.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example              | Description                                                                                          |
| --------------- | ------- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------- |
| `tag_id`        | integer |     ✅    | `123`                | The ID of the tag to remove from the subscriber                                                      |
| `email_address` | string  |     ✅    | `"user@example.com"` | The email address of the subscriber to untag. The subscriber must already exist in your Kit account. |

***

### `Kit Update Account Colors`

Integration name: **KIT\_UPDATE\_ACCOUNT\_COLORS**

Tool to update the list of colors for the account. Use when customizing your Kit account's color palette for broadcasts and templates. Maximum 5 hex color codes allowed per account.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                 | Description                                                                                            |
| --------- | ----- | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------ |
| `colors`  | array |     ✅    | `["#008000","#FF0000"]` | List of hex color codes to set for the account (e.g., '#008000', '#FF0000'). Maximum 5 colors allowed. |

***

### `Kit Update Custom Field`

Integration name: **KIT\_UPDATE\_CUSTOM\_FIELD**

Tool to update a custom field's label. Use after listing or retrieving custom fields and confirming the field ID to rename.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                    | Description                                     |
| --------- | ------- | :------: | -------------------------- | ----------------------------------------------- |
| `id`      | integer |     ✅    | `123`                      | Unique identifier of the custom field to update |
| `label`   | string  |     ✅    | `"New Custom Field Label"` | New label for the custom field                  |

***

### `Kit Update Subscriber`

Integration name: **KIT\_UPDATE\_SUBSCRIBER**

Tool to update an existing subscriber's information. Use when you need to modify a subscriber's first name, email address, or custom fields. Supports updating up to 140 custom fields at a time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                           | Description                                                                                                                                               |
| --------------- | ------- | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`            | integer |     ✅    | `3937323106`                                      | The unique subscriber ID to update. Must be a positive integer. Use KIT\_LIST\_SUBSCRIBERS to find valid subscriber IDs.                                  |
| `fields`        | object  |          | `{"company":"Acme Corp","favorite_color":"blue"}` | Custom fields as key-value pairs. Maximum 140 custom fields can be updated at a time. The API will ignore custom fields that don't exist in your account. |
| `first_name`    | string  |          | `"UpdatedUser"`                                   | The subscriber's first name to update.                                                                                                                    |
| `email_address` | string  |          | `"test_updated_subscriber@example.com"`           | The subscriber's email address to update.                                                                                                                 |

***

### `Kit Update Tag`

Integration name: **KIT\_UPDATE\_TAG**

Tool to update a tag's name by ID. Use after retrieving tag ID and confirming the new name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                            |
| --------- | ------- | :------: | --------------- | -------------------------------------- |
| `id`      | integer |     ✅    | `123`           | Unique identifier of the tag to update |
| `name`    | string  |     ✅    | `"Summer Sale"` | New name for the tag                   |


# Klaviyo

Your Toolhouse AI Worker can connect to Klaviyo using 225 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](https://toolhouse.app/auth-connections?authkit_slugs=klaviyo).

## Tools (225)

### `Klaviyo Add Profile To List`

Integration name: **KLAVIYO\_ADD\_PROFILE\_TO\_LIST**

Add profiles to a Klaviyo list by profile IDs or email addresses. This action subscribes profiles to a marketing list, which is ideal for giving marketing consent. You can add up to 1000 profiles per call using either their Klaviyo profile IDs or email addresses. Rate limits: 10/s burst, 150/m steady. Required scopes: `lists:write` and `profiles:write`. Preconditions: - Either profile\_ids or emails must be provided (not both) - Maximum 1000 profiles per call - Email addresses must be valid format - The list must exist and be accessible

#### Parameters

| Parameter     | Type   | Required | Example                                                       | Description                                                              |
| ------------- | ------ | :------: | ------------------------------------------------------------- | ------------------------------------------------------------------------ |
| `emails`      | array  |          | `["user1@example.com","user2@example.com"]`                   | List of email addresses to add to the list (alternative to profile\_ids) |
| `list_id`     | string |     ✅    | `"QRXm9k"`                                                    | The ID of the list to add profiles to                                    |
| `profile_ids` | array  |          | `["01HS3XYN7G7XS49CA9VR8TV123","01J4PBK0HYDM23RCPV9JFRHE2Y"]` | List of profile IDs to add to the list (max 1000 per call)               |

***

### `Klaviyo Assign Campaign Message Template`

Integration name: **KLAVIYO\_ASSIGN\_CAMPAIGN\_MESSAGE\_TEMPLATE**

Creates a non-reusable version of the template and assigns it to the message.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:write`

#### Parameters

| Parameter                                   | Type   | Required | Example | Description                                                                                                                                               |
| ------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__id`                                  | string |     ✅    | —       | The unique identifier of the campaign message to assign the template to. Obtained from campaign creation or get campaign messages endpoints.              |
| `data__type`                                | string |          | —       | Resource type for the campaign message. Must be 'campaign-message'.                                                                                       |
| `data__relationships__template__data__id`   | string |     ✅    | —       | The unique identifier of the template to assign to the campaign message. A non-reusable clone of this template will be created and linked to the message. |
| `data__relationships__template__data__type` | string |          | —       | Resource type for the template. Must be 'template'.                                                                                                       |

***

### `Klaviyo Bulk Create Client Events`

Integration name: **KLAVIYO\_BULK\_CREATE\_CLIENT\_EVENTS**

Use the client-side endpoint with a public API key to track profile activity. It accepts up to 1000 events/request with rates of 10/s burst and 150/m steady. For server-side, use the bulk create event endpoint.

#### Parameters

| Parameter                                                        | Type   | Required | Example | Description                                                                                                                                                                                                           |
| ---------------------------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `company_id`                                                     | string |     ✅    | —       | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.                                                                                          |
| `data__type`                                                     | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__events__data`                                 | array  |          | —       | Data                                                                                                                                                                                                                  |
| `data__attributes__profile__data__id`                            | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                              |
| `data__attributes__profile__data__type`                          | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__profile__data__attributes____kx`              | string |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint. |
| `data__attributes__profile__data__attributes__email`             | string |          | —       | Individual"s email address                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__image`             | string |          | —       | URL pointing to the location of a profile image                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__title`             | string |          | —       | Individual"s job title                                                                                                                                                                                                |
| `data__attrs__profile__data__attrs__location__address1`          | string |          | —       | First line of street address                                                                                                                                                                                          |
| `data__attrs__profile__data__attrs__location__address2`          | string |          | —       | Second line of street address                                                                                                                                                                                         |
| `data__attrs__profile__data__attrs__location__latitude`          | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__timezone`          | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                       |
| `data__attrs__profile__data__meta__patch__props__unset`          | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                    |
| `data__attrs__profile__data__attrs__location__longitude`         | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                      |
| `data__attributes__profile__data__attributes__last__name`        | string |          | —       | Individual"s last name                                                                                                                                                                                                |
| `data__attributes__profile__data__attributes__first__name`       | string |          | —       | Individual"s first name                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes__external__id`      | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                  |
| `data__attributes__profile__data__attributes__location__ip`      | string |          | —       | IP Address                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__organization`      | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                  |
| `data__attributes__profile__data__attributes__anonymous__id`     | string |          | —       | Anonymous Id                                                                                                                                                                                                          |
| `data__attributes__profile__data__attributes__location__zip`     | string |          | —       | Zip code                                                                                                                                                                                                              |
| `data__attributes__profile__data__attributes__phone__number`     | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__city`    | string |          | —       | City name                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__region`  | string |          | —       | Region within a country, such as state or province                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__country` | string |          | —       | Country name                                                                                                                                                                                                          |

***

### `Klaviyo Bulk Create Events`

Integration name: **KLAVIYO\_BULK\_CREATE\_EVENTS**

Bulk create events for multiple profiles in a single request. Accepts up to 1,000 events with a 5MB max payload. Each event requires a profile identifier (email, phone\_number, or external\_id) and a metric name. Events are processed asynchronously; a 202 response indicates acceptance, not completion. Rate limits: 10/s burst, 150/min steady.

#### Parameters

| Parameter                                      | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ---------------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data__type`                                   | string |          | —       | Resource type identifier. Must be 'event-bulk-create-job'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `data__attributes__events__bulk__create__data` | array  |     ✅    | —       | Array of event-bulk-create objects (max 1000). Each object contains: 1) 'type': must be 'event-bulk-create', 2) 'attributes': contains 'profile' (with data.type='profile' and data.attributes containing at least one identifier like email/phone\_number/external\_id) and 'events' (with data array of event objects, each having type='event' and attributes with 'metric' containing data.type='metric' and data.attributes.name, plus 'properties' object). Example: \[{"type":"event-bulk-create","attributes":{"profile":{"data":{"type":"profile","attributes":{"email":"<user@example.com>"}}},"events":{"data":\[{"type":"event","attributes":{"metric":{"data":{"type":"metric","attributes":{"name":"Viewed Product"}}},"properties":{"product\_id":"123"}}}]}}}] |

***

### `Klaviyo Cancel Campaign Send`

Integration name: **KLAVIYO\_CANCEL\_CAMPAIGN\_SEND**

Cancel or revert a campaign send job. Use 'cancel' to permanently stop a campaign (status becomes CANCELED), or 'revert' to return it to DRAFT for editing. This action modifies a campaign send job that is currently queued or sending. The cancel action is irreversible and sets the status to CANCELED. The revert action returns the campaign to DRAFT status, allowing further modifications. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign send job ID must exist and be accessible - Campaign must be in a state that allows cancellation (queued or sending)

#### Parameters

| Parameter              | Type   | Required | Example                        | Description                                                                                                                                                                  |
| ---------------------- | ------ | :------: | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `action`               | string |          | —                              | The action to perform. 'cancel' permanently cancels the campaign (status becomes CANCELED, irreversible). 'revert' returns the campaign to DRAFT status for further editing. |
| `campaign_send_job_id` | string |     ✅    | `"01KFTA19C27H8M8CVX876YPT2T"` | The unique identifier of the campaign send job to cancel or revert. This is the ID returned when creating a campaign send job.                                               |

***

### `Klaviyo Create Back In Stock Subscription`

Integration name: **KLAVIYO\_CREATE\_BACK\_IN\_STOCK\_SUBSCRIPTION**

Use the server-side endpoint to subscribe to restock alerts, following the Back in Stock API guide. For client-side, use the POST endpoint provided. Rate limits: 350/s burst and 3500/m steady. Required scopes: catalogs:write, profiles:write.

#### Parameters

| Parameter                                                    | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                                 | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__channels`                                 | array  |          | —       | The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).                                                                                                                                                                                                    |
| `data__attributes__profile__data__id`                        | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                                                                                                                                                                                                                         |
| `data__attributes__profile__data__type`                      | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__relationships__variant__data__id`                     | string |          | —       | The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the "catalogId" will be `$default`. For Shopify `$shopify:::$default:::33001893429341` |
| `data__relationships__variant__data__type`                   | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__email`         | string |          | —       | Individual"s email address                                                                                                                                                                                                                                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__external__id`  | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__anonymous__id` | string |          | —       | Anonymous Id                                                                                                                                                                                                                                                                                                                                                                                                     |
| `data__attributes__profile__data__attributes__phone__number` | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Klaviyo Create Campaign`

Integration name: **KLAVIYO\_CREATE\_CAMPAIGN**

Creates a campaign given a set of parameters, then returns it.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:write`

#### Parameters

| Parameter                                                        | Type    | Required | Example | Description                                                                                                                                    |
| ---------------------------------------------------------------- | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                                     | string  |          | —       | Type                                                                                                                                           |
| `data__attributes__name`                                         | string  |          | —       | The campaign name                                                                                                                              |
| `data__attributes__send__options`                                | object  |          | —       | Options to use when sending a campaign                                                                                                         |
| `data__attributes__tracking__options`                            | object  |          | —       | The tracking options associated with the campaign                                                                                              |
| `data__attributes__audiences__excluded`                          | array   |          | —       | An optional list of excluded audiences                                                                                                         |
| `data__attributes__audiences__included`                          | array   |          | —       | A list of included audiences                                                                                                                   |
| `data__attributes__send__strategy__method`                       | string  |          | —       | Describes the shape of the options object. Allowed values: \["static", "throttled", "immediate", "smart\_send\_time"]                          |
| `data__attributes__campaign__messages__data`                     | array   |          | —       | Data                                                                                                                                           |
| `data__attributes__send__strategy__options__sto__date`           | string  |          | —       | The day to send on                                                                                                                             |
| `data__attrs__send__strategy__options__throttled__datetime`      | string  |          | —       | The time to send at                                                                                                                            |
| `data__attributes__send__strategy__options__static__datetime`    | string  |          | —       | The time to send at                                                                                                                            |
| `data__attributes__send__strategy__options__static__is__local`   | boolean |          | —       | If the campaign should be sent with local recipient timezone send (requires UTC time) or statically sent at the given time. Defaults to False. |
| `data__attrs__send__strategy__options__static__past__recipients` | boolean |          | —       | Determines if we should send to local recipient timezone if the given time has passed. Only applicable to local sends. Defaults to False.      |
| `data__attrs__send__strategy__options__throttled__throttle__pct` | integer |          | —       | The percentage of recipients per hour to send to. Allowed values: \[10, 11, 13, 14, 17, 20, 25, 33, 50]                                        |

***

### `Klaviyo Create Campaign Clone`

Integration name: **KLAVIYO\_CREATE\_CAMPAIGN\_CLONE**

Clones an existing campaign, returning a new campaign based on the original with a new ID and name.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:write`

#### Parameters

| Parameter                     | Type   | Required | Example | Description                          |
| ----------------------------- | ------ | :------: | ------- | ------------------------------------ |
| `data__id`                    | string |          | —       | The campaign ID to be cloned         |
| `data__type`                  | string |          | —       | Type                                 |
| `data__attributes__new__name` | string |          | —       | The name for the new cloned campaign |

***

### `Klaviyo Create Campaign Recipient Estimation Job`

Integration name: **KLAVIYO\_CREATE\_CAMPAIGN\_RECIPIENT\_ESTIMATION\_JOB**

Start an asynchronous task to estimate the number of recipients for a campaign. This action creates a background job that calculates how many profiles would receive the campaign based on its current audience settings. Use the job ID returned to track progress with the 'Get Campaign Recipient Estimation Job' action, and get the final count via 'Get Campaign Recipient Estimation' action. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign ID must exist and be accessible - Campaign must have audience settings configured

#### Parameters

| Parameter     | Type   | Required | Example                        | Description                                                |
| ------------- | ------ | :------: | ------------------------------ | ---------------------------------------------------------- |
| `campaign_id` | string |     ✅    | `"01GDDKASAP8TKDDA2GRZDSVP4H"` | The ID of the campaign to perform recipient estimation for |

***

### `Klaviyo Create Campaign Send Job`

Integration name: **KLAVIYO\_CREATE\_CAMPAIGN\_SEND\_JOB**

Trigger a campaign to send asynchronously\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:write`

#### Parameters

| Parameter    | Type   | Required | Example | Description                                                                                                                                                 |
| ------------ | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__id`   | string |     ✅    | —       | The unique identifier (ID) of the campaign to send. The campaign must have a template assigned to its message and a subject line set before it can be sent. |
| `data__type` | string |          | —       | Resource type identifier. Must be 'campaign-send-job'.                                                                                                      |

***

### `Klaviyo Create Catalog Category`

Integration name: **KLAVIYO\_CREATE\_CATALOG\_CATEGORY**

Create a new catalog category.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter                             | Type   | Required | Example | Description                                                  |
| ------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------ |
| `data__type`                          | string |          | —       | Type                                                         |
| `data__attributes__name`              | string |          | —       | The name of the catalog category.                            |
| `data__attributes__external__id`      | string |          | —       | The ID of the catalog category in an external system.        |
| `data__attributes__catalog__type`     | string |          | —       | The type of catalog. Currently only "$default" is supported. |
| `data__relationships__items__data`    | array  |          | —       | Data                                                         |
| `data__attributes__integration__type` | string |          | —       | The integration type. Currently only "$custom" is supported. |

***

### `Klaviyo Create Catalog Category Relationships Items`

Integration name: **KLAVIYO\_CREATE\_CATALOG\_CATEGORY\_RELATIONSHIPS\_ITEMS**

Create a new item relationship for the given category ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                  |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The ID of the catalog category. Must be URL-encoded for the API request.                                                     |
| `data`    | array  |     ✅    | —       | List of catalog item resource identifiers to add to the category. Each item should have 'type': 'catalog-item' and 'id': ''. |

***

### `Klaviyo Create Catalog Item`

Integration name: **KLAVIYO\_CREATE\_CATALOG\_ITEM**

Create a new catalog item.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter                                 | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                       |
| ----------------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                              | string  |          | —       | Type                                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__url`                   | string  |          | —       | URL pointing to the location of the catalog item on your website.                                                                                                                                                                                                                                                                                 |
| `data__attributes__price`                 | number  |          | —       | This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant). |
| `data__attributes__title`                 | string  |          | —       | The title of the catalog item.                                                                                                                                                                                                                                                                                                                    |
| `data__attributes__images`                | array   |          | —       | List of URLs pointing to the locations of images of the catalog item.                                                                                                                                                                                                                                                                             |
| `data__attributes__published`             | boolean |          | —       | Boolean value indicating whether the catalog item is published.                                                                                                                                                                                                                                                                                   |
| `data__attributes__description`           | string  |          | —       | A description of the catalog item.                                                                                                                                                                                                                                                                                                                |
| `data__attributes__external__id`          | string  |          | —       | The ID of the catalog item in an external system.                                                                                                                                                                                                                                                                                                 |
| `data__attributes__catalog__type`         | string  |          | —       | The type of catalog. Currently only "$default" is supported.                                                                                                                                                                                                                                                                                      |
| `data__attributes__image__full__url`      | string  |          | —       | URL pointing to the location of a full image of the catalog item.                                                                                                                                                                                                                                                                                 |
| `data__attributes__integration__type`     | string  |          | —       | The integration type. Currently only "$custom" is supported.                                                                                                                                                                                                                                                                                      |
| `data__relationships__categories__data`   | array   |          | —       | Data                                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__image__thumbnail__url` | string  |          | —       | URL pointing to the location of an image thumbnail of the catalog item                                                                                                                                                                                                                                                                            |

***

### `Klaviyo Create Catalog Item Relationships Categories`

Integration name: **KLAVIYO\_CREATE\_CATALOG\_ITEM\_RELATIONSHIPS\_CATEGORIES**

Create a new catalog category relationship for the given item ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                  |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The ID of the catalog item (e.g., '$custom:::$default:::my-item-id'). Will be automatically URL-encoded for the API request.                                                 |
| `data`    | array  |     ✅    | —       | List of catalog category resource identifiers to add to the item. Each entry should have 'type': 'catalog-category' and 'id': '' (e.g., '$custom:::$default:::my-category'). |

***

### `Klaviyo Create Catalog Variant`

Integration name: **KLAVIYO\_CREATE\_CATALOG\_VARIANT**

Create a new variant for a related catalog item.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter                                 | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                       |
| ----------------------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                              | string  |          | —       | Type                                                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__sku`                   | string  |          | —       | The SKU of the catalog item variant.                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__url`                   | string  |          | —       | URL pointing to the location of the catalog item variant on your website.                                                                                                                                                                                                                                                                                         |
| `data__attributes__price`                 | number  |          | —       | This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).          |
| `data__attributes__title`                 | string  |          | —       | The title of the catalog item variant.                                                                                                                                                                                                                                                                                                                            |
| `data__attributes__images`                | array   |          | —       | List of URLs pointing to the locations of images of the catalog item variant.                                                                                                                                                                                                                                                                                     |
| `data__attributes__published`             | boolean |          | —       | Boolean value indicating whether the catalog item variant is published.                                                                                                                                                                                                                                                                                           |
| `data__attributes__description`           | string  |          | —       | A description of the catalog item variant.                                                                                                                                                                                                                                                                                                                        |
| `data__attributes__external__id`          | string  |          | —       | The ID of the catalog item variant in an external system.                                                                                                                                                                                                                                                                                                         |
| `data__attributes__catalog__type`         | string  |          | —       | The type of catalog. Currently only "$default" is supported.                                                                                                                                                                                                                                                                                                      |
| `data__attributes__image__full__url`      | string  |          | —       | URL pointing to the location of a full image of the catalog item variant.                                                                                                                                                                                                                                                                                         |
| `data__attributes__integration__type`     | string  |          | —       | The integration type. Currently only "$custom" is supported.                                                                                                                                                                                                                                                                                                      |
| `data__attributes__inventory__policy`     | integer |          | —       | This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values: `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock. `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity. |
| `data__relationships__item__data__id`     | string  |          | —       | The original catalog item ID for which this is a variant.                                                                                                                                                                                                                                                                                                         |
| `data__attributes__inventory__quantity`   | number  |          | —       | The quantity of the catalog item variant currently in stock.                                                                                                                                                                                                                                                                                                      |
| `data__relationships__item__data__type`   | string  |          | —       | Type                                                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__image__thumbnail__url` | string  |          | —       | URL pointing to the location of an image thumbnail of the catalog item variant.                                                                                                                                                                                                                                                                                   |

***

### `Klaviyo Create Client Back In Stock Subscription`

Integration name: **KLAVIYO\_CREATE\_CLIENT\_BACK\_IN\_STOCK\_SUBSCRIPTION**

Use the endpoint for client-side back in stock notifications with a public API key. For server-side, use POST /api/back-in-stock-subscriptions. Limits are 350 requests per second and 3500 per minute. Requires 'catalogs:write' and 'profiles:write' scopes.

#### Parameters

| Parameter                                                    | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `company_id`                                                 | string |     ✅    | —       | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.                                                                                                                                                                                                                                                                                     |
| `data__type`                                                 | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__channels`                                 | array  |          | —       | The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).                                                                                                                                                                                                    |
| `data__attributes__profile__data__id`                        | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                                                                                                                                                                                                                         |
| `data__attributes__profile__data__type`                      | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__relationships__variant__data__id`                     | string |          | —       | The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the "catalogId" will be `$default`. For Shopify `$shopify:::$default:::33001893429341` |
| `data__relationships__variant__data__type`                   | string |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__email`         | string |          | —       | Individual"s email address                                                                                                                                                                                                                                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__external__id`  | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__anonymous__id` | string |          | —       | Anonymous Id                                                                                                                                                                                                                                                                                                                                                                                                     |
| `data__attributes__profile__data__attributes__phone__number` | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Klaviyo Create Client Event2`

Integration name: **KLAVIYO\_CREATE\_CLIENT\_EVENT2**

Create a client-side event in Klaviyo to track user interactions. This action uses the company\_id in the request body instead of as a query parameter. Use when tracking events from publicly-browseable, client-side environments with a public API key.

#### Parameters

| Parameter              | Type   | Required | Example                                         | Description                                                                                                               |
| ---------------------- | ------ | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `ip`                   | string |          | `"192.168.1.1"`                                 | IP address                                                                                                                |
| `city`                 | string |          | `"New York"`                                    | City name                                                                                                                 |
| `image`                | string |          | `"https://example.com/image.jpg"`               | URL to profile image                                                                                                      |
| `title`                | string |          | `"Software Engineer"`                           | Profile's job title                                                                                                       |
| `region`               | string |          | `"NY"`                                          | Region/state                                                                                                              |
| `country`              | string |          | `"United States"`                               | Country name                                                                                                              |
| `address1`             | string |          | `"123 Main St"`                                 | First line of street address                                                                                              |
| `address2`             | string |          | `"Apt 4B"`                                      | Second line of street address                                                                                             |
| `latitude`             | string |          | `"40.7128"`                                     | Latitude coordinate                                                                                                       |
| `timezone`             | string |          | `"America/New_York"`                            | Timezone                                                                                                                  |
| `zip_code`             | string |          | `"10001"`                                       | Zip code                                                                                                                  |
| `last_name`            | string |          | `"Doe"`                                         | Profile's last name                                                                                                       |
| `longitude`            | string |          | `"-74.0060"`                                    | Longitude coordinate                                                                                                      |
| `unique_id`            | string |          | —                                               | Unique identifier for the event to prevent duplicates                                                                     |
| `company_id`           | string |     ✅    | `"UmABLy"`                                      | Your Public API Key / Site ID for client-side tracking. This appears in both the event attributes and profile attributes. |
| `event_time`           | string |          | —                                               | When the event occurred. Defaults to current time if not provided.                                                        |
| `first_name`           | string |          | `"John"`                                        | Profile's first name                                                                                                      |
| `properties`           | object |          | `{"category":"electronics","product_id":"123"}` | Custom properties for the event                                                                                           |
| `event_value`          | number |          | `29.99`                                         | Monetary value associated with the event (e.g., purchase amount)                                                          |
| `metric_name`          | string |     ✅    | `"Viewed Product"`                              | Name of the event metric. Must be less than 128 characters.                                                               |
| `organization`         | string |          | `"Example Corp"`                                | Profile's organization                                                                                                    |
| `profile_email`        | string |          | `"user@example.com"`                            | Email address of the profile to associate with the event                                                                  |
| `value_currency`       | string |          | `"USD"`                                         | Currency code for the event value (ISO 4217)                                                                              |
| `profile_properties`   | object |          | `{"favorite_color":"blue"}`                     | Custom properties to update on the profile                                                                                |
| `profile_external_id`  | string |          | `"customer_123"`                                | External ID of the profile                                                                                                |
| `profile_anonymous_id` | string |          | —                                               | Anonymous ID of the profile                                                                                               |
| `profile_phone_number` | string |          | `"+1234567890"`                                 | Phone number of the profile in E.164 format                                                                               |

***

### `Klaviyo Create Client Subscription`

Integration name: **KLAVIYO\_CREATE\_CLIENT\_SUBSCRIPTION**

Endpoint manages email/SMS opt-ins using consent and requires public API key for client use. Allows single-channel with details. Rate limit: 100/s burst, 700/m steady, under 'subscriptions:write'.

#### Parameters

| Parameter                                                        | Type   | Required | Example | Description                                                                                                                                                                                                           |
| ---------------------------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `company_id`                                                     | string |     ✅    | —       | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.                                                                                          |
| `data__type`                                                     | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__custom__source`                               | string |          | —       | A custom method detail or source to store on the consent records for this subscription.                                                                                                                               |
| `data__attributes__profile__data__id`                            | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                              |
| `data__relationships__list__data__id`                            | string |          | —       | The list ID to add the newly subscribed profile to.                                                                                                                                                                   |
| `data__attributes__profile__data__type`                          | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__relationships__list__data__type`                          | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__profile__data__attributes____kx`              | string |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint. |
| `data__attributes__profile__data__attributes__email`             | string |          | —       | Individual"s email address                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__image`             | string |          | —       | URL pointing to the location of a profile image                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__title`             | string |          | —       | Individual"s job title                                                                                                                                                                                                |
| `data__attrs__profile__data__attrs__location__address1`          | string |          | —       | First line of street address                                                                                                                                                                                          |
| `data__attrs__profile__data__attrs__location__address2`          | string |          | —       | Second line of street address                                                                                                                                                                                         |
| `data__attrs__profile__data__attrs__location__latitude`          | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__timezone`          | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                       |
| `data__attrs__profile__data__meta__patch__props__unset`          | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                    |
| `data__attrs__profile__data__attrs__location__longitude`         | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                      |
| `data__attributes__profile__data__attributes__last__name`        | string |          | —       | Individual"s last name                                                                                                                                                                                                |
| `data__attributes__profile__data__attributes__first__name`       | string |          | —       | Individual"s first name                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes__external__id`      | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                  |
| `data__attributes__profile__data__attributes__location__ip`      | string |          | —       | IP Address                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__organization`      | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                  |
| `data__attributes__profile__data__attributes__anonymous__id`     | string |          | —       | Id that can be used to identify a profile when other identifiers are not available                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__zip`     | string |          | —       | Zip code                                                                                                                                                                                                              |
| `data__attributes__profile__data__attributes__phone__number`     | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__city`    | string |          | —       | City name                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__region`  | string |          | —       | Region within a country, such as state or province                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__country` | string |          | —       | Country name                                                                                                                                                                                                          |

***

### `Klaviyo Create Coupon`

Integration name: **KLAVIYO\_CREATE\_COUPON**

Creates a new coupon.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `coupons:write`

#### Parameters

| Parameter                        | Type   | Required | Example | Description                                                                 |
| -------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------- |
| `data__type`                     | string |          | —       | Type                                                                        |
| `data__attributes__description`  | string |          | —       | A description of the coupon.                                                |
| `data__attributes__external__id` | string |          | —       | This is the id that is stored in an integration such as Shopify or Magento. |

***

### `Klaviyo Create Coupon Code`

Integration name: **KLAVIYO\_CREATE\_COUPON\_CODE**

Synchronously creates a coupon code for the given coupon.\
\
\&#xNAN;*Rate limits*:\
Burst: `350/s`\
Steady: `3500/m` **Scopes:** `coupon-codes:write`

#### Parameters

| Parameter                                 | Type   | Required | Example | Description                                                                                                              |
| ----------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------ |
| `data__type`                              | string |          | —       | Type                                                                                                                     |
| `data__attributes__expires__at`           | string |          | —       | The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. |
| `data__attributes__unique__code`          | string |          | —       | This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.            |
| `data__relationships__coupon__data__id`   | string |          | —       | Id                                                                                                                       |
| `data__relationships__coupon__data__type` | string |          | —       | Type                                                                                                                     |

***

### `Klaviyo Create Event`

Integration name: **KLAVIYO\_CREATE\_EVENT**

Create or update a profile event with minimum identifiers and metric name. Success means validation, not completion. Burst limit: 350/s, Steady: 3500/m. Scope required: `events:write`.

#### Parameters

| Parameter                                                        | Type    | Required | Example | Description                                                                                                                                                                                                                                                                           |
| ---------------------------------------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                                     | string  |          | —       | Type                                                                                                                                                                                                                                                                                  |
| `data__attributes__time`                                         | string  |          | —       | When this event occurred. By default, the time the request was received will be used. The time is truncated to the second. The time must be after the year 2000 and can only be up to 1 year in the future.                                                                           |
| `data__attributes__value`                                        | integer |          | —       | A numeric, monetary value to associate with this event. For example, the dollar amount of a purchase.                                                                                                                                                                                 |
| `data__attributes__properties`                                   | object  |          | —       | Custom properties of the event. Use this to store additional data about the event. Non-object properties can be used for creating segments. Use the '$extra' key for non-segmentable values like HTML templates. Defaults to an empty object if not provided.                         |
| `data__attributes__unique__id`                                   | string  |          | —       | A unique identifier for an event. If the unique\_id is repeated for the same profile and metric, only the first processed event will be recorded. If this is not present, this will use the time to the second. Using the default, this limits only one event per profile per second. |
| `data__attributes__value__currency`                              | string  |          | —       | The ISO 4217 currency code of the value associated with the event.                                                                                                                                                                                                                    |
| `data__attributes__profile__data__id`                            | string  |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                                                                                              |
| `data__attributes__metric__data__type`                           | string  |          | —       | Type                                                                                                                                                                                                                                                                                  |
| `data__attributes__profile__data__type`                          | string  |          | —       | Type                                                                                                                                                                                                                                                                                  |
| `data__attributes__metric__data__attributes__name`               | string  |          | —       | Name of the event. Must be less than 128 characters.                                                                                                                                                                                                                                  |
| `data__attributes__profile__data__attributes____kx`              | string  |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.                                                                 |
| `data__attributes__profile__data__attributes__email`             | string  |          | —       | Individual"s email address                                                                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__image`             | string  |          | —       | URL pointing to the location of a profile image                                                                                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__title`             | string  |          | —       | Individual"s job title                                                                                                                                                                                                                                                                |
| `data__attributes__metric__data__attributes__service`            | string  |          | —       | This is for advanced usage. For api requests, this should use the default, which is set to api.                                                                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__address1`          | string  |          | —       | First line of street address                                                                                                                                                                                                                                                          |
| `data__attrs__profile__data__attrs__location__address2`          | string  |          | —       | Second line of street address                                                                                                                                                                                                                                                         |
| `data__attrs__profile__data__attrs__location__latitude`          | string  |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__timezone`          | string  |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__longitude`         | string  |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                                                                                      |
| `data__attributes__profile__data__attributes__last__name`        | string  |          | —       | Individual"s last name                                                                                                                                                                                                                                                                |
| `data__attributes__profile__data__attributes__first__name`       | string  |          | —       | Individual"s first name                                                                                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes__external__id`      | string  |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                                                                                  |
| `data__attributes__profile__data__attributes__location__ip`      | string  |          | —       | IP Address                                                                                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__organization`      | string  |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                                                                                  |
| `data__attributes__profile__data__attributes__anonymous__id`     | string  |          | —       | Anonymous Id                                                                                                                                                                                                                                                                          |
| `data__attributes__profile__data__attributes__location__zip`     | string  |          | —       | Zip code                                                                                                                                                                                                                                                                              |
| `data__attributes__profile__data__attributes__phone__number`     | string  |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__city`    | string  |          | —       | City name                                                                                                                                                                                                                                                                             |
| `data__attrs__profile__data__attrs__meta__patch__props__unset`   | array   |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__region`  | string  |          | —       | Region within a country, such as state or province                                                                                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__country` | string  |          | —       | Country name                                                                                                                                                                                                                                                                          |

***

### `Klaviyo Create List`

Integration name: **KLAVIYO\_CREATE\_LIST**

Create a new list.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m`\
Daily: `100/d` **Scopes:** `lists:write`

#### Parameters

| Parameter                | Type   | Required | Example | Description                      |
| ------------------------ | ------ | :------: | ------- | -------------------------------- |
| `data__type`             | string |          | —       | Type                             |
| `data__attributes__name` | string |          | —       | A helpful name to label the list |

***

### `Klaviyo Create Or Update Client Profile`

Integration name: **KLAVIYO\_CREATE\_OR\_UPDATE\_CLIENT\_PROFILE**

Update user profiles without tracking using a public client-side API; use a private server-side API for identifier changes. Burst rate is 350 requests/sec and 3500 requests/min with 'profiles:write' access.

#### Parameters

| Parameter                               | Type   | Required | Example | Description                                                                                                                                                                                                           |
| --------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__id`                              | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                              |
| `company_id`                            | string |     ✅    | —       | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.                                                                                          |
| `data__type`                            | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes____kx`                | string |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint. |
| `data__attributes__email`               | string |          | —       | Individual"s email address                                                                                                                                                                                            |
| `data__attributes__image`               | string |          | —       | URL pointing to the location of a profile image                                                                                                                                                                       |
| `data__attributes__title`               | string |          | —       | Individual"s job title                                                                                                                                                                                                |
| `data__attributes__last__name`          | string |          | —       | Individual"s last name                                                                                                                                                                                                |
| `data__attributes__first__name`         | string |          | —       | Individual"s first name                                                                                                                                                                                               |
| `data__attributes__external__id`        | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                  |
| `data__attributes__location__ip`        | string |          | —       | IP Address                                                                                                                                                                                                            |
| `data__attributes__organization`        | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                  |
| `data__attributes__anonymous__id`       | string |          | —       | Anonymous Id                                                                                                                                                                                                          |
| `data__attributes__location__zip`       | string |          | —       | Zip code                                                                                                                                                                                                              |
| `data__attributes__phone__number`       | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                             |
| `data__attributes__location__city`      | string |          | —       | City name                                                                                                                                                                                                             |
| `data__attributes__location__region`    | string |          | —       | Region within a country, such as state or province                                                                                                                                                                    |
| `data__attributes__location__country`   | string |          | —       | Country name                                                                                                                                                                                                          |
| `data__attributes__location__address1`  | string |          | —       | First line of street address                                                                                                                                                                                          |
| `data__attributes__location__address2`  | string |          | —       | Second line of street address                                                                                                                                                                                         |
| `data__attributes__location__latitude`  | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                       |
| `data__attributes__location__timezone`  | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                       |
| `data__meta__patch__properties__unset`  | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                    |
| `data__attributes__location__longitude` | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                      |

***

### `Klaviyo Create Or Update Push Token`

Integration name: **KLAVIYO\_CREATE\_OR\_UPDATE\_PUSH\_TOKEN**

Create or update a push token for mobile push notifications. This server-side endpoint is used for migrating push tokens from other platforms to Klaviyo. For creating tokens from mobile devices, use Klaviyo's mobile SDKs instead. Prerequisites: Push notifications must be enabled for the Klaviyo account. Required fields: - data\_\_type: Must be 'push-token' - data\_\_attributes\_\_token: The push token from APNS or FCM - data\_\_attributes\_\_platform: 'ios' or 'android' - data\_\_attributes\_\_vendor: 'apns' (iOS) or 'fcm' (Android) - data\_\_attributes\_\_profile\_\_data\_\_type: Must be 'profile' - At least one profile identifier (email, phone\_number, external\_id, anonymous\_id, or profile id) Rate limits: 75/s burst, 700/m steady. Max payload: 100KB. Requires scopes: profiles:write, push-tokens:write

#### Parameters

| Parameter                                                        | Type   | Required | Example | Description                                                                                                                                                                                                           |
| ---------------------------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                                     | string |          | —       | Resource type. Must be 'push-token'.                                                                                                                                                                                  |
| `data__attributes__token`                                        | string |          | —       | A push token from APNS or FCM.                                                                                                                                                                                        |
| `data__attributes__vendor`                                       | string |          | —       | The push notification vendor. Use 'apns' for iOS (Apple Push Notification Service) or 'fcm' for Android (Firebase Cloud Messaging).                                                                                   |
| `profile_meta_patch_unset`                                       | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                    |
| `data__attributes__platform`                                     | string |          | —       | The mobile platform. Use 'ios' for Apple devices or 'android' for Android devices.                                                                                                                                    |
| `data__attributes__background`                                   | string |          | —       | The background state of the push token.                                                                                                                                                                               |
| `data__attributes__profile__data__id`                            | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                              |
| `data__attributes__enablement__status`                           | string |          | —       | This is the enablement status for the individual push token.                                                                                                                                                          |
| `data__attributes__profile__data__type`                          | string |          | —       | Profile resource type. Must be 'profile'.                                                                                                                                                                             |
| `data__attributes__device__metadata__app__id`                    | string |          | —       | The ID of the app that created the push token                                                                                                                                                                         |
| `data__attributes__device__metadata__os__name`                   | string |          | —       | The name of the operating system on the device.                                                                                                                                                                       |
| `data__attributes__device__metadata__app__name`                  | string |          | —       | The name of the app that created the push token                                                                                                                                                                       |
| `data__attributes__device__metadata__app__build`                 | string |          | —       | The build of the app that created the push token                                                                                                                                                                      |
| `data__attributes__device__metadata__device__id`                 | string |          | —       | Relatively stable ID for the device. Will update on app uninstall and reinstall                                                                                                                                       |
| `data__attributes__device__metadata__environment`                | string |          | —       | The environment in which the push token was created                                                                                                                                                                   |
| `data__attributes__device__metadata__os__version`                | string |          | —       | The version of the operating system on the device                                                                                                                                                                     |
| `data__attributes__device__metadata__app__version`               | string |          | —       | The version of the app that created the push token                                                                                                                                                                    |
| `data__attributes__device__metadata__klaviyo__sdk`               | string |          | —       | The name of the SDK used to create the push token.                                                                                                                                                                    |
| `data__attributes__device__metadata__manufacturer`               | string |          | —       | The manufacturer of the device                                                                                                                                                                                        |
| `data__attributes__device__metadata__sdk__version`               | string |          | —       | The version of the SDK used to create the push token                                                                                                                                                                  |
| `data__attributes__device__metadata__device__model`              | string |          | —       | The model of the device                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes____kx`              | string |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint. |
| `data__attributes__profile__data__attributes__email`             | string |          | —       | Individual"s email address                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__image`             | string |          | —       | URL pointing to the location of a profile image                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__title`             | string |          | —       | Individual"s job title                                                                                                                                                                                                |
| `data__attrs__profile__data__attrs__location__address1`          | string |          | —       | First line of street address                                                                                                                                                                                          |
| `data__attrs__profile__data__attrs__location__address2`          | string |          | —       | Second line of street address                                                                                                                                                                                         |
| `data__attrs__profile__data__attrs__location__latitude`          | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__timezone`          | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__longitude`         | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                      |
| `data__attributes__profile__data__attributes__last__name`        | string |          | —       | Individual"s last name                                                                                                                                                                                                |
| `data__attributes__profile__data__attributes__first__name`       | string |          | —       | Individual"s first name                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes__external__id`      | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                  |
| `data__attributes__profile__data__attributes__location__ip`      | string |          | —       | IP Address                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__organization`      | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                  |
| `data__attributes__profile__data__attributes__anonymous__id`     | string |          | —       | Id that can be used to identify a profile when other identifiers are not available                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__zip`     | string |          | —       | Zip code                                                                                                                                                                                                              |
| `data__attributes__profile__data__attributes__phone__number`     | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__city`    | string |          | —       | City name                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__region`  | string |          | —       | Region within a country, such as state or province                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__country` | string |          | —       | Country name                                                                                                                                                                                                          |

***

### `Klaviyo Create Profile`

Integration name: **KLAVIYO\_CREATE\_PROFILE**

Create a new profile.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `profiles:write`

#### Parameters

| Parameter                               | Type   | Required | Example | Description                                                                                                                                                                          |
| --------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data__type`                            | string |          | —       | Type                                                                                                                                                                                 |
| `data__attributes__email`               | string |          | —       | Individual"s email address                                                                                                                                                           |
| `data__attributes__image`               | string |          | —       | URL pointing to the location of a profile image                                                                                                                                      |
| `data__attributes__title`               | string |          | —       | Individual"s job title                                                                                                                                                               |
| `data__attributes__last__name`          | string |          | —       | Individual"s last name                                                                                                                                                               |
| `data__attributes__first__name`         | string |          | —       | Individual"s first name                                                                                                                                                              |
| `data__attributes__external__id`        | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system. |
| `data__attributes__location__ip`        | string |          | —       | IP Address                                                                                                                                                                           |
| `data__attributes__organization`        | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                 |
| `data__attributes__location__zip`       | string |          | —       | Zip code                                                                                                                                                                             |
| `data__attributes__phone__number`       | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                            |
| `data__attributes__location__city`      | string |          | —       | City name                                                                                                                                                                            |
| `data__attributes__location__region`    | string |          | —       | Region within a country, such as state or province                                                                                                                                   |
| `data__attributes__location__country`   | string |          | —       | Country name                                                                                                                                                                         |
| `data__attributes__location__address1`  | string |          | —       | First line of street address                                                                                                                                                         |
| `data__attributes__location__address2`  | string |          | —       | Second line of street address                                                                                                                                                        |
| `data__attributes__location__latitude`  | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                      |
| `data__attributes__location__timezone`  | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                      |
| `data__attributes__location__longitude` | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                     |

***

### `Klaviyo Create Segment`

Integration name: **KLAVIYO\_CREATE\_SEGMENT**

Create a segment.\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `15/m`\
Daily: `100/d` **Scopes:** `segments:write`

#### Parameters

| Parameter                                         | Type    | Required | Example | Description      |
| ------------------------------------------------- | ------- | :------: | ------- | ---------------- |
| `data__type`                                      | string  |          | —       | Type             |
| `data__attributes__name`                          | string  |          | —       | Name             |
| `data__attributes__is__starred`                   | boolean |          | —       | Is Starred       |
| `data__attributes__definition__condition__groups` | array   |          | —       | Condition Groups |

***

### `Klaviyo Create Tag`

Integration name: **KLAVIYO\_CREATE\_TAG**

Summary: Instructions on creating a tag within an account's designated tag group with a maximum of 500 tags, with optional tag group specification. Rate limits are 3/s burst and 60/min steady. Tag: #TagCreationLimitAndRate

#### Parameters

| Parameter                                     | Type   | Required | Example | Description                                                                                                                                         |
| --------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                  | string |          | —       | Type                                                                                                                                                |
| `data__attributes__name`                      | string |          | —       | The Tag name                                                                                                                                        |
| `data__relationships__tag__group__data__id`   | string |          | —       | The ID of the Tag Group to associate the Tag with. If this field is not specified, the Tag will be associated with the company"s Default Tag Group. |
| `data__relationships__tag__group__data__type` | string |          | —       | Type                                                                                                                                                |

***

### `Klaviyo Create Tag Group`

Integration name: **KLAVIYO\_CREATE\_TAG\_GROUP**

Create tag groups up to 50 per account, defaulting to non-exclusive unless specified. Related resources can have multiple non-exclusive tags but only one if exclusive. Rate limits: 3/s burst, 60/m steady. Scopes needed: tags:read, tags:write.

#### Parameters

| Parameter                     | Type    | Required | Example | Description        |
| ----------------------------- | ------- | :------: | ------- | ------------------ |
| `data__type`                  | string  |          | —       | Type               |
| `data__attributes__name`      | string  |          | —       | The Tag Group name |
| `data__attributes__exclusive` | boolean |          | —       | Exclusive          |

***

### `Klaviyo Create Tag Relationships`

Integration name: **KLAVIYO\_CREATE\_TAG\_RELATIONSHIPS**

Associate a tag with other resources (flows, lists, segments, or campaigns) in Klaviyo. Use when you need to link a tag to one or more resources for organizational purposes. Note: A resource can have up to 100 tags associated with it. Rate limits: 3/s burst, 60/m steady. Required scopes vary by resource type: tags:write plus the appropriate write scope (flows:write, lists:write, segments:write, or campaigns:write).

#### Parameters

| Parameter          | Type   | Required | Example                                  | Description                                                                                         |
| ------------------ | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `data`             | array  |     ✅    | `[{"id":"QRXm9k","type":"list"}]`        | List of resource identifiers to associate with the tag. Each item must have 'type' and 'id' fields. |
| `tag_id`           | string |     ✅    | `"3ff51536-c269-461e-bd7e-70b467d3624f"` | The unique identifier (UUID) of the tag to associate with resources                                 |
| `related_resource` | string |     ✅    | `"lists"`                                | The type of resource to associate the tag with (flows, lists, segments, or campaigns)               |

***

### `Klaviyo Create Template`

Integration name: **KLAVIYO\_CREATE\_TEMPLATE**

Summary: Custom HTML templates can be created unless an account reaches 1,000 template limit. Use sparse fieldsets to request specific fields. Rate limits are 10 per second and 150 per minute. Requires 'templates:write' scope.

#### Parameters

| Parameter                        | Type   | Required | Example | Description                           |
| -------------------------------- | ------ | :------: | ------- | ------------------------------------- |
| `data__type`                     | string |          | —       | Type                                  |
| `data__attributes__html`         | string |          | —       | The HTML contents of the template     |
| `data__attributes__name`         | string |          | —       | The name of the template              |
| `data__attributes__text`         | string |          | —       | The plaintext version of the template |
| `data__attributes__editor__type` | string |          | —       | Restricted to CODE                    |

***

### `Klaviyo Create Template Clone`

Integration name: **KLAVIYO\_CREATE\_TEMPLATE\_CLONE**

Clone a template by its ID, but cloning fails if account has 1,000+ templates. API limit: 1,000 templates. Rate limits are 10 per second and 150 per minute. Requires `templates:write` scope.

#### Parameters

| Parameter                | Type   | Required | Example | Description                     |
| ------------------------ | ------ | :------: | ------- | ------------------------------- |
| `data__id`               | string |          | —       | The ID of template to be cloned |
| `data__type`             | string |          | —       | Type                            |
| `data__attributes__name` | string |          | —       | The name of the template        |

***

### `Klaviyo Create Template Render`

Integration name: **KLAVIYO\_CREATE\_TEMPLATE\_RENDER**

Render an email template with specific context and sparse fieldsets, then get HTML/plain text. Rate limit: 3/s burst, 60/m steady. Scope: templates:read.

#### Parameters

| Parameter                   | Type   | Required | Example | Description                                                                                           |
| --------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------- |
| `data__id`                  | string |          | —       | The ID of template                                                                                    |
| `data__type`                | string |          | —       | Type                                                                                                  |
| `data__attributes__context` | object |          | —       | The context (key-value pairs) to render the template with. Keys should match template variable names. |

***

### `Klaviyo Create Webhook`

Integration name: **KLAVIYO\_CREATE\_WEBHOOK**

Create a new Webhook to receive real-time notifications when specific events occur in Klaviyo (e.g., email clicks, SMS sent). Rate limits: Burst: 1/s, Steady: 15/m Required scopes: webhooks:write, events:read (for event-based topics) Note: Each Klaviyo account can have a maximum of 10 webhooks.

#### Parameters

| Parameter                                    | Type   | Required | Example | Description                                                                                                                                                                                                                                          |
| -------------------------------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                                 | string |          | —       | The resource type for the webhook. Must be 'webhook'.                                                                                                                                                                                                |
| `data__attributes__name`                     | string |          | —       | A name for the webhook.                                                                                                                                                                                                                              |
| `data__attributes__description`              | string |          | —       | A description for the webhook.                                                                                                                                                                                                                       |
| `data__attributes__secret__key`              | string |          | —       | A secret key used for HMAC-SHA256 signing of webhook requests. Use this to verify webhook authenticity on your server.                                                                                                                               |
| `data__attributes__endpoint__url`            | string |          | —       | The HTTPS URL where webhook payloads will be sent. Must use HTTPS protocol (e.g., '<https://example.com/webhook>').                                                                                                                                  |
| `data__relationships__webhook__topics__data` | array  |          | —       | List of webhook topics to subscribe to. Each item must have 'type': 'webhook-topic' and 'id' with the topic identifier (e.g., 'event:klaviyo.clicked\_email', 'event:klaviyo.sent\_sms'). Use KLAVIYO\_GET\_WEBHOOK\_TOPICS to get available topics. |

***

### `Klaviyo Delete Campaign`

Integration name: **KLAVIYO\_DELETE\_CAMPAIGN**

Delete a campaign with the given campaign ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                   |
| --------- | ------ | :------: | ------- | ----------------------------- |
| `id`      | string |     ✅    | —       | The campaign ID to be deleted |

***

### `Klaviyo Delete Catalog Category`

Integration name: **KLAVIYO\_DELETE\_CATALOG\_CATEGORY**

Delete a catalog category using the given category ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                             |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`. |

***

### `Klaviyo Delete Catalog Item`

Integration name: **KLAVIYO\_DELETE\_CATALOG\_ITEM**

Delete a catalog item with the given item ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `catalogs:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                         |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`. |

***

### `Klaviyo Delete Coupon`

Integration name: **KLAVIYO\_DELETE\_COUPON**

Delete the coupon with the given coupon ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `coupons:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The internal id of a Coupon is equivalent to its external id stored within an integration. |

***

### `Klaviyo Delete Coupon Code`

Integration name: **KLAVIYO\_DELETE\_COUPON\_CODE**

Deletes a coupon code specified by the given identifier synchronously. If a profile has been assigned to the coupon code, an exception will be raised\
\
\&#xNAN;*Rate limits*:\
Burst: `350/s`\
Steady: `3500/m` **Scopes:** `coupon-codes:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                        |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the coupon code to delete. Format: '{COUPON\_ID}-{UNIQUE\_CODE}' where COUPON\_ID is the external\_id of the parent coupon and UNIQUE\_CODE is the specific code string. Example: 'SUMMER\_SALE\_2026-SAVE20OFF'. Note: Coupon codes assigned to a profile cannot be deleted and will raise an exception. |

***

### `Klaviyo Delete Flow`

Integration name: **KLAVIYO\_DELETE\_FLOW**

Delete a flow with the given flow ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `flows:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                          |
| --------- | ------ | :------: | ------- | ------------------------------------ |
| `id`      | string |     ✅    | —       | ID of the Flow to delete. Ex: XVTP5Q |

***

### `Klaviyo Delete List`

Integration name: **KLAVIYO\_DELETE\_LIST**

Delete a list with the given list ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `lists:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                           |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | Primary key that uniquely identifies this list. Generated by Klaviyo. |

***

### `Klaviyo Delete Segment`

Integration name: **KLAVIYO\_DELETE\_SEGMENT**

Delete a segment with the given segment ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `segments:write`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                            |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The unique identifier of the segment to delete. Segment IDs are alphanumeric strings (e.g., 'TJx2Yb'). |

***

### `Klaviyo Delete Tag`

Integration name: **KLAVIYO\_DELETE\_TAG**

Delete the tag with the given tag ID. Any associations between the tag and other resources will also be removed.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `tags:read` `tags:write`

#### Parameters

| Parameter | Type   | Required | Example | Description |
| --------- | ------ | :------: | ------- | ----------- |
| `id`      | string |     ✅    | —       | The Tag ID  |

***

### `Klaviyo Delete Tag Group`

Integration name: **KLAVIYO\_DELETE\_TAG\_GROUP**

Delete a specified tag group and its contents; associated resource links will be removed. The default group is undeletable. Rate limits: 3/s burst, 60/m steady. Requires tags:read and tags:write permissions.

#### Parameters

| Parameter | Type   | Required | Example | Description      |
| --------- | ------ | :------: | ------- | ---------------- |
| `id`      | string |     ✅    | —       | The Tag Group ID |

***

### `Klaviyo Delete Template`

Integration name: **KLAVIYO\_DELETE\_TEMPLATE**

Permanently delete a template from your Klaviyo account using its unique template ID. This action is destructive and cannot be undone. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope.

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                           |
| --------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the template to delete. Can be obtained from the get\_templates or create\_template actions. |

***

### `Klaviyo Delete Webhook`

Integration name: **KLAVIYO\_DELETE\_WEBHOOK**

Permanently delete a webhook subscription from your Klaviyo account. This action removes the webhook configuration, stopping all future event notifications to the webhook's endpoint URL. This operation is irreversible. **Requirements:** - Advanced KDP (Klaviyo Data Platform) must be enabled on your account - API key must have `webhooks:write` scope **Rate limits:** Burst: 1/s, Steady: 15/m **Returns:** HTTP 204 No Content on successful deletion (empty response body).

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                           |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the webhook to delete. This is typically a UUID string returned when the webhook was created (e.g., 'abc123-def456-ghi789'). |

***

### `Klaviyo Get Account`

Integration name: **KLAVIYO\_GET\_ACCOUNT**

Retrieve a single account object by its account ID. You can only request the account by which the private API key was generated.\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `15/m` **Scopes:** `accounts:read`

#### Parameters

| Parameter         | Type   | Required | Example | Description                                                                                                               |
| ----------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`              | string |     ✅    | —       | The ID of the account                                                                                                     |
| `fields__account` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Accounts`

Integration name: **KLAVIYO\_GET\_ACCOUNTS**

Use a private API key to fetch an associated account's details like contact info, timezone, and currency, as well as validate the key. Rate limit: 1 request/second, 15 requests/minute. Scope required: `accounts:read`.

#### Parameters

| Parameter         | Type  | Required | Example | Description                                                                                                               |
| ----------------- | ----- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `fields__account` | array |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Bulk Create Coupon Codes Job`

Integration name: **KLAVIYO\_GET\_BULK\_CREATE\_COUPON\_CODES\_JOB**

Tool to get a coupon code bulk create job with the given job ID. Use when you need to check the status of a previously initiated bulk coupon code creation job. Rate limits: 75/s burst, 700/m steady. Required scope: coupon-codes:read.

#### Parameters

| Parameter | Type   | Required | Example                        | Description                                                            |
| --------- | ------ | :------: | ------------------------------ | ---------------------------------------------------------------------- |
| `job_id`  | string |     ✅    | `"01KHENTNR2473F6T8KK7ZMQ5S8"` | The unique identifier for the coupon code bulk create job to retrieve. |

***

### `Klaviyo Get Bulk Delete Catalog Items Job`

Integration name: **KLAVIYO\_GET\_BULK\_DELETE\_CATALOG\_ITEMS\_JOB**

Get a catalog item bulk delete job with the given job ID. Use this to check the status and progress of a bulk delete operation for catalog items. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible

#### Parameters

| Parameter | Type   | Required | Example                        | Description                                               |
| --------- | ------ | :------: | ------------------------------ | --------------------------------------------------------- |
| `job_id`  | string |     ✅    | `"01KHENTZKM2X0HAX9Q52AB3QAF"` | The unique identifier for the bulk delete job to retrieve |

***

### `Klaviyo Get Bulk Profile Import Job`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB**

Get a bulk profile import job with the given job ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `lists:read` `profiles:read`

#### Parameters

| Parameter                            | Type   | Required | Example | Description                                                                                                               |
| ------------------------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `job_id`                             | string |     ✅    | —       | ID of the job to retrieve.                                                                                                |
| `include`                            | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>    |
| `fields__list`                       | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |
| `fields__profile__bulk__import__job` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Bulk Profile Import Job Errors`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB\_ERRORS**

Get import errors for the bulk profile import job with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `profiles:read`

#### Parameters

| Parameter               | Type    | Required | Example | Description                                                                                                                                                                                              |
| ----------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                    | string  |     ✅    | —       | The ID of the bulk profile import job to retrieve errors for. Obtain this ID from the spawn\_bulk\_profile\_import\_job or get\_bulk\_profile\_import\_jobs actions.                                     |
| `page__size`            | integer |          | —       | Default: 20. Min: 1. Max: 100.                                                                                                                                                                           |
| `page__cursor`          | string  |          | —       | Cursor for pagination. Use the value from the 'next' or 'prev' link in the response to fetch additional pages of errors.                                                                                 |
| `fields__import__error` | array   |          | —       | Select specific fields to include in the response (sparse fieldsets). Available fields: 'code', 'title', 'detail', 'source', 'source.pointer', 'original\_payload'. If omitted, all fields are returned. |

***

### `Klaviyo Get Bulk Profile Import Job Lists`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB\_LISTS**

Get list for the bulk profile import job with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `lists:read`

#### Parameters

| Parameter      | Type   | Required | Example | Description                                                                                                               |
| -------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`           | string |     ✅    | —       |                                                                                                                           |
| `fields__list` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Bulk Profile Import Job Profiles`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB\_PROFILES**

Get profiles for the bulk profile import job with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `profiles:read`

#### Parameters

| Parameter                     | Type    | Required | Example | Description                                                                                                                                                                                       |
| ----------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                          | string  |     ✅    | —       | The unique identifier (ID) of the bulk profile import job to retrieve profiles from. This ID is returned when creating a bulk profile import job or can be obtained from the list of import jobs. |
| `page__size`                  | integer |          | —       | Default: 20. Min: 1. Max: 100.                                                                                                                                                                    |
| `page__cursor`                | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                               |
| `fields__profile`             | array   |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                         |
| `additional__fields__profile` | array   |          | —       | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive\_analytics"                                                                     |

***

### `Klaviyo Get Bulk Profile Import Job Relationships Lists`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB\_RELATIONSHIPS\_LISTS**

Get list relationship for the bulk profile import job with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `lists:read`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                  |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the bulk profile import job. Obtain this from the GET /api/profile-bulk-import-jobs/ endpoint or from the response when creating a bulk import job. |

***

### `Klaviyo Get Bulk Profile Import Job Relationships Profiles`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOB\_RELATIONSHIPS\_PROFILES**

Get profile relationships for the bulk profile import job with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `profiles:read`

#### Parameters

| Parameter      | Type    | Required | Example | Description                                                                                                         |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `id`           | string  |     ✅    | —       |                                                                                                                     |
| `page__size`   | integer |          | —       | Default: 20. Min: 1. Max: 100.                                                                                      |
| `page__cursor` | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination> |

***

### `Klaviyo Get Bulk Profile Import Jobs`

Integration name: **KLAVIYO\_GET\_BULK\_PROFILE\_IMPORT\_JOBS**

Get all bulk profile import jobs. Returns a maximum of 100 jobs per request.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `lists:read` `profiles:read`

#### Parameters

| Parameter                            | Type    | Required | Example | Description                                                                                                                                                                                                              |
| ------------------------------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sort`                               | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting>                                                                                                         |
| `filter`                             | string  |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>status</code>: <code>any</code>, <code>equals</code></p> |
| `page__size`                         | integer |          | —       | Default: 20. Min: 1. Max: 100.                                                                                                                                                                                           |
| `page__cursor`                       | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                      |
| `fields__profile__bulk__import__job` | array   |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                |

***

### `Klaviyo Get Bulk Update Catalog Items Job`

Integration name: **KLAVIYO\_GET\_BULK\_UPDATE\_CATALOG\_ITEMS\_JOB**

Get a catalog item bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`.

#### Parameters

| Parameter                                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                       |
| ------------------------------------------ | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `job_id`                                   | string |     ✅    | —       | ID of the job to retrieve.                                                                                                                                                                                                                                                                                                        |
| `include`                                  | array  |          | —       | Related resources to include in the response. Set to \['items'] to include full catalog item data for items being updated by this job. When specified, the response will contain an 'included' array with catalog item objects.                                                                                                   |
| `fields__catalog__item`                    | array  |          | —       | Sparse fieldset to limit which catalog item attributes are returned when using include=items. Valid values: 'external\_id', 'title', 'description', 'price', 'url', 'image\_full\_url', 'image\_thumbnail\_url', 'images', 'custom\_metadata', 'published', 'created', 'updated'. Only effective when include=items is specified. |
| `fields__catalog__item__bulk__update__job` | array  |          | —       | Sparse fieldset to limit which job attributes are returned. Valid values: 'status', 'created\_at', 'total\_count', 'completed\_count', 'failed\_count', 'completed\_at', 'errors', 'expires\_at'. If omitted, all job attributes are returned.                                                                                    |

***

### `Klaviyo Get Bulk Update Categories Job`

Integration name: **KLAVIYO\_GET\_BULK\_UPDATE\_CATEGORIES\_JOB**

Retrieve a catalog category bulk update job by its ID from Klaviyo. This action fetches the status and details of a bulk update job for catalog categories, including progress metrics (total, completed, failed counts) and optionally the related category resources. Use this to track the progress of bulk category update operations. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible

#### Parameters

| Parameter            | Type    | Required | Example                        | Description                                              |
| -------------------- | ------- | :------: | ------------------------------ | -------------------------------------------------------- |
| `job_id`             | string  |     ✅    | `"01KHENY78Y4RKXCP7WC1DWBVG3"` | The unique identifier for the bulk update categories job |
| `include_categories` | boolean |          | —                              | Whether to include related category data in the response |

***

### `Klaviyo Get Bulk Update Variants Job`

Integration name: **KLAVIYO\_GET\_BULK\_UPDATE\_VARIANTS\_JOB**

Tool to retrieve a catalog variant bulk update job by its ID. Use when you need to check the status, progress, or results of a bulk update operation on catalog variants.

#### Parameters

| Parameter | Type   | Required | Example                        | Description                                                                                                                                        |
| --------- | ------ | :------: | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `job_id`  | string |     ✅    | `"01KHENWQ890549M8B5905PWKE0"` | The unique identifier for the catalog variant bulk update job to retrieve. Obtain this ID from the response of a create bulk update job operation. |
| `include` | string |          | —                              | Options for including related resources in the response.                                                                                           |

***

### `Klaviyo Get Campaign`

Integration name: **KLAVIYO\_GET\_CAMPAIGN**

Retrieve a specific campaign by its ID from Klaviyo. This action fetches detailed information about a single campaign including its name, status, audience settings, send strategy, and optionally related messages and tags. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Campaign ID must exist and be accessible

#### Parameters

| Parameter          | Type    | Required | Example                        | Description                                          |
| ------------------ | ------- | :------: | ------------------------------ | ---------------------------------------------------- |
| `campaign_id`      | string  |     ✅    | `"01GDDKASAP8TKDDA2GRZDSVP4H"` | The campaign ID to retrieve                          |
| `include_tags`     | boolean |          | —                              | Whether to include tags in the response              |
| `include_messages` | boolean |          | —                              | Whether to include campaign messages in the response |

***

### `Klaviyo Get Campaign Campaign Messages`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_CAMPAIGN\_MESSAGES**

Return all messages that belong to the given campaign.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter                   | Type   | Required | Example | Description                                                                                                                 |
| --------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | string |     ✅    | —       | The unique identifier of the campaign to retrieve messages for. You can obtain campaign IDs using the Get Campaigns action. |
| `include`                   | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>      |
| `fields__campaign`          | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>   |
| `fields__template`          | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>   |
| `fields__campaign__message` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>   |

***

### `Klaviyo Get Campaign Message`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_MESSAGE**

Returns a specific message based on a required id.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter                   | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| --------------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | string |     ✅    | —       | The message ID to be retrieved                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `include`                   | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `fields__campaign`          | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `fields__template`          | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `fields__campaign__message` | array  |          | —       | Sparse fieldset filter for campaign message attributes. Top-level fields: id, label, channel, content, send\_times, render\_options, created\_at, updated\_at. Nested content fields for email: content.subject, content.preview\_text, content.from\_email, content.from\_label, content.reply\_to\_email, content.cc\_email, content.bcc\_email. Nested content fields for SMS/push: content.body, content.title. Nested render\_options fields (SMS): render\_options.shorten\_links, render\_options.add\_org\_prefix, render\_options.add\_info\_link, render\_options.add\_opt\_out\_language. |

***

### `Klaviyo Get Campaign Message Campaign`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_MESSAGE\_CAMPAIGN**

Return the related campaign\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter          | Type   | Required | Example | Description                                                                                                               |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`               | string |     ✅    | —       | The unique identifier of the campaign message. Used to retrieve the parent campaign associated with this message.         |
| `fields__campaign` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Campaign Message Relationships Campaign`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_MESSAGE\_RELATIONSHIPS\_CAMPAIGN**

Returns the ID of the related campaign\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                                                                                                                   |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the campaign message to retrieve the campaign relationship for. You can obtain campaign message IDs using the Get Campaign Campaign Messages action. |

***

### `Klaviyo Get Campaign Message Relationships Template`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_MESSAGE\_RELATIONSHIPS\_TEMPLATE**

Returns the ID of the related template\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                                              |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | —       | The unique identifier of the campaign message to retrieve the template relationship for. |

***

### `Klaviyo Get Campaign Message Template`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_MESSAGE\_TEMPLATE**

Return the related template\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`

#### Parameters

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                                                                                                   |
| ------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`               | string |     ✅    | —       | The unique identifier of the campaign message. Example: '01KFGQQNRE7Z9FZ0AAQ3TQAKYZ'.                                                                                                                                                                         |
| `fields__template` | array  |          | —       | Sparse fieldsets to limit which template fields are returned. Available fields: name, editor\_type, html, text, amp, created, updated. If not specified, all fields are returned. Example: \['name', 'html'] returns only the template name and HTML content. |

***

### `Klaviyo Get Campaign Recipient Estimation`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_RECIPIENT\_ESTIMATION**

Get estimated recipients for a given campaign ID using `Create Campaign Recipient Estimation Job`. Rate limits are 10/s burst and 150/m steady. Required scope: `campaigns:read`.

#### Parameters

| Parameter                                 | Type   | Required | Example | Description                                                                                                               |
| ----------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`                                      | string |     ✅    | —       | The ID of the campaign for which to get the estimated number of recipients                                                |
| `fields__campaign__recipient__estimation` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Campaign Recipient Estimation Job`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_RECIPIENT\_ESTIMATION\_JOB**

Retrieve the status of a recipient estimation job triggered with the `Create Campaign Recipient Estimation Job` endpoint.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter                                      | Type   | Required | Example | Description                                                                                                               |
| ---------------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`                                           | string |     ✅    | —       | The ID of the campaign to get recipient estimation status                                                                 |
| `fields__campaign__recipient__estimation__job` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Campaign Relationships Campaign Messages`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_RELATIONSHIPS\_CAMPAIGN\_MESSAGES**

Returns the IDs of all messages associated with the given campaign.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter | Type   | Required | Example | Description |
| --------- | ------ | :------: | ------- | ----------- |
| `id`      | string |     ✅    | —       |             |

***

### `Klaviyo Get Campaign Relationships Tags`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_RELATIONSHIPS\_TAGS**

Returns the IDs of all tags associated with the given campaign.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`

#### Parameters

| Parameter | Type   | Required | Example | Description                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------ |
| `id`      | string |     ✅    | —       | The unique identifier of the campaign to retrieve tag relationships for. |

***

### `Klaviyo Get Campaigns`

Integration name: **KLAVIYO\_GET\_CAMPAIGNS**

Retrieve campaigns from your Klaviyo account. This action allows you to fetch campaigns with optional filtering and sorting. Klaviyo requires specifying a channel (email or sms) to list campaigns. You can add additional filters for status, name, creation date, and other attributes. Results are paginated with a default of 10 campaigns per page. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Channel must be specified (email or sms) - Additional filter syntax must be valid if provided

#### Parameters

| Parameter          | Type    | Required | Example                      | Description                                                                                                                                                                                                        |
| ------------------ | ------- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sort`             | string  |          | —                            | Klaviyo API sort options - note the \_at suffix is required for time-based fields.                                                                                                                                 |
| `filter`           | string  |          | `"equals(status,\"draft\")"` | Additional filter for campaigns. Will be combined with the required channel filter. Example: 'equals(status,"draft")' Malformed or overly complex filters trigger 4xx errors; use simple single-condition filters. |
| `channel`          | string  |          | —                            | Campaign channel to filter by (email or sms). Required by Klaviyo API.                                                                                                                                             |
| `page_cursor`      | string  |          | —                            | Cursor for pagination to get the next page of results Iterate using `links.next` until it returns null to retrieve all results.                                                                                    |
| `include_archived` | boolean |          | —                            | Whether to include archived campaigns in the results                                                                                                                                                               |

***

### `Klaviyo Get Campaign Send Job`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_SEND\_JOB**

Get a campaign send job\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `campaigns:read`

#### Parameters

| Parameter                     | Type   | Required | Example | Description                                                                                                               |
| ----------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`                          | string |     ✅    | —       | The ID of the campaign to send                                                                                            |
| `fields__campaign__send__job` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Campaign Tags`

Integration name: **KLAVIYO\_GET\_CAMPAIGN\_TAGS**

Return all tags that belong to the given campaign.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`

#### Parameters

| Parameter     | Type   | Required | Example | Description                                                                                                               |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`          | string |     ✅    | —       | The unique identifier of the campaign to retrieve tags for (e.g., '01KFT75VHSJJ4X5E1G4ZT0VQCJ').                          |
| `fields__tag` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Catalog Categories`

Integration name: **KLAVIYO\_GET\_CATALOG\_CATEGORIES**

Retrieve up to 100 account catalog categories, sortable by creation date. Only `$custom` integration and `$default` catalog types supported. Rate limits are 350/s and 3500/m. Requires `catalogs:read` scope.

#### Parameters

| Parameter                   | Type   | Required | Example | Description                                                                                                                                                                                                                                                                               |
| --------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`                      | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting>                                                                                                                                                                          |
| `filter`                    | string |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>ids</code>: <code>any</code><br><code>item.id</code>: <code>equals</code><br><code>name</code>: <code>contains</code></p> |
| `page__cursor`              | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                       |
| `fields__catalog__category` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                 |

***

### `Klaviyo Get Catalog Category`

Integration name: **KLAVIYO\_GET\_CATALOG\_CATEGORY**

Get a catalog category with the given category ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `350/s`\
Steady: `3500/m` **Scopes:** `catalogs:read`

#### Parameters

| Parameter                   | Type   | Required | Example | Description                                                                                                                                                                                                             |
| --------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | string |     ✅    | —       | The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`. |
| `fields__catalog__category` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                               |

***

### `Klaviyo Get Catalog Category Items`

Integration name: **KLAVIYO\_GET\_CATALOG\_CATEGORY\_ITEMS**

Retrieve up to 100 sorted items per request from a category using the category ID. Sort by 'created' field. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope.

#### Parameters

| Parameter                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                   |
| -------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | string |     ✅    | —       |                                                                                                                                                                                                                                                                                                                                               |
| `sort`                     | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting>                                                                                                                                                                                                                              |
| `filter`                   | string |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>ids</code>: <code>any</code><br><code>category.id</code>: <code>equals</code><br><code>title</code>: <code>contains</code><br><code>published</code>: <code>equals</code></p> |
| `include`                  | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>                                                                                                                                                                                                                        |
| `page__cursor`             | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                           |
| `fields__catalog__item`    | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                     |
| `fields__catalog__variant` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                     |

***

### `Klaviyo Get Catalog Item`

Integration name: **KLAVIYO\_GET\_CATALOG\_ITEM**

Get a specific catalog item with the given item ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `350/s`\
Steady: `3500/m` **Scopes:** `catalogs:read`

#### Parameters

| Parameter                  | Type   | Required | Example | Description                                                                                                                                                                                                         |
| -------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | string |     ✅    | —       | The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`. |
| `include`                  | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>                                                                                              |
| `fields__catalog__item`    | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                           |
| `fields__catalog__variant` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                           |

***

### `Klaviyo Get Catalog Item Variants`

Integration name: **KLAVIYO\_GET\_CATALOG\_ITEM\_VARIANTS**

Retrieve up to 100 variants per request for a specific item ID, sortable by creation date. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope.

#### Parameters

| Parameter                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                        |
| -------------------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | string |     ✅    | —       |                                                                                                                                                                                                                                                                                                                                                                                    |
| `sort`                     | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting>                                                                                                                                                                                                                                                                   |
| `filter`                   | string |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>ids</code>: <code>any</code><br><code>item.id</code>: <code>equals</code><br><code>sku</code>: <code>equals</code><br><code>title</code>: <code>contains</code><br><code>published</code>: <code>equals</code></p> |
| `page__cursor`             | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                                |
| `fields__catalog__variant` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                          |

***

### `Klaviyo Get Coupon`

Integration name: **KLAVIYO\_GET\_COUPON**

Get a specific coupon with the given coupon ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `coupons:read`

#### Parameters

| Parameter        | Type   | Required | Example | Description                                                                                                               |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`             | string |     ✅    | —       | The internal id of a Coupon is equivalent to its external id stored within an integration.                                |
| `fields__coupon` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Coupon Code`

Integration name: **KLAVIYO\_GET\_COUPON\_CODE**

Returns a Coupon Code specified by the given identifier.\
\
\&#xNAN;*Rate limits*:\
Burst: `350/s`\
Steady: `3500/m` **Scopes:** `coupon-codes:read`

#### Parameters

| Parameter              | Type   | Required | Example | Description                                                                                                               |
| ---------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`                   | string |     ✅    | —       | The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.               |
| `include`              | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>    |
| `fields__coupon`       | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |
| `fields__coupon__code` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |

***

### `Klaviyo Get Coupon Codes`

Integration name: **KLAVIYO\_GET\_COUPON\_CODES**

Obtains coupon codes using necessary coupon or profile filters. Rate limits: 350/s, 3500/m. Requires 'coupon-codes:read' scope.

#### Parameters

| Parameter              | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`               | string |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>expires\_at</code>: <code>greater-or-equal</code>, <code>greater-than</code>, <code>less-or-equal</code>, <code>less-than</code><br><code>status</code>: <code>equals</code><br><code>coupon.id</code>: <code>any</code>, <code>equals</code><br><code>profile.id</code>: <code>any</code>, <code>equals</code></p> |
| `include`              | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>                                                                                                                                                                                                                                                                                                                                                              |
| `page__cursor`         | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                                                                                                                                 |
| `fields__coupon`       | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                                           |
| `fields__coupon__code` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                                           |

***

### `Klaviyo Get Coupon For Coupon Code`

Integration name: **KLAVIYO\_GET\_COUPON\_FOR\_COUPON\_CODE**

Get the coupon associated with a given coupon code ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `coupons:read`

#### Parameters

| Parameter        | Type   | Required | Example | Description                                                                                                                                             |
| ---------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`             | string |     ✅    | —       | The unique identifier for the coupon code. This is typically in the format '{coupon\_id}-{unique\_code}' (e.g., 'PROMO\_SUMMER\_2026-SUMMER2026PROMO'). |
| `fields__coupon` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                               |

***

### `Klaviyo Get Forms`

Integration name: **KLAVIYO\_GET\_FORMS**

Get all forms in an account.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `60/m` **Scopes:** `forms:read`

#### Parameters

| Parameter      | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| -------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`         | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `filter`       | string  |          | —       | <p>For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering><br>Allowed field(s)/operator(s):<br><code>id</code>: <code>any</code>, <code>equals</code><br><code>name</code>: <code>any</code>, <code>contains</code>, <code>equals</code><br><code>ab\_test</code>: <code>equals</code><br><code>updated\_at</code>: <code>greater-or-equal</code>, <code>greater-than</code>, <code>less-or-equal</code>, <code>less-than</code><br><code>created\_at</code>: <code>greater-or-equal</code>, <code>greater-than</code>, <code>less-or-equal</code>, <code>less-than</code><br><code>status</code>: <code>equals</code></p> |
| `page__size`   | integer |          | —       | Default: 20. Min: 1. Max: 100.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `fields__form` | array   |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `page__cursor` | string  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Klaviyo Get Image`

Integration name: **KLAVIYO\_GET\_IMAGE**

Get the image with the given image ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `images:read`

#### Parameters

| Parameter       | Type   | Required | Example | Description                                                                                                                                                               |
| --------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`            | string |     ✅    | —       | The ID of the image                                                                                                                                                       |
| `fields__image` | array  |          | —       | Specify which image attributes to return (sparse fieldsets). Options: name, image\_url, format, size, hidden, updated\_at. If not specified, all attributes are returned. |

***

### `Klaviyo Get List`

Integration name: **KLAVIYO\_GET\_LIST**

API allows 75 req/sec and 700 req/min, but with 'profile\_count' param, it's 1 req/sec and 15 req/min. 'lists:read' scope needed. See developer guide for details.

#### Parameters

| Parameter                  | Type   | Required | Example | Description                                                                                                               |
| -------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `id`                       | string |     ✅    | —       | Primary key that uniquely identifies this list. Generated by Klaviyo.                                                     |
| `include`                  | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>    |
| `fields__tag`              | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |
| `fields__list`             | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets> |
| `additional__fields__list` | array  |          | —       | Request additional fields not included by default in the response. Supported values: "profile\_count"                     |

***

### `Klaviyo Get Metrics`

Integration name: **KLAVIYO\_GET\_METRICS**

Get all metrics in an account. Requests can be filtered by the following fields: integration `name`, integration `category` Returns a maximum of 200 results per page.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `metrics:read`

#### Parameters

| Parameter        | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`         | string |          | —       | Filter metrics by integration fields only. IMPORTANT: The metric's own 'name' field is NOT filterable. Only integration fields can be filtered. Allowed fields and operators: `integration.name` with `equals`, `integration.category` with `equals`. Example: equals(integration.name,'Klaviyo') or equals(integration.category,'Internal'). For more information visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering> |
| `page__cursor`   | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                                                                                                       |
| `fields__metric` | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>                                                                                                                                                                                                                                                                                                                                 |

***

### `Klaviyo Get Profile`

Integration name: **KLAVIYO\_GET\_PROFILE**

Get the profile with the given profile ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `75/s`\
Steady: `700/m` **Scopes:** `profiles:read`

#### Parameters

| Parameter                     | Type   | Required | Example | Description                                                                                                                   |
| ----------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `id`                          | string |     ✅    | —       |                                                                                                                               |
| `include`                     | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships>        |
| `fields__list`                | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>     |
| `fields__profile`             | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>     |
| `fields__segment`             | array  |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets>     |
| `additional__fields__profile` | array  |          | —       | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive\_analytics" |

***

### `Klaviyo Get Profiles`

Integration name: **KLAVIYO\_GET\_PROFILES**

Retrieve profiles from your Klaviyo account. This action allows you to fetch profiles with optional filtering and sorting. You can filter by email, external\_id, created date, and other attributes. Results are paginated with a configurable page size. Rate limits: 75/s burst, 700/m steady (lower with predictive\_analytics). Required scope: `profiles:read`. Preconditions: - Valid API key with profiles:read scope - Filter syntax must be valid if provided - Page size must be between 1 and 100

#### Parameters

| Parameter                      | Type    | Required | Example                                | Description                                                                                                                                                                                                                                                                    |
| ------------------------------ | ------- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sort`                         | string  |          | —                                      | Sort profiles by field (add '-' prefix for descending order)                                                                                                                                                                                                                   |
| `filter`                       | string  |          | `"equals(email,\"user@example.com\")"` | Filter profiles by email, external\_id, created date, etc. Example: 'equals(email,"<user@example.com>")' Prefer specific filters (email, external\_id) over broad queries to reduce response size. Multi-condition filters are more error-prone than single-condition filters. |
| `page_size`                    | integer |          | —                                      | Number of profiles to return per page (1-100)                                                                                                                                                                                                                                  |
| `page_cursor`                  | string  |          | —                                      | Cursor for pagination to get the next page of results                                                                                                                                                                                                                          |
| `include_subscriptions`        | boolean |          | —                                      | Whether to include subscription information in the response                                                                                                                                                                                                                    |
| `include_predictive_analytics` | boolean |          | —                                      | Whether to include predictive analytics data (note: this may reduce rate limits)                                                                                                                                                                                               |

***

### `Klaviyo Get Segment`

Integration name: **KLAVIYO\_GET\_SEGMENT**

Fetch a segment by ID with default rates of 75/s and 700/m, or with `additional-fields` at 1/s and 15/m. For details, visit the provided guide. Required scope: `segments:read`.

#### Parameters

| Parameter                     | Type   | Required | Example | Description                                                                                                                                                                                                                                                                               |
| ----------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                          | string |     ✅    | —       | The unique identifier of the segment to retrieve. This ID is returned when creating segments or listing segments via the API.                                                                                                                                                             |
| `include`                     | array  |          | —       | Include related resources in the response. Set to \['tags'] to include tag objects associated with this segment. When included, the full tag objects will appear in an 'included' array in the response.                                                                                  |
| `fields__tag`                 | array  |          | —       | Specify which tag fields to include in the response when using include=\['tags']. Available fields: 'name'. If not specified, all tag fields are returned.                                                                                                                                |
| `fields__segment`             | array  |          | —       | Specify which segment fields to include in the response using sparse fieldsets. Available fields: 'name', 'definition', 'definition.condition\_groups', 'created', 'updated', 'is\_active', 'is\_processing', 'is\_starred', 'profile\_count'. If not specified, all fields are returned. |
| `additional__fields__segment` | array  |          | —       | Request additional fields not included by default in the response. Supported values: "profile\_count"                                                                                                                                                                                     |

***

### `Klaviyo Get Template`

Integration name: **KLAVIYO\_GET\_TEMPLATE**

Get a template with the given template ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `10/s`\
Steady: `150/m` **Scopes:** `templates:read`

#### Parameters

| Parameter          | Type   | Required | Example | Description                                                                                                                                                                  |
| ------------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`               | string |     ✅    | —       | The unique identifier of the template to retrieve (e.g., 'Rz66gr').                                                                                                          |
| `fields__template` | array  |          | —       | Sparse fieldsets to request only specific template attributes. Available fields: name, editor\_type, html, text, created, updated. If not provided, all fields are returned. |

***

### `Klaviyo Get Webhook Topics`

Integration name: **KLAVIYO\_GET\_WEBHOOK\_TOPICS**

Get all webhook topics in a Klaviyo account.\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `15/m` **Scopes:** `webhooks:read`

#### Parameters

*No parameters required.*

***

### `Klaviyo Merge Profiles`

Integration name: **KLAVIYO\_MERGE\_PROFILES**

Merge one or more source profiles into a destination profile. The source profile(s) data (events, attributes, list memberships) will be transferred to the destination, and the source profile(s) will be deleted. This operation is queued asynchronously and returns HTTP 202 Accepted. Rate limits: 10/s burst, 150/m steady. Requires `profiles:write` scope.

#### Parameters

| Parameter                             | Type   | Required | Example | Description                                                                                                                                                                                                                                           |
| ------------------------------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__id`                            | string |     ✅    | —       | The ID of the destination profile that will receive the merged data. This profile will be kept after the merge.                                                                                                                                       |
| `data__type`                          | string |          | —       | The resource type for merge operation. Must be 'profile-merge'.                                                                                                                                                                                       |
| `data__relationships__profiles__data` | array  |     ✅    | —       | List of source profile objects to merge into the destination. Each object must have 'type' (always 'profile') and 'id' (the source profile ID). Source profiles will be deleted after the merge. Example: \[{'type': 'profile', 'id': 'PROFILE\_ID'}] |

***

### `Klaviyo Query Campaign Values`

Integration name: **KLAVIYO\_QUERY\_CAMPAIGN\_VALUES**

Returns the requested campaign analytics values data\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `2/m`\
Daily: `225/d` **Scopes:** `campaigns:read`

#### Parameters

| Parameter                                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------------------------ | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                               | string |          | —       | Resource type for the campaign values report request. Must be 'campaign-values-report'.                                                                                                                                                                                                                                                                              |
| `page_cursor`                              | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                  |
| `data__attributes__filter`                 | string |          | —       | API filter string (not an array) used to filter the query. Example: equals(campaign\_id,"01GMRWDSA0ARTAKE1SFX8JGXAY"). Allowed filters: campaign\_id. Allowed operators: equals, contains-any. Only one filter can be used per attribute, only AND can be used as a combination operator. Max of 100 campaign IDs per contains-any filter.                           |
| `data__attributes__timeframe`              | object |          | —       | The timeframe to query for data within (max 1 year). Supports two formats: 1) Predefined key: {'key': 'last\_12\_months'} - valid keys include 'last\_12\_months', 'last\_30\_days', 'last\_7\_days', 'this\_month', 'last\_month', etc. 2) Custom date range: {'start': '2024-01-01T00:00:00+00:00', 'end': '2024-12-31T23:59:59+00:00'} using ISO 8601 timestamps. |
| `data__attributes__statistics`             | array  |          | —       | List of statistics to query for. All rate statistics will be returned in fractional form \[0.0, 1.0]. Common aliases are supported: 'average\_open\_rate' maps to 'open\_rate', 'count\_opened' maps to 'opens', 'count\_sent' maps to 'recipients'.                                                                                                                 |
| `data__attributes__conversion__metric__id` | string |     ✅    | —       | Required. ID of the metric for calculating conversion-based statistics (e.g., 'Placed Order' metric). Use Get Metrics API to find valid metric IDs. Note: Use purchase/order event metrics (not engagement metrics like 'Opened Email') to avoid 'does not support querying for values data' errors.                                                                 |

***

### `Klaviyo Query Flow Series`

Integration name: **KLAVIYO\_QUERY\_FLOW\_SERIES**

Returns time-series analytics data for flows, enabling performance tracking over time intervals. Use this to analyze flow metrics like open rates, click rates, conversions, and delivery statistics. Rate limits: Burst 1/s, Steady 2/m, Daily 225/d. Scopes: flows:read

#### Parameters

| Parameter                                  | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                         |
| ------------------------------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                               | string |          | —       | The resource type. Must be 'flow-series-report'.                                                                                                                                                                                                                                                                                                                    |
| `page_cursor`                              | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                 |
| `data__attributes__filter`                 | string |          | —       | API filter string to filter the query. Allowed filters: flow\_id, send\_channel, flow\_message\_id. Operators: equals, contains-any. Use AND to combine filters. Max 100 messages per ANY filter. send\_channel values: 'email', 'push-notification', 'sms'. Examples: 'equals(flow\_id,"abc123")' or 'equals(send\_channel,"email") AND equals(flow\_id,"abc123")' |
| `data__attributes__interval`               | string |     ✅    | —       | The interval used to aggregate data within the series request. If hourly is used, the timeframe cannot be longer than 7 days. If daily is used, the timeframe cannot be longer than 60 days. If monthly is used, the timeframe cannot be longer than 52 weeks.                                                                                                      |
| `data__attributes__timeframe`              | object |     ✅    | —       | The timeframe to query for data within (max 1 year). Use either a preset key format: {'key': 'last\_30\_days'} or {'key': 'last\_7\_days'} or {'key': 'last\_12\_months'}, or a custom date range: {'start': '2024-01-01T00:00:00+00:00', 'end': '2024-01-31T00:00:00+00:00'}. Dates must be ISO 8601 format with timezone.                                         |
| `data__attributes__statistics`             | array  |     ✅    | —       | List of statistics to query for. All rate statistics will be returned in fractional form \[0.0, 1.0]                                                                                                                                                                                                                                                                |
| `data__attributes__conversion__metric__id` | string |     ✅    | —       | ID of the metric to be used for conversion statistics. Get metric IDs from the KLAVIYO\_GET\_METRICS action. Common metrics: 'Placed Order', 'Opened Email', 'Clicked Email'.                                                                                                                                                                                       |

***

### `Klaviyo Query Flow Values`

Integration name: **KLAVIYO\_QUERY\_FLOW\_VALUES**

Returns the requested flow analytics values data\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `2/m`\
Daily: `225/d` **Scopes:** `flows:read`

#### Parameters

| Parameter                                | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                             | string |          | —       | Resource type for the flow values report request. Must be 'flow-values-report'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `page_cursor`                            | string |          | —       | For more information please visit <https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `data__attributes__filter`               | string |          | —       | Filter string to narrow results. Accepts either a plain filter string like 'equals(send\_channel,"email")' or a JSON-encoded array like '\["equals(flow\_id,"ABC123")"]' (which will be automatically converted). Supported filters: flow\_id, send\_channel, flow\_message\_id. Supported operators: equals (for SINGLE value, e.g., 'equals(flow\_id,"ABC123")'), contains-any (for MULTIPLE values, e.g., 'contains-any(flow\_id,\["ABC123","DEF456"])'). Only one filter per attribute, only AND for combining. Max 100 messages per ANY filter. For send\_channel: email, push-notification, or sms. |
| `data__attributes__timeframe`            | object |          | —       | The timeframe to query for data within. Max length is 1 year. IMPORTANT: 'key' and 'start'/'end' are mutually exclusive - use EITHER a predefined key like {'key': 'last\_30\_days'} OR custom date ranges like {'start': '2024-01-01T00:00:00Z', 'end': '2024-12-31T23:59:59Z'}, but never combine them. Available predefined keys: last\_7\_days, last\_30\_days, last\_90\_days, last\_365\_days, this\_week, this\_month, this\_quarter, this\_year, last\_week, last\_month, last\_quarter, last\_year.                                                                                              |
| `data__attributes__statistics`           | array  |          | —       | List of statistics to query for. All rate statistics will be returned in fractional form \[0.0, 1.0]. Common aliases are supported: 'average\_open\_rate' maps to 'open\_rate', 'count\_opened' maps to 'opens', 'count\_sent' maps to 'recipients'.                                                                                                                                                                                                                                                                                                                                                      |
| `data__attributes__conversion_metric_id` | string |     ✅    | —       | ID of the conversion metric (e.g., 'Placed Order' metric ID) required for ALL flow values report queries. This metric is used for calculating conversion-based statistics, but the endpoint will return all requested statistics regardless of conversion status. For example, 'opens' will include all opens whether or not they resulted in conversions. Get metric IDs from the Get Metrics endpoint.                                                                                                                                                                                                  |

***

### `Klaviyo Query Metric Aggregates`

Integration name: **KLAVIYO\_QUERY\_METRIC\_AGGREGATES**

The Klaviyo endpoint fetches metric events, handling JSON requests for custom data queries, sorting, and filtering; offers grouping and time-based filters; requires adherence to rate limits (3 requests per second, 60 per minute) under 'metrics:read'.

#### Parameters

| Parameter                          | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ---------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                       | string  |          | —       | Type                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__by`             | array   |          | —       | Optional attribute(s) used for partitioning by the aggregation function                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `data__attributes__sort`           | string  |          | —       | Provide a sort key (e.g. -$message)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `data__attributes__filter`         | array   |          | —       | List of filter strings for querying metric aggregates. Each filter uses function syntax: operator(field,value). TIME RANGE (REQUIRED): Must use 'datetime' (not $attributed\_time) for time filtering with ISO 8601 format (YYYY-MM-DDTHH:MM:SS). Typically requires both: 'greater-or-equal(datetime,START\_TIME)' and 'less-than(datetime,END\_TIME)'. Maximum time range: 1 year (365 days). ADDITIONAL FILTERS (OPTIONAL): Can filter by metric attributes using $ prefix (e.g., $message, $flow, $attributed\_flow). Supported operators: equals, not, any. Examples: \['greater-or-equal(datetime,2024-01-15T00:00:00)', 'less-than(datetime,2024-02-15T00:00:00)'] or with attribute filter: \['greater-or-equal(datetime,2024-01-01T00:00:00)', 'less-than(datetime,2024-12-31T00:00:00)', 'equals($message,"MSG\_ID")'] |
| `data__attributes__interval`       | string  |          | —       | Aggregation interval, e.g. "hour", "day", "week", "month"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `data__attributes__timezone`       | string  |          | —       | The timezone used for processing the query, e.g. `"America/New_York"`. This field is validated against a list of common timezones from the [IANA Time Zone Database](https://www.iana.org/time-zones). While most are supported, a few notable exceptions are `Factory`, `Europe/Kyiv` and `Pacific/Kanton`. This field is case-sensitive.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `data__attributes__timeframe`      | object  |          | —       | Convenient timeframe parameter with 'start' and 'end' datetime values in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). If provided, this will automatically be converted to the required filter format. The maximum allowed time range is 1 year (365 days). Example: {'start': '2024-01-15T00:00:00', 'end': '2025-01-15T00:00:00'}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `data__attributes__metric__id`     | string  |          | —       | The metric ID used in the aggregation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `data__attributes__page__size`     | integer |          | —       | Alter the maximum number of returned rows in a single page of aggregation results                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `data__attributes__measurements`   | array   |          | —       | Measurement key, e.g. `unique`, `sum_value`, `count`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `data__attributes__page__cursor`   | string  |          | —       | Optional pagination cursor to iterate over large result sets                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `data__attributes__return__fields` | array   |          | —       | Provide fields to limit the returned data                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Klaviyo Unregister Client Push Token`

Integration name: **KLAVIYO\_UNREGISTER\_CLIENT\_PUSH\_TOKEN**

This endpoint unsubscribes a push token, for use with Klaviyo's mobile SDKs and a public API key. Push notifications must be on. Rate limits are 3/s and 60/m.

#### Parameters

| Parameter                                                        | Type   | Required | Example | Description                                                                                                                                                                                                           |
| ---------------------------------------------------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `company_id`                                                     | string |     ✅    | —       | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.                                                                                          |
| `data__type`                                                     | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__token`                                        | string |          | —       | A push token from APNS or FCM.                                                                                                                                                                                        |
| `data__attributes__vendor`                                       | string |          | —       | The vendor of the push token.                                                                                                                                                                                         |
| `data__attributes__platform`                                     | string |          | —       | The platform on which the push token was created.                                                                                                                                                                     |
| `data__attributes__profile__data__id`                            | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                                                              |
| `data__attributes__profile__data__type`                          | string |          | —       | Type                                                                                                                                                                                                                  |
| `data__attributes__profile__data__attributes____kx`              | string |          | —       | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint. |
| `data__attributes__profile__data__attributes__email`             | string |          | —       | Individual"s email address                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__image`             | string |          | —       | URL pointing to the location of a profile image                                                                                                                                                                       |
| `data__attributes__profile__data__attributes__title`             | string |          | —       | Individual"s job title                                                                                                                                                                                                |
| `data__attrs__profile__data__attrs__location__address1`          | string |          | —       | First line of street address                                                                                                                                                                                          |
| `data__attrs__profile__data__attrs__location__address2`          | string |          | —       | Second line of street address                                                                                                                                                                                         |
| `data__attrs__profile__data__attrs__location__latitude`          | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                       |
| `data__attrs__profile__data__attrs__location__timezone`          | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                                                       |
| `data__attrs__profile__data__meta__patch__props__unset`          | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                                                    |
| `data__attrs__profile__data__attrs__location__longitude`         | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                                                      |
| `data__attributes__profile__data__attributes__last__name`        | string |          | —       | Individual"s last name                                                                                                                                                                                                |
| `data__attributes__profile__data__attributes__first__name`       | string |          | —       | Individual"s first name                                                                                                                                                                                               |
| `data__attributes__profile__data__attributes__external__id`      | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.                                  |
| `data__attributes__profile__data__attributes__location__ip`      | string |          | —       | IP Address                                                                                                                                                                                                            |
| `data__attributes__profile__data__attributes__organization`      | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                                                  |
| `data__attributes__profile__data__attributes__anonymous__id`     | string |          | —       | Id that can be used to identify a profile when other identifiers are not available                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__zip`     | string |          | —       | Zip code                                                                                                                                                                                                              |
| `data__attributes__profile__data__attributes__phone__number`     | string |          | —       | Individual"s phone number in E.164 format                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__city`    | string |          | —       | City name                                                                                                                                                                                                             |
| `data__attributes__profile__data__attributes__location__region`  | string |          | —       | Region within a country, such as state or province                                                                                                                                                                    |
| `data__attributes__profile__data__attributes__location__country` | string |          | —       | Country name                                                                                                                                                                                                          |

***

### `Klaviyo Update Profile`

Integration name: **KLAVIYO\_UPDATE\_PROFILE**

Update profiles with the provided ID. Setting fields to `null` clears them; omitting fields retains existing data. Rate limits: 75/s burst, 700/m steady. Required scope: `profiles:write`.

#### Parameters

| Parameter                               | Type   | Required | Example | Description                                                                                                                                                                          |
| --------------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                                    | string |     ✅    | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                             |
| `data__id`                              | string |          | —       | Primary key that uniquely identifies this profile. Generated by Klaviyo.                                                                                                             |
| `data__type`                            | string |          | —       | Resource type. Must be 'profile'.                                                                                                                                                    |
| `data__attributes__email`               | string |          | —       | Individual's email address                                                                                                                                                           |
| `data__attributes__image`               | string |          | —       | URL pointing to the location of a profile image                                                                                                                                      |
| `data__attributes__title`               | string |          | —       | Individual's job title                                                                                                                                                               |
| `data__attributes__last__name`          | string |          | —       | Individual's last name                                                                                                                                                               |
| `data__attributes__first__name`         | string |          | —       | Individual's first name                                                                                                                                                              |
| `data__attributes__external__id`        | string |          | —       | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system. |
| `data__attributes__location__ip`        | string |          | —       | IP Address                                                                                                                                                                           |
| `data__attributes__organization`        | string |          | —       | Name of the company or organization within the company for whom the individual works                                                                                                 |
| `data__attributes__anonymous__id`       | string |          | —       | Anonymous identifier for tracking profiles before they are identified with an email or external ID                                                                                   |
| `data__attributes__location__zip`       | string |          | —       | Zip code                                                                                                                                                                             |
| `data__attributes__phone__number`       | string |          | —       | Individual's phone number in E.164 format (e.g., +15005550006)                                                                                                                       |
| `data__attributes__location__city`      | string |          | —       | City name                                                                                                                                                                            |
| `data__attributes__location__region`    | string |          | —       | Region within a country, such as state or province                                                                                                                                   |
| `data__attributes__location__country`   | string |          | —       | Country name                                                                                                                                                                         |
| `data__attributes__location__address1`  | string |          | —       | First line of street address                                                                                                                                                         |
| `data__attributes__location__address2`  | string |          | —       | Second line of street address                                                                                                                                                        |
| `data__attributes__location__latitude`  | string |          | —       | Latitude coordinate. We recommend providing a precision of four decimal places.                                                                                                      |
| `data__attributes__location__timezone`  | string |          | —       | Time zone name. We recommend using time zones from the IANA Time Zone Database.                                                                                                      |
| `data__meta__patch__properties__unset`  | array  |          | —       | Remove a key or keys (and their values) completely from properties                                                                                                                   |
| `data__attributes__location__longitude` | string |          | —       | Longitude coordinate. We recommend providing a precision of four decimal places.                                                                                                     |

***

### `Klaviyo Update Segment`

Integration name: **KLAVIYO\_UPDATE\_SEGMENT**

Update a segment with the given segment ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `15/m`\
Daily: `100/d` **Scopes:** `segments:write`

#### Parameters

| Parameter                                         | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                |
| ------------------------------------------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                              | string  |     ✅    | —       | The unique identifier of the segment to update (e.g., 'XTTNN5'). This is a required path parameter.                                                                                                                                                                                                                        |
| `data__id`                                        | string  |          | —       | The ID of the segment being updated. Should match the path parameter 'id'.                                                                                                                                                                                                                                                 |
| `data__type`                                      | string  |          | —       | The resource type. Must be 'segment' for segment updates.                                                                                                                                                                                                                                                                  |
| `data__attributes__name`                          | string  |          | —       | The display name of the segment. Use this to rename the segment.                                                                                                                                                                                                                                                           |
| `data__attributes__is__starred`                   | boolean |          | —       | Whether the segment should be starred/favorited for quick access. Set to true to star or false to unstar.                                                                                                                                                                                                                  |
| `data__attributes__definition__condition__groups` | array   |          | —       | Array of condition groups that define segment membership. Each group contains conditions combined with logical OR, and groups are combined with logical AND. Example: \[{'conditions': \[{'type': 'profile-property', 'property': 'email', 'filter': {'type': 'string', 'operator': 'contains', 'value': '@gmail.com'}}]}] |

***

### `Klaviyo Update Template`

Integration name: **KLAVIYO\_UPDATE\_TEMPLATE**

Update an existing email template by ID. Supports updating name, HTML content, and plaintext content. Note: This action only works with CODE editor type templates; drag & drop templates cannot be updated via API. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope.

#### Parameters

| Parameter                | Type   | Required | Example | Description                                                                                                        |
| ------------------------ | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------ |
| `id`                     | string |     ✅    | —       | The unique identifier of the template to update. Used in the URL path.                                             |
| `data__id`               | string |          | —       | The template ID in the request body. Must match the 'id' path parameter.                                           |
| `data__type`             | string |          | —       | Resource type identifier. Must be 'template'.                                                                      |
| `data__attributes__html` | string |          | —       | The new HTML content for the template. Only works with CODE editor type templates, not drag & drop templates.      |
| `data__attributes__name` | string |          | —       | The new name for the template. Optional - only include if updating the name.                                       |
| `data__attributes__text` | string |          | —       | The new plaintext version of the template. This is the fallback content for email clients that don't support HTML. |

***

### `Klaviyo Update Webhook`

Integration name: **KLAVIYO\_UPDATE\_WEBHOOK**

Update the webhook with the given ID.\
\
\&#xNAN;*Rate limits*:\
Burst: `1/s`\
Steady: `15/m` **Scopes:** `webhooks:write`

#### Parameters

| Parameter                                    | Type    | Required | Example | Description                                                                                                                                                                                         |
| -------------------------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                                         | string  |     ✅    | —       | The ID of the webhook.                                                                                                                                                                              |
| `data__id`                                   | string  |          | —       | The ID of the webhook.                                                                                                                                                                              |
| `data__type`                                 | string  |          | —       | Resource type identifier. Must be set to 'webhook' for webhook resources.                                                                                                                           |
| `data__attributes__name`                     | string  |          | —       | A name for the webhook.                                                                                                                                                                             |
| `data__attributes__enabled`                  | boolean |          | —       | Boolean flag to enable or disable the webhook. Set to true to enable the webhook to receive events, or false to disable it.                                                                         |
| `data__attributes__description`              | string  |          | —       | A description for the webhook.                                                                                                                                                                      |
| `data__attributes__secret__key`              | string  |          | —       | A secret key, that will be used for webhook request signing.                                                                                                                                        |
| `data__attributes__endpoint__url`            | string  |          | —       | A url to send webhook calls to. Must be https.                                                                                                                                                      |
| `data__relationships__webhook__topics__data` | array   |          | —       | Array of webhook topic references. Each item should have 'type' set to 'webhook-topic' and 'id' set to a webhook topic identifier (e.g., 'event:klaviyo.sent\_sms', 'event:klaviyo.received\_sms'). |

***

### `Klaviyo Upload Image From File`

Integration name: **KLAVIYO\_UPLOAD\_IMAGE\_FROM\_FILE**

Upload an image from a file. If you want to import an image from an existing url or a data uri, use the Upload Image From URL endpoint instead.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `100/m`\
Daily: `100/d` **Scopes:** `images:write`

#### Parameters

| Parameter | Type    | Required | Example | Description                                                                           |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------- |
| `file`    | object  |     ✅    | —       | The image file to upload. Supported formats: jpeg, png, gif. Maximum file size: 5 MB. |
| `name`    | string  |          | —       | A name for the image. If not provided, defaults to the filename.                      |
| `hidden`  | boolean |          | —       | If True, the image will not be shown in the asset library. Defaults to False.         |

***

### `Klaviyo Upload Image From Url`

Integration name: **KLAVIYO\_UPLOAD\_IMAGE\_FROM\_URL**

Import an image from a url or data uri. If you want to upload an image from a file, use the Upload Image From File endpoint instead.\
\
\&#xNAN;*Rate limits*:\
Burst: `3/s`\
Steady: `100/m`\
Daily: `100/d` **Scopes:** `images:write`

#### Parameters

| Parameter                             | Type    | Required | Example | Description                                                                                                                                                                                   |
| ------------------------------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data__type`                          | string  |          | —       | Resource type for the request. Must be 'image'.                                                                                                                                               |
| `data__attributes__name`              | string  |          | —       | A name for the image. Defaults to the filename if not provided. If the name matches an existing image, a suffix will be added.                                                                |
| `data__attributes__hidden`            | boolean |          | —       | If true, this image is not shown in the asset library.                                                                                                                                        |
| `data__attributes__import__from__url` | string  |          | —       | An existing image url to import the image from. Alternatively, you may specify a base-64 encoded data-uri (`data:image/...`). Supported image formats: jpeg,png,gif. Maximum image size: 5MB. |


# Linear

Your Toolhouse AI Worker can connect to Linear using 33 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](https://toolhouse.app/auth-connections?authkit_slugs=linear).

## Tools (33)

### `Linear Create Attachment`

Integration name: **LINEAR\_CREATE\_ATTACHMENT**

Creates a new attachment and associates it with a specific, existing Linear issue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                |
| ---------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`      | string |     ✅    | `"https://example.com/path/to/file.pdf"` | URL of the attachment's content (e.g., file, webpage, online resource).                                                                                                                                    |
| `title`    | string |     ✅    | `"Design Mockup v2"`                     | Title for the attachment.                                                                                                                                                                                  |
| `issue_id` | string |     ✅    | `"115b6e36-ec6b-4843-9804-10645e70e81b"` | Identifier of the existing Linear issue to which the attachment will be added. Accepts either UUID format (e.g., '590a1127-f98b-49fc-ba74-2df8751c089e') or issue key format (e.g., 'GHO-300', 'ENG-123'). |
| `subtitle` | string |          | `"Final version for review"`             | Optional subtitle or short description for the attachment.                                                                                                                                                 |

***

### `Linear Create Comment Reaction`

Integration name: **LINEAR\_CREATE\_COMMENT\_REACTION**

Tool to add a reaction to an existing Linear comment. Use when you want to programmatically react to a comment on an issue.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example              | Description                                                                      |
| ------------ | ------ | :------: | -------------------- | -------------------------------------------------------------------------------- |
| `emoji`      | string |     ✅    | `"👍"`               | Emoji for the reaction. Supports Unicode emojis or shortcodes like ':thumbsup:'. |
| `comment_id` | string |     ✅    | `"COMMENT-1234abcd"` | Identifier of the existing Linear comment to add the reaction to.                |

***

### `Linear Create Linear Comment`

Integration name: **LINEAR\_CREATE\_LINEAR\_COMMENT**

Creates a new comment on a specified Linear issue. This action modifies shared workspace data and is not reversible — confirm the target issue and comment content before executing.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `body`    | string |     ✅    | `"This is a comment."`                   | Non-empty comment content, in plain text or Markdown. Must not be whitespace-only.                                                                                                                                                                                                                                                                                                                                    |
| `issueId` | string |     ✅    | `"c5748ccf-c67f-4af4-bd74-fe513dc4c054"` | ID of the Linear issue to add the comment to. Must be in one of two formats: (1) UUID format: a 36-character string with hyphens (e.g., 'c5748ccf-c67f-4af4-bd74-fe513dc4c054'), or (2) Shorthand identifier: team key (alphanumeric, must start with a letter, 1-10 chars) followed by hyphen and issue number (e.g., 'ENG-123', 'PROJ-456'). Use LIST\_LINEAR\_ISSUES action to retrieve valid issue IDs if needed. |

***

### `Linear Create Linear Issue`

Integration name: **LINEAR\_CREATE\_LINEAR\_ISSUE**

Creates a new issue in a specified Linear project and team, requiring team\_id and title, and allowing optional properties like description, assignee, state, priority, cycle, and due date. All UUID parameters (state\_id, assignee\_id, cycle\_id, label\_ids, project\_id) must belong to the same team as team\_id. The created issue's id is returned in data.id — capture it for use as parent\_id in sub-issues or follow-up operations. No template\_id field exists; expand templates manually into title and description before calling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                                                                                                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string  |     ✅    | `"Fix login button bug on homepage"`                                                                                                                                                                                                            | The title of the new issue.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `team_id`     | string  |     ✅    | `"9a7f1e3c-4d5b-6a7f-8e9d-0a1b2c3d4e5f"`                                                                                                                                                                                                        | UUID of the team responsible for this issue. IMPORTANT: You must use a valid team UUID that exists in your Linear workspace and that the authenticated user has access to. Use the LINEAR\_GET\_ALL\_LINEAR\_TEAMS action to retrieve the list of available teams and their UUIDs. Do not use team keys (like 'INT' or 'ENG') or team names (like 'Backend' or 'Frontend') - only the UUID format is accepted (e.g., '9a7f1e3c-4d5b-6a7f-8e9d-0a1b2c3d4e5f').                                                                                                                                                                                                                                                                                                                                                                                                    |
| `cycle_id`    | string  |          | `"8a9b0c1d-2e3f-4a5b-6c7d-8e9f0a1b2c3d"`                                                                                                                                                                                                        | UUID of the cycle (sprint) to assign this issue to. Cycles are time-bound periods used to organize and prioritize work. Only applicable if the team has cycles feature enabled. Must be a valid UUID format. Must belong to the same team as team\_id.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `due_date`    | string  |          | `"2024-12-31"`                                                                                                                                                                                                                                  | The target completion date for the issue in ISO8601 datetime format or YYYY-MM-DD TimelessDate format (e.g., '2024-12-31' or '2024-12-31T23:59:59Z')                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `estimate`    | integer |          | `"0"`                                                                                                                                                                                                                                           | The estimated complexity or effort for the issue, represented as a numerical point value (e.g., 1, 2, 3, 5, 8). The specific scale used (e.g., Fibonacci, Linear, T-shirt sizes mapped to numbers) is defined by the team's settings. This field only applies if the estimates feature is enabled for the team. A value of 0 typically means no estimate has been set.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `priority`    | integer |          | `"0"`                                                                                                                                                                                                                                           | Priority of the issue. 0 indicates no priority, 1 is Urgent, 2 is High, 3 is Normal, and 4 is Low.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `state_id`    | string  |          | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"`                                                                                                                                                                                                        | UUID of the workflow state to assign to the issue (must be a valid UUID format, not a state name like 'backlog' or 'done') Must belong to the same team as team\_id — cross-team state UUIDs will be rejected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `label_ids`   | array   |          | `["c1f6e2b0-1a2b-3c4d-5e6f-7a8b9c0d1e2f","d4e8f0a0-2b3c-4d5e-6f7a-8b9c0d1e2f3a"]`                                                                                                                                                               | A list of UUIDs for labels to be added to this issue. EXCLUSIVE GROUP CONSTRAINT: Linear organizes labels into groups where only ONE label per group can be applied. STEP-BY-STEP: (1) Call LINEAR\_LIST\_LINEAR\_LABELS with team\_id to get available labels. (2) FILTER OUT any labels where is\_group=true (these are parent groups, not usable labels). (3) For remaining labels, group them by parent.id - labels with the SAME parent.id are mutually exclusive. (4) From each group with a shared parent.id, select ONLY ONE label. (5) Labels with parent=null can be freely combined. EXAMPLE: If labels A and B both have parent.id='X', you can only use A OR B, not both. Always call LINEAR\_LIST\_LINEAR\_LABELS with team\_id to scope results — omitting team\_id may return workspace-wide label IDs that are rejected for team-scoped issues. |
| `parent_id`   | string  |          | `"7f8e9d0c-1b2a-3c4d-5e6f-7a8b9c0d1e2f"`                                                                                                                                                                                                        | UUID of an existing issue to set as the parent of this new issue, creating a sub-issue relationship (must be a valid UUID format)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `project_id`  | string  |          | `"9a7f1e3c-4d5b-6a7f-8e9d-0a1b2c3d4e5f"`                                                                                                                                                                                                        | UUID of the project to associate with this issue. Must be a valid UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx with 8-4-4-4-12 hex characters). IMPORTANT: The project must belong to the same team specified in team\_id - Linear requires projects and issues to be in the same team. Use the LIST\_LINEAR\_PROJECTS action to find projects, then verify the project belongs to the target team before using it here.                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `assignee_id` | string  |          | `"b86e2b0f-6b1a-4db8-9731-41ef97f5ba8e"`                                                                                                                                                                                                        | UUID of the user to assign to this issue (must be a valid UUID format) User must be a member of the team specified in team\_id.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `description` | string  |          | `"The login button is unresponsive. This issue started after the v2.3 deployment. Steps to reproduce:\n1. Navigate to the homepage.\n2. Click the login button.\n\nExpected: User is redirected to the login page.\nActual: No action occurs."` | A detailed description of the issue, which can include markdown formatting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

***

### `Linear Create Linear Issue Relation`

Integration name: **LINEAR\_CREATE\_LINEAR\_ISSUE\_RELATION**

Create a relationship between two Linear issues using the issueRelationCreate mutation. Use this to establish connections like 'blocks', 'duplicate', or 'related' between issues.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                                                                                                                                                                                    |
| ------------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `issue_id`         | string |     ✅    | `"c5748ccf-c67f-4af4-bd74-fe513dc4c054"` | UUID of the primary issue in the relationship. Must be a valid Linear issue UUID (e.g., 'c5748ccf-c67f-4af4-bd74-fe513dc4c054'). Use LINEAR\_LIST\_LINEAR\_ISSUES or LINEAR\_GET\_LINEAR\_ISSUE to retrieve valid issue UUIDs. |
| `relation_type`    | string |     ✅    | `"related"`                              | Type of relationship between the two issues. Options: 'blocks' (this issue blocks the related issue), 'duplicate' (this issue is a duplicate of the related issue), 'related' (general relationship between issues).           |
| `related_issue_id` | string |     ✅    | `"71bc4480-3aa1-4c56-b657-827996658662"` | UUID of the related issue. Must be a valid Linear issue UUID (e.g., '71bc4480-3aa1-4c56-b657-827996658662'). Use LINEAR\_LIST\_LINEAR\_ISSUES or LINEAR\_GET\_LINEAR\_ISSUE to retrieve valid issue UUIDs.                     |

***

### `Linear Create Linear Label`

Integration name: **LINEAR\_CREATE\_LINEAR\_LABEL**

Creates a new label in Linear for a specified team, used to categorize and organize issues. Label names must be unique within each team. If a label with the same name already exists, the existing label will be returned. Both new and existing labels return the same object structure; check the label's `createdAt` or compare IDs to determine if creation occurred.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                       | Description                                                                        |
| ------------- | ------ | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"Bug"`                                       | Name of the new label, displayed in the Linear UI. Must be unique within the team. |
| `color`       | string |     ✅    | `"#FF0000"`                                   | Hexadecimal color code (e.g., '#FF0000') for the label's appearance in the UI.     |
| `team_id`     | string |     ✅    | `"<team_uuid>"`                               | Identifier of the team for which this label will be created.                       |
| `description` | string |          | `"Issues related to critical software bugs."` | Optional detailed description for the label, providing context on its use.         |

***

### `Linear Create Linear Project`

Integration name: **LINEAR\_CREATE\_LINEAR\_PROJECT**

Creates a new Linear project with specified name and team associations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                                     | Description                                                                                                                                                                                                                                                                                                                                  |
| ------------- | ------- | :------: | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `icon`        | string  |          | `"Project"`                                                                                 | Optional icon for the project. Must be a valid icon name string from Linear's icon set (case-sensitive). Does NOT accept unicode emoji characters. Verified valid icon names include: 'Project', 'Rocket', 'Bug', 'Team', 'Calendar', 'Home'. Linear offers \~70 icon designs; invalid names will cause an INVALID\_INPUT error.             |
| `name`        | string  |     ✅    | `"LinkedIn Marketing Campaign"`                                                             | The name of the project. This is the only required field. Linear permits duplicate project names within a team; uniqueness must be enforced externally if required.                                                                                                                                                                          |
| `color`       | string  |          | `"#FF6B6B"`                                                                                 | Optional color for the project (hex color code).                                                                                                                                                                                                                                                                                             |
| `lead_id`     | string  |          | `"b0c67ec0-e89e-42a5-87e3-cf31817f3574"`                                                    | Optional ID (UUID) of the user who will lead this project. User IDs can be obtained using the LINEAR\_LIST\_LINEAR\_USERS action or from the team members returned by LINEAR\_GET\_ALL\_LINEAR\_TEAMS. Must be a valid UUID in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.                                                              |
| `priority`    | integer |          | `1`                                                                                         | Priority level of the project. 0 = No priority, 1 = Urgent, 2 = High, 3 = Normal, 4 = Low.                                                                                                                                                                                                                                                   |
| `team_ids`    | array   |     ✅    | `["a1b2c3d4-e5f6-7890-1234-567890abcdef"]`                                                  | List of team IDs (UUIDs) that this project will be associated with. At least one valid team ID is required. Team IDs can be obtained using the LINEAR\_GET\_ALL\_LINEAR\_TEAMS action. Must be valid UUIDs in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.                                                                               |
| `start_date`  | string  |          | `"2024-01-15"`                                                                              | Optional planned start date. Accepts various formats including YYYY-MM-DD, ISO datetime strings (e.g., 2024-01-15T10:30:00Z), or Unix timestamps. Will be normalized to YYYY-MM-DD format for the API. Use YYYY-MM-DD format only; ISO datetime strings and Unix timestamps cause validation failures despite being listed as accepted.      |
| `description` | string  |          | `"A comprehensive marketing campaign to increase LinkedIn engagement and brand awareness."` | Optional description for the project. Supports markdown formatting. Maximum 255 characters (API limit: 255 accepted, 256 rejected).                                                                                                                                                                                                          |
| `target_date` | string  |          | `"2024-06-30"`                                                                              | Optional planned completion date. Accepts various formats including YYYY-MM-DD, ISO datetime strings (e.g., 2024-06-30T23:59:59Z), or Unix timestamps. Will be normalized to YYYY-MM-DD format for the API. Use YYYY-MM-DD format only; ISO datetime strings and Unix timestamps cause validation failures despite being listed as accepted. |

***

### `Linear Create Project Milestone`

Integration name: **LINEAR\_CREATE\_PROJECT\_MILESTONE**

Tool to create a project milestone in Linear with a name and optional target date and sort order. Use when you need to add milestones to track progress within a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                    | Description                                                                                                                                                                                                                                  |
| ------------- | ------ | :------: | ---------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"Beta Release"`                                           | The name/title of the milestone. This is a required field.                                                                                                                                                                                   |
| `project_id`  | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"`                   | UUID of the project to which this milestone belongs. Must be a valid UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Use LINEAR\_LIST\_LINEAR\_PROJECTS or LINEAR\_GET\_LINEAR\_PROJECT to find valid project UUIDs.                     |
| `sort_order`  | number |          | `1`                                                        | Optional sort order number for the milestone. Lower numbers appear first. This determines the display order of milestones within a project.                                                                                                  |
| `description` | string |          | `"Complete all beta testing and user feedback iterations"` | Optional description for the milestone. Supports markdown formatting.                                                                                                                                                                        |
| `target_date` | string |          | `"2024-06-30"`                                             | Optional target date for the milestone in YYYY-MM-DD format. Accepts date strings in the format YYYY-MM-DD only (e.g., '2024-06-30'). ISO datetime strings or Unix timestamps are not supported by Linear's projectMilestoneCreate mutation. |

***

### `Linear Create Project Update`

Integration name: **LINEAR\_CREATE\_PROJECT\_UPDATE**

Tool to create a project status update post for a Linear project. Use when you need to post progress updates, status reports, or announcements for a project.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                                                                                                           | Description                                                                                                                                                                                                                                                      |
| ---------------- | ------- | :------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `body`           | string  |     ✅    | `"## Progress\n\nCompleted user authentication flow and started work on the dashboard.\n\n## Next Steps\n\n- Finalize dashboard design\n- Begin API integration"` | The body content of the project update. Supports markdown formatting. This is the main content describing the project status, progress, blockers, and next steps.                                                                                                |
| `health`         | string  |          | `"onTrack"`                                                                                                                                                       | Health status for a project update in Linear.                                                                                                                                                                                                                    |
| `project_id`     | string  |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"`                                                                                                                          | The unique identifier (UUID) of the project to create an update for. Must be a valid Linear project UUID in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Use LINEAR\_LIST\_LINEAR\_PROJECTS or LINEAR\_GET\_LINEAR\_PROJECT to retrieve valid project UUIDs. |
| `is_diff_hidden` | boolean |          | `true`                                                                                                                                                            | Optional flag to control whether the diff (changes since last update) should be hidden in the update. If true, the diff will not be displayed. If false or not provided, the diff will be shown by default.                                                      |

***

### `Linear Delete Linear Issue`

Integration name: **LINEAR\_DELETE\_LINEAR\_ISSUE**

Archives an existing Linear issue by its ID, which is Linear's standard way of deleting issues; the operation is idempotent. Archiving is permanent with no built-in undo — confirm the issue identifier and title with the user before executing, especially in bulk operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                                                                                                                                                                                                                                                                                                                                                             |
| ---------- | ------ | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `issue_id` | string |     ✅    | `"PROJ-123"` | ID of the Linear issue to be archived. Must be in one of two formats: (1) UUID format: a 36-character string with hyphens (e.g., 'c5748ccf-c67f-4af4-bd74-fe513dc4c054'), or (2) Shorthand identifier: team key (alphanumeric, must start with a letter, 1-10 chars) followed by hyphen and issue number (e.g., 'ENG-123', 'MAN8-456'). Note: Plain numeric IDs are NOT valid Linear issue identifiers. |

***

### `Linear Get All Linear Teams`

Integration name: **LINEAR\_GET\_ALL\_LINEAR\_TEAMS**

DEPRECATED: Use ListLinearTeams instead (returns paginated payloads with members and projects); this tool returns simpler id/name-level data for all teams visible to the connected workspace with no server-side filtering. Match teams on stable team id, not display name, as names are not guaranteed unique. Partial results reflect workspace permission scope, not tool failure. Skip this call if team\_id values are already known.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                 |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor for pagination. Use the `endCursor` from the previous response's `page_info` to fetch the next page. |
| `first`   | integer |          | —       | Number of teams to return per page. Use with `after` to paginate through all teams.                         |

***

### `Linear Get Attachment`

Integration name: **LINEAR\_GET\_ATTACHMENT**

Downloads a specific attachment from a Linear issue; the `file_name` must include the correct file extension.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                             |
| --------------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------- |
| `issue_id`      | string |     ✅    | `"LIN-123"`                              | The unique identifier of the Linear issue from which the attachment will be downloaded. |
| `file_name`     | string |     ✅    | `"specification_document.pdf"`           | The desired name for the downloaded file, including its extension.                      |
| `attachment_id` | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | The unique identifier of the specific attachment to download.                           |

***

### `Linear Get Current User`

Integration name: **LINEAR\_GET\_CURRENT\_USER**

Gets the currently authenticated user's ID, name, email, and other profile information — this is the account behind the API token, which may be a bot or service account rather than a human user. Use the returned `id` field (nested under `data.viewer`) for downstream Linear operations requiring user ID filtering. To search or compare other workspace members, use LINEAR\_LIST\_LINEAR\_USERS instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Linear Get Cycles By Team Id`

Integration name: **LINEAR\_GET\_CYCLES\_BY\_TEAM\_ID**

Retrieves all cycles for a specified Linear team ID; cycles are time-boxed work periods (like sprints). Results are team-scoped to the given team\_id. To identify the active cycle, check that the current date (in UTC) falls between a cycle's startAt and endAt fields; either field may be null. Results may be paginated — follow page\_info cursors to retrieve all cycles.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                                      |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`   | string  |          | —                                        | Cursor for pagination. Use the `endCursor` value from the previous response's `page_info` to fetch the next page.                                                                                |
| `first`   | integer |          | —                                        | Number of cycles to return per page. Maximum 250. Use with `after` to paginate through all cycles.                                                                                               |
| `team_id` | string  |     ✅    | `"d282d590-8462-4390-8ef9-98f5ac2190b0"` | The team's unique identifier. Must be a valid UUID (e.g., 'd282d590-8462-4390-8ef9-98f5ac2190b0'), not a human-readable name or slug; use LINEAR\_GET\_ALL\_LINEAR\_TEAMS to resolve if unknown. |

***

### `Linear Get Issue Defaults`

Integration name: **LINEAR\_GET\_ISSUE\_DEFAULTS**

Fetches a Linear team's default issue estimate and state, useful for pre-filling new issue forms.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `team_id` | string |     ✅    | `"d4b8dfcc-399f-4b67-9684-1f2f7dd79a4b"` | Identifier of the Linear team. Must be a valid UUID. |

***

### `Linear Get Linear Issue`

Integration name: **LINEAR\_GET\_LINEAR\_ISSUE**

Retrieves an existing Linear issue's comprehensive details, including id, identifier, title, description, timestamps, state, team, creator, attachments, comments (with user info and timestamps, use issue.comments.nodes for comment IDs), subscribers, and due date. Does not include parent, milestone, cycle, or relation graphs—use LINEAR\_RUN\_QUERY\_OR\_MUTATION for those. Optional fields (labels, project, state, assignee, cycle) may be null; guard against null when accessing nested properties. Returns null or 'Entity not found' for invalid IDs, cross-workspace IDs, or restricted teams. Rate limit: \~60 req/min; HTTP 429 on excess—apply exponential backoff and respect Retry-After headers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `issue_id` | string |     ✅    | `"c5748ccf-c67f-4af4-bd74-fe513dc4c054"` | ID of the Linear issue. Must be in one of two formats: (1) UUID format: a 36-character string with hyphens (e.g., 'c5748ccf-c67f-4af4-bd74-fe513dc4c054'), or (2) Shorthand identifier: team key (alphanumeric, must start with a letter, 1-10 chars) followed by hyphen and issue number (e.g., 'ENG-123', 'MAN8-456'). Note: Plain numeric IDs are NOT valid Linear issue identifiers. Use LIST\_LINEAR\_ISSUES action to retrieve valid issue IDs if needed. Full URLs are also invalid and must be resolved to UUID or shorthand format first. |

***

### `Linear Get Linear Project`

Integration name: **LINEAR\_GET\_LINEAR\_PROJECT**

Retrieves a single Linear project by its unique identifier. Use when verifying a newly created or updated project, or when fetching detailed project information by ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                  | Description                                                           |
| --------------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------- |
| `project_id`          | string  |     ✅    | `"ef19b35e-ce4f-4132-9705-811d4d6c8c08"` | The unique identifier (UUID) of the Linear project to retrieve.       |
| `include_teams`       | boolean |          | —                                        | Whether to include teams associated with the project in the response. |
| `include_members`     | boolean |          | —                                        | Whether to include project members in the response.                   |
| `include_initiatives` | boolean |          | —                                        | Whether to include related initiatives in the response.               |

***

### `Linear List Issue Drafts`

Integration name: **LINEAR\_LIST\_ISSUE\_DRAFTS**

Tool to list issue drafts. Use when you need to fetch draft issues for review or further editing. Check `pageInfo.hasNextPage` in the response to determine if additional drafts exist beyond the current page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                                                                                         |
| --------- | ------- | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | `"MTY4NzE5NjgwMDAwMA=="` | Cursor for pagination. Use the `endCursor` from the previous response's `pageInfo` to fetch the next set of drafts. |
| `first`   | integer |          | `20`                     | Number of draft issues to return.                                                                                   |

***

### `Linear List Issues By Team Id`

Integration name: **LINEAR\_LIST\_ISSUES\_BY\_TEAM\_ID**

Tool to list all issues for a specific Linear team, scoped by team ID. Use when you need to retrieve issues belonging to a particular team without fetching workspace-wide issues. This is more efficient than workspace-wide listing followed by client-side filtering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                                                | Description                                                                                                                                                                                                              |
| ------------------ | ------- | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`            | string  |          | `"WyIyMDI0LTAxLTE1VDE2OjMwOjAwLjAwMFoiLCJhYmMxMjMiXQ"` | Opaque pagination cursor for fetching the next page of results. MUST be the exact `end_cursor` value from a previous response's `page_info`. Cannot use issue IDs, UUIDs, or arbitrary strings. Omit for the first page. |
| `first`            | integer |          | `50`                                                   | Number of issues to return per page (forward pagination). Must be between 1 and 250.                                                                                                                                     |
| `team_id`          | string  |     ✅    | `"9cfb482a-81e3-4154-b5b9-2c805e70a02d"`               | The unique identifier (UUID) of the Linear team whose issues you want to list. This is the team's ID, not the team's name or key.                                                                                        |
| `include_archived` | boolean |          | —                                                      | Whether to include archived issues in the results. Default is false (only active issues are returned).                                                                                                                   |

***

### `Linear List Linear Cycles`

Integration name: **LINEAR\_LIST\_LINEAR\_CYCLES**

Retrieves all cycles (time-boxed sprint iterations) org-wide from the Linear account; no filters applied. In large multi-team workspaces this produces heavy responses — filter client-side by team ID and date range using each cycle's startsAt/endsAt fields. Cycles are team-scoped; always group by team ID to avoid mixing sprints across teams. To identify the active sprint, verify the current UTC timestamp falls between startsAt and endsAt, and handle null startsAt/endsAt defensively. Timestamps are UTC. Results may be paginated; follow pageInfo.endCursor and hasNextPage until hasNextPage is false to avoid truncated lists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                       |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor for pagination. Use the `endCursor` value from the previous response's `page_info` to fetch the next page. |
| `first`   | integer |          | —       | Number of cycles to return per page. Use with `after` to paginate through all cycles.                             |

***

### `Linear List Linear Issues`

Integration name: **LINEAR\_LIST\_LINEAR\_ISSUES**

Lists non-archived Linear issues; if project\_id is not specified, issues from all accessible projects are returned. Can filter by assignee\_id. Only project\_id and assignee\_id server-side filters are supported; label, state, team, cycle, or date filters must be done client-side or via LINEAR\_RUN\_QUERY\_OR\_MUTATION. Response is a flat issues array plus page\_info object (not GraphQL nodes/pageInfo). Fields like cycle membership, dueDate, completedAt, comments, and attachments are absent; use LINEAR\_GET\_LINEAR\_ISSUE for enrichment. state and labels are nested objects (labels as labels.nodes array). Response order is not guaranteed; sort client-side after collecting all pages. No team\_id filter; scope by project\_id or use LINEAR\_RUN\_QUERY\_OR\_MUTATION.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`                | string  |          | `"a3e2d67f-ae6e-4591-85ff-97203212115e"` | Cursor for pagination (opaque string). Use the exact `endCursor` value from the previous response's `page_info` to fetch the next set of issues. Do not modify, prefix, or transform the cursor value in any way.                                                                                                                                                                                                                                                                 |
| `first`                | integer |          | `20`                                     | Number of issues to return. Maximum 250 per page. To retrieve all issues, loop using page\_info.hasNextPage and pass page\_info.endCursor as after until hasNextPage is false.                                                                                                                                                                                                                                                                                                    |
| `project_id`           | string  |          | `"project-uuid-123"`                     | ID of the project to filter issues by. If provided, only issues belonging to this project will be returned. Must be a valid project ID that exists and is accessible to the authenticated user.                                                                                                                                                                                                                                                                                   |
| `assignee_id`          | string  |          | `"me"`                                   | UUID of the user to filter issues by assignee. Use 'me' to filter by the current authenticated user, or provide a valid Linear user UUID (format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Use LINEAR\_GET\_CURRENT\_USER to get your own ID, or LINEAR\_LIST\_LINEAR\_USERS to retrieve other user UUIDs. Note: 'me', '@me', and email addresses are NOT accepted; only a valid UUID or the literal string 'me' if supported — use LINEAR\_GET\_CURRENT\_USER to obtain your UUID. |
| `original_cursor`      | string  |          | —                                        | The original cursor value before it was reset.                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `cursor_was_corrupted` | boolean |          | —                                        | Indicates whether the pagination cursor was corrupted and reset.                                                                                                                                                                                                                                                                                                                                                                                                                  |

***

### `Linear List Linear Labels`

Integration name: **LINEAR\_LIST\_LINEAR\_LABELS**

Retrieves labels from Linear. If team\_id is provided, returns labels for that specific team; if omitted, returns all labels across the workspace. Label names are not unique across teams — always use returned IDs, not names, and track each label ID with its team ID. In large workspaces, results may paginate; follow pageInfo.hasNextPage and pageInfo.endCursor to retrieve all labels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —                                        | Cursor for pagination. Use the `endCursor` value from the previous response's `page_info` to fetch the next page.                                                                                                                                                                                                                                                                                                 |
| `first`   | integer |          | —                                        | Number of labels to return per page. Maximum 250. Use with `after` to paginate through all labels.                                                                                                                                                                                                                                                                                                                |
| `team_id` | string  |          | `"abcdef01-2345-6789-abcd-ef0123456789"` | The unique identifier of the team for which to retrieve labels. If provided, returns labels scoped to that specific team. If omitted, returns all labels across the workspace. Workspace-wide label IDs (returned when team\_id is omitted) may not be valid for team-scoped mutations like LINEAR\_CREATE\_LINEAR\_ISSUE or LINEAR\_UPDATE\_ISSUE; pass the relevant team\_id to get labels valid for that team. |

***

### `Linear List Linear Projects`

Integration name: **LINEAR\_LIST\_LINEAR\_PROJECTS**

Retrieves all projects from the Linear account. Returns a flat array (not a GraphQL connection) with fields id and name; use LINEAR\_RUN\_QUERY\_OR\_MUTATION for progress, state, issues, or team linkage. No server-side filtering: all workspace projects are returned regardless of team or name — filter client-side. Multiple projects can share identical names; always confirm project\_id before downstream use. Results are permission-scoped to the connected user. Pagination: loop while page\_info.hasNextPage is true, passing page\_info.endCursor as after, or results will be silently truncated. HTTP 429 may occur in large workspaces; apply exponential backoff between calls.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                 |
| --------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor for pagination. Use the `endCursor` from the previous response's `page_info` to fetch the next page. |
| `first`   | integer |          | —       | Number of projects to return per page. Use with `after` to paginate through all projects.                   |

***

### `Linear List Linear States`

Integration name: **LINEAR\_LIST\_LINEAR\_STATES**

Retrieves all workflow states for a specified team in Linear, representing the stages an issue progresses through in that team's workflow. Returned state IDs are team-scoped — never reuse a stateId across different teams, as this causes validation errors or 'Entity not found' failures in tools like LINEAR\_UPDATE\_ISSUE. State names (e.g., 'Done', 'In Progress') are non-unique across teams; always resolve names to IDs via this tool for the specific team\_id before using them in filters or mutations. Uses cursor-based pagination via pageInfo.hasNextPage and endCursor; iterate until hasNextPage is false to avoid missing states in large workspaces. Always fetch fresh state IDs rather than hardcoding or reusing stale values.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                                                                                |
| --------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | —       | Cursor for pagination. Use the `endCursor` value from the previous response's `page_info` to fetch the next page.                                                                                                          |
| `first`   | integer |          | —       | Number of states to return per page. Maximum 250. Use with `after` to paginate through all states.                                                                                                                         |
| `team_id` | string  |     ✅    | —       | UUID of a team in your Linear workspace. Must be a valid UUID (e.g., '2a6e9b1b-19cd-4e30-b5bd-7b34dc491c7e'). To find valid team IDs, first use the 'Get all teams' or 'Get teams' action to list teams in your workspace. |

***

### `Linear List Linear Teams`

Integration name: **LINEAR\_LIST\_LINEAR\_TEAMS**

Retrieves all teams with their members and projects. Use stable team IDs or keys (not display names) for subsequent operations — names are non-unique. Results reflect only teams visible to the authenticated token scope; missing teams or members indicate permission limits. Large workspaces paginate via pageInfo.hasNextPage/endCursor — incomplete pagination silently drops teams or members. Members may belong to multiple teams; deduplicate user IDs when aggregating. Use LINEAR\_GET\_ALL\_LINEAR\_TEAMS instead when only identifiers are needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`      | string  |          | —                                        | Cursor for pagination. Use the `endCursor` from the previous response's `page_info` to fetch the next page.                                                                                                                                                                                                                                                               |
| `first`      | integer |          | —                                        | Number of teams to return per page. Maximum 250. Use with `after` to paginate through all teams.                                                                                                                                                                                                                                                                          |
| `project_id` | string  |          | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | Optional project ID to filter teams' associated projects. If provided, only projects matching this ID will be included in each team's 'projects' list. If not provided, all projects for each team will be returned. Filtering is applied per-team after fetch; a project\_id belonging to a different team silently returns an empty projects list rather than an error. |

***

### `Linear List Linear Users`

Integration name: **LINEAR\_LIST\_LINEAR\_USERS**

Lists all workspace users (not team-scoped) with their IDs, names, emails, and active status. Display names are non-unique — use email to disambiguate before extracting an ID. Only assign users with `active: true`. Returned IDs are UUID strings; pass them as-is to fields like `assignee_id` — never substitute names, emails, or tokens. When joining with other tools, always join on IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                                                                                                                                           |
| --------- | ------- | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`   | string  |          | `"MTY4NzE5NjgwMDAwMA=="` | Cursor for pagination. Use the `endCursor` from the previous response's `page_info` to fetch the next set of users.                                                   |
| `first`   | integer |          | `20`                     | Number of users to return. In large workspaces, check `page_info.hasNextPage` and paginate using `after`; omitting pagination silently drops users beyond this limit. |

***

### `Linear Remove Issue Label`

Integration name: **LINEAR\_REMOVE\_ISSUE\_LABEL**

Removes a specified label from an existing Linear issue using their IDs; successful even if the label isn't on the issue. Operation is irreversible — obtain explicit user approval before executing. Use this tool instead of LINEAR\_UPDATE\_ISSUE to avoid replacing the entire label set.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example   | Description                                                                                                                                                                                  |
| ---------- | ------ | :------: | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `issue_id` | string |     ✅    | `"ISS-1"` | Identifier of the Linear issue from which to remove the label. Verify this is the correct issue before executing; wrong IDs can silently remove labels from unintended issues without error. |
| `label_id` | string |     ✅    | `"LAB-1"` | Identifier of the label to remove. The operation is successful without change if this label isn't on the issue.                                                                              |

***

### `Linear Remove Reaction`

Integration name: **LINEAR\_REMOVE\_REACTION**

Tool to remove a reaction on a comment. Use when you have a reaction ID and need to delete it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                           |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------- |
| `reaction_id` | string |     ✅    | `"01234567-89ab-cdef-0123-456789abcdef"` | Identifier of the reaction to delete. |

***

### `Linear Run Query Or Mutation`

Integration name: **LINEAR\_RUN\_QUERY\_OR\_MUTATION**

Execute any GraphQL query or mutation against Linear's API. USE WHEN: No dedicated action exists, need complex filtering, custom fields, or schema discovery. \*\*\* INTROSPECTION FIRST - NEVER GUESS FIELD NAMES \*\*\* Run introspection before unknown operations: - query { \_\_type(name: "Issue") { fields { name } } } - query { \_\_type(name: "Mutation") { fields { name } } } Linear uses nested objects (project { id }), NOT scalar IDs (projectId). KEY: All IDs are UUIDs. Filter: { field: { eq: value } }. Pagination: nodes\[] + pageInfo.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------- | ------ | :------: | --------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `variables`         | object |          | `"{}"`                                                                                  | Variables for the GraphQL operation as a JSON object. Optional - omit this field or use {} if no variables are needed. RULES: - Keys must match variable names in query (without '$' prefix) - Types must align with query definition (String/Int/Boolean/ID/DateTime/arrays) - ID-type variables: Declare as ID in query ($projectId: ID!), but pass as string in variables dict Example: query has "$teamId: ID!" -> variables {"teamId": "8b0af5ab-b432-473f-94a1-6b00726bcf88"} - ID-type variables (e.g., issueId, teamId, stateId) must not be empty strings ERROR RECOVERY: - If query with variables fails, test with variables={} first to confirm query syntax is valid - Verify IDs exist by querying for them before using in mutations                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `query_or_mutation` | string |     ✅    | `"query { __type(name: \"Issue\") { fields { name type { name ofType { name } } } } }"` | GraphQL query or mutation for Linear's API. Must be a non-empty, valid GraphQL query or mutation string. RULES (each prevents a silent failure or hard-to-debug error): 1. INTROSPECTION FIRST: Never guess field/mutation names. Run \_\_type introspection before any uncertain operation. 2. INPUT vs OUTPUT naming: Query outputs use nested objects (lead { id name }), but mutation inputs use scalar ID fields (leadId: "UUID"). Using lead: { id: "..." } in input causes "Did you mean leadId?" errors. 3. POLYMORPHIC TYPES: Interfaces/unions (e.g., Notification) require inline fragments for subtype-specific fields. Use ... on IssueNotification { issue { id } } instead of querying issue directly on Notification. 4. NO totalCount: Connection types have only nodes and pageInfo. totalCount does not exist (unlike GitHub/GitLab). 5. DEPRECATED issueSearch: Use issues(filter: {...}) or searchIssues(term: "text") instead. issueSearch returns INPUT\_ERROR. 6. FILTER OPERATORS: Use nin (NOT notIn) for "not in array". Use eq/neq/in/nin/contains/gt/gte/lt/lte. STRING CASE SENSITIVITY (CRITICAL): ALL string operators (eq, neq, contains, startsWith, endsWith, etc.) are case-sensitive. Linear provides NO case-insensitive operators (eqCaseInsensitive, containsCaseInsensitive, etc. do NOT exist). For state name matching, query exact state names or use state.type field. For user/entity search, prefer contains with exact casing or query first then filter. 7. SORT vs ORDERBY (MUTUALLY EXCLUSIVE - use ONE or the OTHER, NEVER both): - orderBy: Simple enum values for common sorting (createdAt, updatedAt). Example: orderBy: createdAt - sort: Complex objects for manual ordering with granular control. Example: sort: \[{ manual: { order: Ascending } }] - CRITICAL: Using both simultaneously causes INPUT\_ERROR: "Cannot use both sort and orderBy options" - Use Ascending/Descending (capitalized) for sort enums, NOT asc/desc 8. LABELS ARE TEAM-SCOPED: No root-level labels query. Access via teams { nodes { labels { nodes { ... } } } }. Never use isGroup:true labels directly. 9. LABEL FILTERS: No 'none' operator. Use labels: { length: { eq: 0 } } for issues with no labels. Available: some (default), every, length, null. 10. SEARCH: searchIssues(term: "text") - term is required String!, NOT 'query'. 11. DATE TYPES: Date filters use DateTimeOrDuration! (not DateTime!). TimelessDate="YYYY-MM-DD" for project dates. DateTime="2024-01-15T10:30:00Z". 12. ID EXCEPTIONS: team(id:), project(id:), issue(id:), issueUpdate(id:) use String!, not ID!. Entity IDs in filters use ID! type. 13. PROJECT.LEAD: Singular User object (nullable), NOT a connection. Use lead { id name }, NOT leads { nodes { ... } }. 14. PROJECT.STATE: Scalar String ("planned", "started", etc.), not an object. Use statusId (not 'state') in ProjectCreateInput/ProjectUpdateInput. 15. PROJECT FILTER: Use accessibleTeams.some, NOT 'team'. Example: { accessibleTeams: { some: { key: { eq: "ENG" } } } } 16. CYCLE.PROGRESS: Scalar Float (0.0-1.0), NOT an object. Use currentProgress for detailed scope data. 17. INTEGRATION FIELDS: Only id, service, createdAt, updatedAt, archivedAt, organization, team, creator. No key/name/type/url/description fields. 18. DOCUMENTCONTENT vs DOCUMENTS: documentContent is inline content body (no title field). documents is the connection with title/summary metadata. 19. DELETE PAYLOADS: Most return DeletePayload { success entityId }. Issue/project deletes return ArchivePayload { success entity { id } }. Use introspection if unsure. 20. DOCUMENT CREATE: Requires at least one relation field (projectId, issueId, teamId, etc.) or you get INVALID\_INPUT. 21. FILE UPLOAD: uploadUrl/assetUrl are nested under uploadFile, NOT direct fields on UploadPayload. 22. WEBHOOKS: webhookCreate requires EITHER teamId OR allPublicTeams: true. 23. COMMENTS: commentCreate uses issueId (NOT projectId). Use parentId for replies. 24. QUERY COMPLEXITY: Max 10,000 points. Use first: 10-25 with nested connections. "Query too complex" = reduce pagination or nesting. 25. CONNECTIONS: \*Connection/\*SearchPayload types need nodes wrapper. Other Payloads don't. 26. FILTER SYNTAX: { field: { eq: value } }, { or: \[...] } (lowercase 'or'). NULL checks: { field: { eq: null } } or { neq: null }. 27. INITIATIVE STATUS: Use bare enum in mutations (status: Active), quoted string in filters (status: { eq: "Active" }). 28. CUSTOMVIEW: Has NO 'url' field (unlike Issue). Use slugId for identification. ERROR RECOVERY: On field errors, run \_\_type introspection. On enum errors, introspect the enum. On complexity errors, reduce pagination. Docs: <https://developers.linear.app/docs/graphql/working-with-the-graphql-api> |

***

### `Linear Search Issues`

Integration name: **LINEAR\_SEARCH\_ISSUES**

Search Linear issues using full-text search across identifier, title, and description. Use when you need to find issues by keywords or specific identifiers. Note: This endpoint only supports full-text search; for structured filtering by team, project, assignee, state, or labels, use LIST\_ISSUES\_BY\_TEAM\_ID instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                  | Description                                                                                                                                                                                                                                                                                          |
| ------------------ | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`            | string  |          | `"MTY4NzE5NjgwMDAwMA=="` | Cursor for pagination. Use the endCursor from the previous response's page\_info to fetch the next page of results.                                                                                                                                                                                  |
| `first`            | integer |          | `25`                     | Number of issues to return per page. Must be between 1 and 50. Defaults to 25.                                                                                                                                                                                                                       |
| `query`            | string  |     ✅    | `"authentication bug"`   | The search query text. Searches across issue identifier (e.g., 'ENG-123'), title, and description fields. This is a full-text search only; structured filtering by team, project, assignee, state, or labels is NOT supported on this endpoint. Use LIST\_ISSUES\_BY\_TEAM\_ID for filtered queries. |
| `include_archived` | boolean |          | `false`                  | Whether to include archived issues in search results. Defaults to false (only active issues).                                                                                                                                                                                                        |

***

### `Linear Update Issue`

Integration name: **LINEAR\_UPDATE\_ISSUE**

Updates an existing Linear issue using its `issue_id`; requires at least one other attribute for modification, and all provided entity IDs (for state, assignee, labels, etc.) must be valid UUIDs — only `issueId` accepts key format (e.g., 'ENG-123'). All updated fields are fully overwritten, not merged; omit any field you do not intend to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------- | ------- | :------: | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string  |          | `"Fix critical bug in payment module"`                                               | New title for the issue.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `teamId`      | string  |          | `"106bf990-89b9-4cf3-a5df-3859ee75e596"`                                             | UUID of the team to move the issue to. Use this to transfer an issue from one team to another. The team must exist in your workspace and you must have access to it. Use the GET\_ALL\_LINEAR\_TEAMS or LIST\_LINEAR\_TEAMS action to get valid team IDs.                                                                                                                                                                                                                                      |
| `cycleId`     | string  |          | `"8a9b0c1d-2e3f-4a5b-6c7d-8e9f0a1b2c3d"`                                             | UUID of the cycle (sprint) to assign this issue to. Must be a valid UUID in the format 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'. IMPORTANT: Cycles are team-scoped in Linear. The cycle must belong to the same team as the issue, otherwise the API will reject the request with an error. Use GET\_CYCLES\_BY\_TEAM\_ID with the issue's team\_id to get valid cycle IDs.                                                                                                                      |
| `dueDate`     | string  |          | `"2024-12-31"`                                                                       | New due date in ISO8601 datetime format or YYYY-MM-DD TimelessDate format (e.g., '2024-12-31' or '2024-12-31T23:59:59Z')                                                                                                                                                                                                                                                                                                                                                                       |
| `issueId`     | string  |     ✅    | `"d282c513-3265-4513-9099-abc0123def45"`                                             | Identifier of the issue to update. Accepts either UUID format (e.g., 'd282c513-3265-4513-9099-abc0123def45') or issue key format (e.g., 'ENG-123', 'BLA-456').                                                                                                                                                                                                                                                                                                                                 |
| `stateId`     | string  |          | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"`                                             | UUID of the workflow state to transition the issue to. Must be a valid UUID in the format 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' (e.g., 'f47ac10b-58cc-4372-a567-0e02b2c3d479'). Do NOT use state names like 'To Do', 'In Progress', or 'Done'. IMPORTANT: Workflow states are team-scoped in Linear. The state must belong to the same team as the issue, otherwise the API will reject the request with an error. Use LIST\_LINEAR\_STATES with the issue's team\_id to get valid state IDs. |
| `estimate`    | integer |          | `"1"`                                                                                | Estimate points for the issue (e.g., 1, 2, 3, 5, 8). Teams may use different estimation types: exponential, fibonacci, linear, or t-shirt sizing.                                                                                                                                                                                                                                                                                                                                              |
| `labelIds`    | array   |          | `["c1f6e2b0-1a2b-3c4d-5e6f-7a8b9c0d1e2f","d4e8f0a0-2b3c-4d5e-6f7a-8b9c0d1e2f3a"]`    | List of label identifiers to set; replaces all existing labels. An empty list removes all labels.                                                                                                                                                                                                                                                                                                                                                                                              |
| `parentId`    | string  |          | `"7f8e9d0c-1b2a-3c4d-5e6f-7a8b9c0d1e2f"`                                             | UUID of an existing issue to set as this issue's parent (making this issue a sub-issue). The parent issue must not create a circular dependency (e.g., the parent cannot be this issue itself or one of its descendants), and you must have access to it. Sub-issues can be assigned to any team in the workspace.                                                                                                                                                                             |
| `priority`    | integer |          | `"0"`                                                                                | Priority: 0 (No), 1 (Urgent), 2 (High), 3 (Normal), 4 (Low).                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `projectId`   | string  |          | `"1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d"`                                             | UUID of the project to associate the issue with. Must be a valid UUID in the format 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'. IMPORTANT: Projects are team-scoped in Linear. The project must belong to the same team as the issue, otherwise the API will reject the request with an error. Use LINEAR\_LIST\_LINEAR\_PROJECTS action to get valid project IDs and LINEAR\_GET\_LINEAR\_PROJECT with include\_teams=true to verify a project's team.                                            |
| `assigneeId`  | string  |          | `"b86e2b0f-6b1a-4db8-9731-41ef97f5ba8e"`                                             | UUID of the user to assign to the issue. Must be a valid user UUID from your Linear workspace (format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Use LIST\_LINEAR\_USERS to get valid user IDs. Do NOT use placeholder values like '\<DATE\_TIME>' or '{USER\_ID}'.                                                                                                                                                                                                                               |
| `description` | string  |          | `"The payment module fails when users attempt to use a new discount code 'SAVE20'."` | New Markdown description for the issue.                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

***

### `Linear Update Linear Comment`

Integration name: **LINEAR\_UPDATE\_LINEAR\_COMMENT**

Tool to update an existing Linear comment's body text. Use when you need to edit or modify the content of a previously created comment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                            |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `body`       | string |     ✅    | `"Updated comment text."`                | New comment content, in plain text or Markdown format. |
| `comment_id` | string |     ✅    | `"c1f6e2b0-1a2b-3c4d-5e6f-7a8b9c0d1e2f"` | Unique identifier of the comment to update.            |

***

### `Linear Update Linear Project`

Integration name: **LINEAR\_UPDATE\_LINEAR\_PROJECT**

Tool to update an existing Linear project. Use when you need to modify project properties like name, description, state, dates, or lead. All fields except project\_id are optional - only provide the fields you want to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                          | Description                                                                                                                                                                                            |
| ------------- | ------- | :------: | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `icon`        | string  |          | `"📈"`                                           | Icon identifier for the project.                                                                                                                                                                       |
| `name`        | string  |          | `"Q1 Product Launch - Updated"`                  | New name for the project.                                                                                                                                                                              |
| `color`       | string  |          | `"#FF6B6B"`                                      | Color for the project (hex color code).                                                                                                                                                                |
| `state`       | string  |          | `"started"`                                      | The state of the project. Standard values: 'backlog', 'planned', 'started', 'completed', 'canceled'. Note: Some workspaces may have custom states configured.                                          |
| `lead_id`     | string  |          | `"b86e2b0f-6b1a-4db8-9731-41ef97f5ba8e"`         | The UUID of the user who will lead this project. Must be a valid Linear user UUID. Use the LIST\_LINEAR\_USERS action to get valid user IDs.                                                           |
| `priority`    | integer |          | `1`                                              | Priority level of the project. 0 = No priority, 1 = Urgent, 2 = High, 3 = Normal, 4 = Low.                                                                                                             |
| `status_id`   | string  |          | `"c1f6e2b0-1a2b-3c4d-5e6f-7a8b9c0d1e2f"`         | The UUID of the project status to set. Must be a valid Linear project status UUID.                                                                                                                     |
| `project_id`  | string  |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"`         | The unique identifier (UUID) of the project to update. This is the internal Linear ID, not the project slug or name.                                                                                   |
| `start_date`  | string  |          | `"2024-01-15"`                                   | New planned start date. Accepts various formats including YYYY-MM-DD, ISO datetime strings (e.g., 2024-01-15T10:30:00Z), or Unix timestamps. Will be normalized to YYYY-MM-DD format for the API.      |
| `description` | string  |          | `"Updated project scope and objectives for Q1."` | New description for the project. Supports plain text.                                                                                                                                                  |
| `target_date` | string  |          | `"2024-06-30"`                                   | New planned completion date. Accepts various formats including YYYY-MM-DD, ISO datetime strings (e.g., 2024-06-30T23:59:59Z), or Unix timestamps. Will be normalized to YYYY-MM-DD format for the API. |

***


# Linkedin

Your Toolhouse AI Worker can connect to Linkedin using 22 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](https://toolhouse.app/auth-connections?authkit_slugs=linkedin).

## Tools (22)

### `Linkedin Create Article Or Url Share`

Integration name: **LINKEDIN\_CREATE\_ARTICLE\_OR\_URL\_SHARE**

Tool to create an article or URL share on LinkedIn using the UGC Posts API. Use when you need to share a link with optional commentary on LinkedIn. Supports sharing URLs as articles with customizable visibility settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                      | Description                                                                                                                                                                      |
| ----------------- | ------ | :------: | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `author`          | string |     ✅    | `"urn:li:person:F6kGF1Uduq"` | URN of the author (person or organization). For a person: 'urn:li:person:{id}'. For an organization: 'urn:li:organization:{id}'. Use GET\_MY\_INFO action to get your person ID. |
| `visibility`      | object |     ✅    | —                            | Visibility settings for the post. Controls who can see the shared content.                                                                                                       |
| `lifecycleState`  | string |          | —                            | State of the post. Use 'PUBLISHED' to post immediately or 'DRAFT' to save as draft.                                                                                              |
| `specificContent` | object |     ✅    | —                            | Container for the share content including URL, commentary, and media category.                                                                                                   |

***

### `Linkedin Create Comment On Post`

Integration name: **LINKEDIN\_CREATE\_COMMENT\_ON\_POST**

Tool to create a first-level or nested comment on a LinkedIn share, UGC post, or parent comment via the Social Actions Comments API. Use when you need to engage with posts by adding comments or replying to existing comments. Supports text comments with optional @-mentions and image attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                   | Description                                                                                                                                                                                                                                                                      |
| --------------- | ------ | :------: | ------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `actor`         | string |     ✅    | `"urn:li:person:abcd1234"`                                                | Entity which authored the comment. For personal comments: 'urn:li:person:{id}'. For organization comments: 'urn:li:organization:{id}'. Use the GET\_USER\_INFO action to retrieve the 'id' field.                                                                                |
| `object`        | string |     ✅    | `"urn:li:share:7123456789012345678"`                                      | The URN of the share or ugcPost that contains the comment. Typically the same as target\_urn for first-level comments, or the root post URN for nested comments. Must be 'urn:li:share:{id}' or 'urn:li:ugcPost:{id}'. Activity URNs ('urn:li:activity:{id}') are NOT supported. |
| `content`       | array  |          | —                                                                         | Array of content entities such as images to include in the comment. Each entity should contain an image URN or other content type.                                                                                                                                               |
| `message`       | object |     ✅    | —                                                                         | The comment message content including text and optional @-mentions.                                                                                                                                                                                                              |
| `target_urn`    | string |     ✅    | `"urn:li:share:7123456789012345678"`                                      | The URN of the share, UGC post, or parent comment where the comment will be created. Must be 'urn:li:share:{id}', 'urn:li:ugcPost:{id}', or 'urn:li:comment:({parentUrn},{commentId})'. Activity URNs ('urn:li:activity:{id}') are NOT supported.                                |
| `parentComment` | string |          | `"urn:li:comment:(urn:li:share:7123456789012345678,7198765432109876543)"` | For nested comments (replies), the URN of the parent comment being replied to. Format: 'urn:li:comment:({parentUrn},{commentId})'. Leave empty for first-level comments on the post.                                                                                             |

***

### `Linkedin Create Linked In Post`

Integration name: **LINKEDIN\_CREATE\_LINKED\_IN\_POST**

Creates a new post on LinkedIn for the authenticated user or an organization they manage. Requires w\_member\_social scope for posting as a person, and w\_organization\_social scope for posting as an organization (with ADMINISTRATOR, DIRECT\_SPONSORED\_CONTENT\_POSTER, or CONTENT\_ADMIN role).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------------------------- | ------- | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `author`                    | string  |     ✅    | `"urn:li:person:F6kGF1Uduq"`                 | The URN of the LinkedIn member or organization creating the post. IMPORTANT: Replace placeholder text with actual ID values. For a person: use 'urn:li:person:\<actual\_person\_id>' (e.g., 'urn:li:person:F6kGF1Uduq' or 'urn:li:person:123456789'). Requires w\_member\_social scope. For an organization: use 'urn:li:organization:\<actual\_org\_id>' (e.g., 'urn:li:organization:987654321'). Requires w\_organization\_social scope and you must have ADMINISTRATOR, DIRECT\_SPONSORED\_CONTENT\_POSTER, or CONTENT\_ADMIN role for the organization. Get your person ID using the GET\_MY\_INFO action, or get organization IDs from GET\_COMPANY\_INFO. Do NOT pass literal placeholder text like '{id}' or '{organization\_id}'. |
| `images`                    | array   |          | —                                            | Array of images to upload and attach to the post. Each element is a Supports 1-20 images. For a single image, use a list with one element. LinkedIn will automatically use the appropriate content type (media for single image, multiImage for 2+ images).                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `container`                 | string  |          | —                                            | Container entity URN for posting within a specific container (e.g., 'urn:li:group:123456' for group posts). Use this field when posting to a group or other container entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `commentary`                | string  |     ✅    | `"Excited to share our new product update!"` | The main text content of the post. This field supports plain text and @-mentions (e.g., @[LinkedIn Member](urn:li:person:xxxx)). Maximum length: 3000 characters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `visibility`                | string  |          | —                                            | Controls who can see the post. 'PUBLIC' makes it visible to everyone, 'CONNECTIONS' to connections only, 'LOGGED\_IN' to signed-in LinkedIn members, and 'CONTAINER' for specific group/event posts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `distribution`              | object  |          | —                                            | Specifies distribution rules for the post, including feed distribution and targeting.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `lifecycleState`            | string  |          | `"PUBLISHED"`                                | The state of the post. Use 'PUBLISHED' to post directly, 'DRAFT' to save as a draft, or 'PUBLISH\_REQUESTED' if the post requires review before publishing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `reshareContext`            | object  |          | —                                            | Context for resharing another post.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `contentLandingPage`        | string  |          | —                                            | URL of the landing page that opens when the call-to-action button is clicked. Required when contentCallToActionLabel is specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `contentCallToActionLabel`  | string  |          | —                                            | Call-to-action button labels for posts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `isReshareDisabledByAuthor` | boolean |          | —                                            | Set to true to prevent others from resharing this post.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Linkedin Delete Linked In Post`

Integration name: **LINKEDIN\_DELETE\_LINKED\_IN\_POST**

Deletes a specific LinkedIn post (share) by its unique `share_id`, which must correspond to an existing share.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                                                                                     |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `share_id` | string |     ✅    | `"7245341016004718592"` | Unique identifier of the LinkedIn share (post) to be deleted. Accepts either numeric ID (e.g., '7245341016004718592') or URN format (e.g., 'urn:li:share:7245341016004718592'). |

***

### `Linkedin Delete Post`

Integration name: **LINKEDIN\_DELETE\_POST**

Delete a LinkedIn post using the Posts API REST endpoint. Supports both ugcPost and share URN formats. The endpoint is idempotent - previously deleted posts return success (204).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                       | Description                                                                                                                                                                                      |
| ---------- | ------ | :------: | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `post_urn` | string |     ✅    | `"urn:li:ugcPost:7890123456"` | The URN of the post to delete. Accepts either ugcPost or share URN formats (e.g., 'urn:li:ugcPost:7890123456' or 'urn:li:share:7245341016004718592'). The URN will be URL-encoded automatically. |

***

### `Linkedin Delete Ugc Post`

Integration name: **LINKEDIN\_DELETE\_UGC\_POST**

Delete a UGC post using the legacy UGC Post API endpoint. Use when you need to delete a post using the v2/ugcPosts endpoint. Deletion is idempotent - previously deleted posts also return success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                       | Description                                                                                                                                        |
| -------------- | ------ | :------: | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ugc_post_urn` | string |     ✅    | `"urn:li:ugcPost:7890123456"` | The URN of the UGC post or share to delete. Format: 'urn:li:ugcPost:{id}' or 'urn:li:share:{id}'. Will be URL-encoded automatically by the action. |

***

### `Linkedin Get Ad Targeting Facets`

Integration name: **LINKEDIN\_GET\_AD\_TARGETING\_FACETS**

Tool to retrieve available ad targeting facets from LinkedIn Marketing API. Use when you need to discover what targeting options are available for ad campaigns (e.g., locations, industries, job functions).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Linkedin Get Audience Counts`

Integration name: **LINKEDIN\_GET\_AUDIENCE\_COUNTS**

Retrieves audience size counts for specified targeting criteria. Use when estimating reach for LinkedIn ad campaigns or targeted content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------- | ------ | :------: | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                 | string |          | `"targetingCriteriaV2"`                                                                                   | Query type parameter. Must be 'targetingCriteriaV2' for targeting criteria queries.                                                                                                                                                                                                                                                                                                                                 |
| `targetingCriteria` | string |     ✅    | `"(include:(and:List((or:(urn%3Ali%3AadTargetingFacet%3Alocations:List(urn%3Ali%3Ageo%3A102221843))))))"` | Targeting criteria with URL-encoded URNs. Format: (include:(and:List((or:(urn%3Ali%3AadTargetingFacet%3AFACET:List(urn%3Ali%3ATYPE%3AID)))))). IMPORTANT: Only the URN colons should be encoded as %3A, keep the structure syntax (parentheses, colons in 'and:' and 'or:') unencoded. Example for locations: (include:(and:List((or:(urn%3Ali%3AadTargetingFacet%3Alocations:List(urn%3Ali%3Ageo%3A102221843)))))) |

***

### `Linkedin Get Company Info`

Integration name: **LINKEDIN\_GET\_COMPANY\_INFO**

Retrieves organizations where the authenticated user has specific roles (ACLs), to determine their management or content posting capabilities for LinkedIn company pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example           | Description                                                                         |
| --------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------- |
| `role`    | string  |          | `"ADMINISTRATOR"` | The specific role to filter organization ACLs by.                                   |
| `count`   | integer |          | `"10"`            | The number of organization ACLs to return per page.                                 |
| `start`   | integer |          | `"0"`             | The starting index for pagination, representing the number of initial ACLs to skip. |
| `state`   | string  |          | `"APPROVED"`      | The approval state of the role to filter by.                                        |

***

### `Linkedin Get Image`

Integration name: **LINKEDIN\_GET\_IMAGE**

Tool to retrieve details of a LinkedIn image using its URN. Use when you need to check image status, get download URLs, or access image metadata for a single image.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                              | Description                                                                                                                                                  |
| ----------- | ------ | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `image_urn` | string |     ✅    | `"urn:li:image:C4E10AQFn10iWtKexVA"` | The image URN identifier. Can be provided as 'urn:li:image:XXX' or just the ID 'XXX'. The URN will be URL-encoded automatically when making the API request. |

***

### `Linkedin Get Images`

Integration name: **LINKEDIN\_GET\_IMAGES**

Tool to retrieve image metadata including download URLs, status, and dimensions from LinkedIn's Images API. Use when you need to access image details for posts, profiles, or media library assets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                                | Description                                                                                                                                                                                       |
| --------- | ----- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ids`     | array |     ✅    | `["urn:li:image:C4E10AQFn10iWtKexVA"]` | List of image URNs to retrieve. Each URN should be in the format 'urn:li:image:{ID}' (e.g., 'urn:li:image:C4E10AQFn10iWtKexVA'). Maximum recommended batch size depends on LinkedIn's API limits. |

***

### `Linkedin Get My Info`

Integration name: **LINKEDIN\_GET\_MY\_INFO**

Fetches the authenticated LinkedIn user's profile information including name, headline, profile picture, and other profile details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Linkedin Get Network Size`

Integration name: **LINKEDIN\_GET\_NETWORK\_SIZE**

Tool to retrieve the follower count for a LinkedIn organization. Use when you need to get the number of members following a specific company or organization on LinkedIn.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example  | Description                                                                                                                                               |
| ----------------- | ------ | :------: | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `edgeType`        | string |          | —        | The type of network relationship to count. Use COMPANY\_FOLLOWED\_BY\_MEMBER to get follower count.                                                       |
| `organization_id` | string |     ✅    | `"3803"` | The unique identifier for the LinkedIn organization. This is the numeric ID from the organization URN (e.g., for 'urn:li:organization:3803', use '3803'). |

***

### `Linkedin Get Org Page Stats`

Integration name: **LINKEDIN\_GET\_ORG\_PAGE\_STATS**

Tool to retrieve page statistics for a LinkedIn organization page. Use when you need engagement metrics like page views and custom button clicks. Supports both lifetime statistics (all-time data segmented by demographics) and time-bound statistics (aggregate data for specific time ranges). Requires rw\_organization\_admin permission with ADMINISTRATOR role for the organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                         | Description                                                                                                                                                         |
| --------------------- | ------- | :------: | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `organization`        | string  |     ✅    | `"urn:li:organization:2414183"` | Organization URN in format urn:li:organization:{id}. Example: urn:li:organization:2414183                                                                           |
| `timeRangeEnd`        | integer |          | `1552003200000`                 | Inclusive ending timestamp in milliseconds since epoch. Only required for time-bound statistics. Omit for lifetime statistics.                                      |
| `timeRangeStart`      | integer |          | `1551398400000`                 | Exclusive starting timestamp in milliseconds since epoch. Only required for time-bound statistics. Omit for lifetime statistics.                                    |
| `timeGranularityType` | string  |          | —                               | Granularity of the statistics. Use DAY for daily statistics or MONTH for monthly statistics. Only required for time-bound statistics. Omit for lifetime statistics. |

***

### `Linkedin Get Person`

Integration name: **LINKEDIN\_GET\_PERSON**

Retrieves a LinkedIn member's profile information by their person ID. Returns lite profile fields (name, profile picture) by default, or basic profile fields (including headline and vanity name) with appropriate permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                                                                                           |
| ----------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------- |
| `person_id` | string |     ✅    | `"yrZCpj2Z12"` | The unique identifier of the LinkedIn member. Note: Each member id is unique to the context of your application only. |

***

### `Linkedin Get Post Content`

Integration name: **LINKEDIN\_GET\_POST\_CONTENT**

Tool to retrieve detailed post content including text, images, videos, and metadata from LinkedIn by post URN. Use when you need to fetch the full content and details of a specific LinkedIn post.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                | Description                                                                                                                                            |
| --------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `post_id` | string |     ✅    | `"urn:li:ugcPost:7428263313739988992"` | Post URN identifier in the format 'urn:li:ugcPost:{id}' or 'urn:li:share:{id}'. Can also be URL-encoded. Example: 'urn:li:ugcPost:7428263313739988992' |

***

### `Linkedin Get Share Stats`

Integration name: **LINKEDIN\_GET\_SHARE\_STATS**

Retrieves share statistics for a LinkedIn organization, including impressions, clicks, likes, comments, and shares. Use to analyze content performance for an organization page. Optionally filter by time intervals to get time-bound statistics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------------------- | ------ | :------: | ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `time_intervals`        | string |          | `"(timeRange:(start:1634018799000,end:1634623599000),timeGranularityType:DAY)"` | Time-bound statistics filter in RestLi 2.0 complex object format. Specify time range and granularity as: '(timeRange:(start:\<start\_timestamp>,end:\<end\_timestamp>),timeGranularityType:)' where timestamps are in milliseconds since epoch and GRANULARITY is one of: DAY, WEEK, MONTH. Example: '(timeRange:(start:1634018799000,end:1634623599000),timeGranularityType:DAY)'. If omitted, returns lifetime statistics. |
| `organizational_entity` | string |     ✅    | `"urn:li:organization:2414183"`                                                 | The URN of the organization to retrieve share statistics for. Must be in the format 'urn:li:organization:' where is the organization ID (e.g., 'urn:li:organization:2414183'). Get organization IDs using the GET\_COMPANY\_INFO action.                                                                                                                                                                                     |

***

### `Linkedin Get Videos`

Integration name: **LINKEDIN\_GET\_VIDEOS**

Retrieves video metadata from LinkedIn Marketing API. Supports single video retrieval, batch retrieval (multiple videos), and finding videos by associated account with pagination. Use when you need to get video details including duration, dimensions, status, download URLs, and media library information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                                   | Description                                                                                                                                                                                                             |
| ---------------------- | ------- | :------: | ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `count`                | integer |          | `10`                                                                      | Number of elements to return for pagination, up to 1,000. Only used with 'associated\_account'. Defaults to 10.                                                                                                         |
| `start`                | integer |          | `0`                                                                       | Index where returned elements begin for pagination. Only used with 'associated\_account'. Defaults to 0.                                                                                                                |
| `video_ids`            | array   |          | `["urn:li:video:C4D10AQE9WE5n4uJKUg","urn:li:video:C5F10AQElP1fVH1Ke6g"]` | List of video URNs for batch retrieval (e.g., \['urn:li:video:C4D10AQE9WE5n4uJKUg', 'urn:li:video:C5F10AQElP1fVH1Ke6g']). Use this for batch retrieval. Mutually exclusive with 'video\_urn' and 'associated\_account'. |
| `video_urn`            | string  |          | `"urn:li:video:C4E10AQGUkQY7trgh-Q"`                                      | Single video URN to retrieve (e.g., 'urn:li:video:C4E10AQGUkQY7trgh-Q'). Use this for single video retrieval. Mutually exclusive with 'video\_ids' and 'associated\_account'.                                           |
| `associated_account`   | string  |          | `"urn:li:sponsoredAccount:123456789"`                                     | Sponsored account URN to find videos by associated account (e.g., 'urn:li:sponsoredAccount:123456789'). Use this to find all videos for an account. Mutually exclusive with 'video\_urn' and 'video\_ids'.              |
| `media_library_status` | string  |          | —                                                                         | Filter by media library status. Only used with 'associated\_account'. When omitted, returns all videos regardless of status.                                                                                            |

***

### `Linkedin Initialize Image Upload`

Integration name: **LINKEDIN\_INITIALIZE\_IMAGE\_UPLOAD**

Tool to initialize an image upload to LinkedIn and return a presigned upload URL plus the resulting image URN. Use when you need to prepare an image upload for LinkedIn posts. After calling this tool, upload the image bytes to the returned upload\_url via PUT request, then use the image URN in CREATE\_LINKED\_IN\_POST action.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description                                                                                                                                                                                                                                      |
| --------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `owner`   | string |     ✅    | `"urn:li:person:F6kGF1Uduq"` | Owner URN (person or organization) that will own the uploaded image. Must be in the format 'urn:li:person:{id}' for personal posts or 'urn:li:organization:{id}' for organization posts. Use the GET\_MY\_INFO action to retrieve the person ID. |

***

### `Linkedin List Reactions`

Integration name: **LINKEDIN\_LIST\_REACTIONS**

Retrieves reactions (likes, celebrations, etc.) on a LinkedIn entity such as a share, post, or comment. Use when you need to see who reacted to content and what type of reactions were used.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                 | Description                                                                                                                                                                                                                              |
| --------- | ------- | :------: | --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`    | string  |          | —                                       | Sort order for reactions. CHRONOLOGICAL sorts by created date ascending, REVERSE\_CHRONOLOGICAL sorts by created date descending (default), RELEVANCE sorts by relevance to the viewer.                                                  |
| `count`   | integer |          | —                                       | Number of reactions to return per page.                                                                                                                                                                                                  |
| `start`   | integer |          | —                                       | Starting index for pagination (number of reactions to skip).                                                                                                                                                                             |
| `entity`  | string  |     ✅    | `"urn:li:activity:7067167295080394752"` | The URN of the entity (share, post, or comment) to get reactions for. Format: 'urn:li:share:{id}', 'urn:li:ugcPost:{id}', 'urn:li:activity:{id}', or 'urn:li:comment:(activity:{activityId},{commentId})'. Do not URL-encode this value. |

***

### `Linkedin Register Image Upload`

Integration name: **LINKEDIN\_REGISTER\_IMAGE\_UPLOAD**

Tool to initialize a native LinkedIn image upload for feed shares and return a presigned upload URL plus the resulting digital media asset URN. Use when you need to upload an image to attach to a LinkedIn post. After calling this tool, upload the image bytes to the returned upload\_url, then use the asset\_urn in LINKEDIN\_CREATE\_LINKED\_IN\_POST.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type   | Required | Example                                       | Description                                                                                                                                                                                                                             |
| ---------------------------- | ------ | :------: | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `recipe`                     | string |          | `"urn:li:digitalmediaRecipe:feedshare-image"` | The digital media recipe URN specifying the processing recipe for the image. Default is 'urn:li:digitalmediaRecipe:feedshare-image' for feed share images.                                                                              |
| `owner_urn`                  | string |     ✅    | `"urn:li:person:123456789"`                   | URN of the owner entity that will own the uploaded image. Must be in the format 'urn:li:person:{id}' for personal posts or 'urn:li:organization:{id}' for organization posts. Use the GET\_USER\_INFO action to retrieve the person ID. |
| `supported_upload_mechanism` | array  |          | `["SYNCHRONOUS_UPLOAD"]`                      | Array of supported upload mechanisms. If not specified, LinkedIn will return the default mechanism (typically SYNCHRONOUS\_UPLOAD).                                                                                                     |

***

### `Linkedin Search Ad Targeting Entities`

Integration name: **LINKEDIN\_SEARCH\_AD\_TARGETING\_ENTITIES**

Search for ad targeting entities using typeahead search. Use when you need to find targeting entities like geographic locations, job titles, industries, or other targeting criteria for LinkedIn ad campaigns.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                               | Description                                                                                                                                                                                                                             |
| -------------- | ------- | :------: | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `count`        | integer |          | `10`                                  | Maximum number of results to return per page.                                                                                                                                                                                           |
| `facet`        | string  |     ✅    | `"urn:li:adTargetingFacet:locations"` | Ad targeting facet URN to specify the entity type to search (e.g., 'urn:li:adTargetingFacet:locations' for geographic locations, 'urn:li:adTargetingFacet:titles' for job titles, 'urn:li:adTargetingFacet:industries' for industries). |
| `query`        | string  |     ✅    | `"united states"`                     | Search query string to find targeting entities (e.g., 'united states', 'software engineer', 'technology').                                                                                                                              |
| `start`        | integer |          | `0`                                   | Starting index for pagination, representing the number of initial results to skip.                                                                                                                                                      |
| `queryVersion` | string  |          | —                                     | Query version for the search request.                                                                                                                                                                                                   |


# Linkhut

Your Toolhouse AI Worker can connect to Linkhut using 5 specialized tools.

{% hint style="info" %}
This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under [Auth Connections](https://toolhouse.app/auth-connections?authkit_slugs=linkhut).
{% endhint %}

## Tools (5)

### `Linkhut Add Bookmark`

Integration name: **LINKHUT\_ADD\_BOOKMARK**

Adds a new bookmark to LinkHut. The bookmark can be marked as private/public and read/unread, with optional tags and notes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                   | Description                                                     |
| ------------- | ------- | :------: | ----------------------------------------- | --------------------------------------------------------------- |
| `url`         | string  |     ✅    | `"https://example.com"`                   | The URL of the webpage to bookmark                              |
| `tags`        | string  |          | `"tech,learning,reference"`               | Comma-separated list of tags for the bookmark                   |
| `shared`      | boolean |          | —                                         | Whether the bookmark should be public (true) or private (false) |
| `toread`      | boolean |          | —                                         | Whether to mark the bookmark as unread                          |
| `extended`    | string  |          | `"This is a great resource for learning"` | Additional notes or description for the bookmark                |
| `description` | string  |     ✅    | `"Example Website"`                       | The title or description of the bookmark                        |

***

### `Linkhut Delete Bookmark`

Integration name: **LINKHUT\_DELETE\_BOOKMARK**

This tool allows users to delete a bookmark from their Linkhut account by providing the bookmark URL. It operates independently and only requires the URL parameter to identify and remove the bookmark.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                 | Description                       |
| --------- | ------ | :------: | ----------------------- | --------------------------------- |
| `url`     | string |     ✅    | `"https://example.com"` | The URL of the bookmark to delete |

***

### `Linkhut Get All Tags`

Integration name: **LINKHUT\_GET\_ALL\_TAGS**

Retrieves a list of all tags and their usage counts for the authenticated user. No additional parameters required besides authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Linkhut Get Bookmarks`

Integration name: **LINKHUT\_GET\_BOOKMARKS**

Retrieves bookmarks from the user's Linkhut account with optional filtering. This tool fetches bookmarks from Linkhut and supports filtering by:

* Tag: Filter by one or more tags (space-separated)
* Date: Filter by a specific date (ISO8601 format)
* URL: Get a specific bookmark by its exact URL
* Meta: Request additional metadata about bookmarks

Returns a list of bookmarks with details including URL, title/description, tags, extended notes, timestamp, privacy status (shared), and read status (toread).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                                                                                                                                           |
| --------- | ------ | :------: | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dt`      | string |          | `"2024-01-01T12:00:00Z"` | Filter by date in ISO8601 format (CCYY-MM-DDThh:mm:ssZ). Returns bookmarks saved on this specific date. If not specified, returns bookmarks from the most recent date |
| `tag`     | string |          | `"tech"`                 | Filter bookmarks by tag. You can filter by multiple tags by separating them with spaces (e.g., 'tech learning')                                                       |
| `url`     | string |          | `"https://example.com"`  | Filter by a specific URL. Returns the bookmark for this exact URL if it exists                                                                                        |
| `meta`    | string |          | `"yes"`                  | Include additional metadata in the response. Set to 'yes' to request metadata                                                                                         |

***

### `Linkhut Update Bookmark`

Integration name: **LINKHUT\_UPDATE\_BOOKMARK**

This tool allows users to update an existing bookmark in LinkHut. The tool updates the metadata of a bookmark including its title, description, and tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                               | Description                                                     |
| ------------- | ------- | :------: | ------------------------------------- | --------------------------------------------------------------- |
| `url`         | string  |     ✅    | `"https://example.com"`               | The URL of the bookmark to update                               |
| `tags`        | string  |          | `"updated,tech,reference"`            | Comma-separated list of tags for the bookmark                   |
| `shared`      | boolean |          | —                                     | Whether the bookmark should be public (true) or private (false) |
| `toread`      | boolean |          | —                                     | Whether to mark the bookmark as unread                          |
| `extended`    | string  |          | `"Updated notes about this resource"` | Additional notes or description for the bookmark                |
| `description` | string  |     ✅    | `"Updated Example Website"`           | The new title or description of the bookmark                    |


# Mailchimp

Your Toolhouse AI Worker can connect to Mailchimp using 275 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](https://toolhouse.app/auth-connections?authkit_slugs=mailchimp).

## Tools (275)

### `Mailchimp Add Automation`

Integration name: **MAILCHIMP\_ADD\_AUTOMATION**

Create a new classic abandoned cart automation in your Mailchimp account. This action creates an automation workflow that sends emails to customers who have abandoned their shopping cart. Requires a connected e-commerce store and an audience/list. Prerequisites:

* A Mailchimp audience/list (use MAILCHIMP\_ADD\_LIST or MAILCHIMP\_GET\_LISTS\_INFO)
* A connected e-commerce store (use MAILCHIMP\_ADD\_STORE or MAILCHIMP\_LIST\_STORES)

Note: Classic automations are only available to paid Mailchimp accounts that have previously created a classic automation. Currently only the `abandonedCart` workflow type is supported via the API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type   | Required | Example | Description                                                                                                                                                                    |
| ----------------------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `settings__reply__to`               | string |          | —       | The email address that recipients can reply to (e.g., '<support@yourcompany.com>').                                                                                            |
| `recipients__list__id`              | string |     ✅    | —       | The unique ID of the Mailchimp audience/list that this automation will target. Required for creating an automation. Get this from MAILCHIMP\_GET\_LISTS\_INFO.                 |
| `settings__from__name`              | string |          | —       | The sender name that appears in the "From" field of automation emails (e.g., 'Your Company Name'). Not an email address.                                                       |
| `recipients__store__id`             | string |          | —       | The unique ID of the connected e-commerce store. Required for abandonedCart workflow type to enable cart tracking. Get this from MAILCHIMP\_LIST\_STORES.                      |
| `trigger__settings__workflow__type` | string |          | —       | The type of classic automation workflow to create. Currently only 'abandonedCart' is supported via the API. This triggers emails when a customer abandons their shopping cart. |

***

### `Mailchimp Add Batch Webhook`

Integration name: **MAILCHIMP\_ADD\_BATCH\_WEBHOOK**

Configure a webhook that will fire whenever any batch request completes processing. You may only have a maximum of 20 batch webhooks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                                                                                                   |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`     | string  |     ✅    | —       | A valid URL for the batch webhook. Mailchimp will POST data to this URL when a batch operation completes processing. Must be a publicly accessible HTTPS URL. |
| `enabled` | boolean |          | —       | Whether the webhook should be enabled to receive requests. Defaults to True if not specified.                                                                 |

***

### `Mailchimp Add Campaign`

Integration name: **MAILCHIMP\_ADD\_CAMPAIGN**

Create a new Mailchimp campaign.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                       | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                             |
| ----------------------------------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`                                          | string  |     ✅    | —       | There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.                                                                                                                                                                                                     |
| `content_type`                                  | string  |          | —       | How the campaign"s content is put together. The old drag and drop editor uses "template" while the new editor uses "multichannel". Defaults to template.                                                                                                                                                                                                                                                                |
| `settings__title`                               | string  |          | —       | The title of the campaign.                                                                                                                                                                                                                                                                                                                                                                                              |
| `tracking__opens`                               | boolean |          | —       | Whether to [track opens](https://mailchimp.com/help/about-open-tracking/). Defaults to `true`. Cannot be set to false for variate campaigns.                                                                                                                                                                                                                                                                            |
| `settings__to__name`                            | string  |          | —       | The campaign"s custom "To" name. Typically the first name [audience field](https://mailchimp.com/help/getting-started-with-merge-tags/).                                                                                                                                                                                                                                                                                |
| `tracking__ecomm360`                            | boolean |          | —       | Whether to enable e-commerce tracking.                                                                                                                                                                                                                                                                                                                                                                                  |
| `settings__reply__to`                           | string  |          | —       | The reply-to email address for the campaign. Note: while this field is not required for campaign creation, it is required for sending.                                                                                                                                                                                                                                                                                  |
| `social__card__title`                           | string  |          | —       | The title for the card. Typically the subject line of the campaign.                                                                                                                                                                                                                                                                                                                                                     |
| `tracking__clicktale`                           | string  |          | —       | The custom slug for [ClickTale](https://mailchimp.com/help/additional-tracking-options-for-campaigns/) tracking (max of 50 bytes).                                                                                                                                                                                                                                                                                      |
| `recipients__list__id`                          | string  |          | —       | The unique list id.                                                                                                                                                                                                                                                                                                                                                                                                     |
| `rss__opts__feed__url`                          | string  |          | —       | The URL for the RSS feed.                                                                                                                                                                                                                                                                                                                                                                                               |
| `rss__opts__frequency`                          | string  |          | —       | The frequency of the RSS Campaign.                                                                                                                                                                                                                                                                                                                                                                                      |
| `settings__folder__id`                          | string  |          | —       | If the campaign is listed in a folder, the id for that folder.                                                                                                                                                                                                                                                                                                                                                          |
| `settings__from__name`                          | string  |          | —       | The "from" name on the campaign (not an email address).                                                                                                                                                                                                                                                                                                                                                                 |
| `settings__auto__tweet`                         | boolean |          | —       | Automatically tweet a link to the [campaign archive](https://mailchimp.com/help/about-email-campaign-archives-and-pages/) page when the campaign is sent.                                                                                                                                                                                                                                                               |
| `settings__inline__css`                         | boolean |          | —       | Automatically inline the CSS included with the campaign content.                                                                                                                                                                                                                                                                                                                                                        |
| `settings__authenticate`                        | boolean |          | —       | Whether Mailchimp [authenticated](https://mailchimp.com/help/about-email-authentication/) the campaign. Defaults to `true`.                                                                                                                                                                                                                                                                                             |
| `settings__auto__footer`                        | boolean |          | —       | Automatically append Mailchimp"s [default footer](https://mailchimp.com/help/about-campaign-footers/) to the campaign.                                                                                                                                                                                                                                                                                                  |
| `settings__fb__comments`                        | boolean |          | —       | Allows Facebook comments on the campaign (also force-enables the Campaign Archive toolbar). Defaults to `true`.                                                                                                                                                                                                                                                                                                         |
| `settings__template__id`                        | integer |          | —       | The id of the template to use.                                                                                                                                                                                                                                                                                                                                                                                          |
| `tracking__html__clicks`                        | boolean |          | —       | Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the HTML version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.                                                                                                                                                                                                                            |
| `tracking__text__clicks`                        | boolean |          | —       | Whether to [track clicks](https://mailchimp.com/help/enable-and-view-click-tracking/) in the plain-text version of the campaign. Defaults to `true`. Cannot be set to false for variate campaigns.                                                                                                                                                                                                                      |
| `settings__preview__text`                       | string  |          | —       | The preview text for the campaign.                                                                                                                                                                                                                                                                                                                                                                                      |
| `settings__subject__line`                       | string  |          | —       | The subject line for the campaign.                                                                                                                                                                                                                                                                                                                                                                                      |
| `settings__auto__fb__post`                      | array   |          | —       | An array of [Facebook](https://mailchimp.com/help/connect-or-disconnect-the-facebook-integration/) page ids to auto-post to.                                                                                                                                                                                                                                                                                            |
| `social__card__image__url`                      | string  |          | —       | The url for the header image for the card.                                                                                                                                                                                                                                                                                                                                                                              |
| `tracking__capsule__notes`                      | boolean |          | —       | Update contact notes for a campaign based on subscriber email addresses.                                                                                                                                                                                                                                                                                                                                                |
| `tracking__goal__tracking`                      | boolean |          | —       | Deprecated                                                                                                                                                                                                                                                                                                                                                                                                              |
| `rss__opts__schedule__hour`                     | integer |          | —       | The hour to send the campaign in local time. Acceptable hours are 0-23. For example, "4" would be 4am in [your account"s default time zone](https://mailchimp.com/help/set-account-defaults/).                                                                                                                                                                                                                          |
| `social__card__description`                     | string  |          | —       | A short summary of the campaign to display.                                                                                                                                                                                                                                                                                                                                                                             |
| `settings__use__conversation`                   | boolean |          | —       | Use Mailchimp Conversation feature to manage out-of-office replies.                                                                                                                                                                                                                                                                                                                                                     |
| `tracking__google__analytics`                   | string  |          | —       | The custom slug for [Google Analytics](https://mailchimp.com/help/integrate-google-analytics-with-mailchimp/) tracking (max of 50 bytes).                                                                                                                                                                                                                                                                               |
| `tracking__salesforce__notes`                   | boolean |          | —       | Update contact notes for a campaign based on subscriber email addresses.                                                                                                                                                                                                                                                                                                                                                |
| `variate__settings__test__size`                 | integer |          | —       | The percentage of recipients to send the test combinations to, must be a value between 10 and 100.                                                                                                                                                                                                                                                                                                                      |
| `variate__settings__wait__time`                 | integer |          | —       | The number of minutes to wait before choosing the winning campaign. The value of wait\_time must be greater than 0 and in whole hours, specified in minutes.                                                                                                                                                                                                                                                            |
| `rss__opts__constrain__rss__img`                | boolean |          | —       | Whether to add CSS to images in the RSS feed to constrain their width in campaigns.                                                                                                                                                                                                                                                                                                                                     |
| `tracking__salesforce__campaign`                | boolean |          | —       | Create a campaign in a connected Salesforce account.                                                                                                                                                                                                                                                                                                                                                                    |
| `variate__settings__from__names`                | array   |          | —       | The possible from names. The number of from\_names provided must match the number of reply\_to\_addresses. If no from\_names are provided, settings.from\_name will be used.                                                                                                                                                                                                                                            |
| `variate__settings__send__times`                | array   |          | —       | The possible send times to test. The times provided should be in the format YYYY-MM-DD HH:MM:SS. If send\_times are provided to test, the test\_size will be set to 100% and winner\_criteria will be ignored.                                                                                                                                                                                                          |
| `recipients__segment__opts__match`              | string  |          | —       | Segment match type.                                                                                                                                                                                                                                                                                                                                                                                                     |
| `variate__settings__subject__lines`             | array   |          | —       | The possible subject lines to test. If no subject lines are provided, settings.subject\_line will be used.                                                                                                                                                                                                                                                                                                              |
| `variate__settings__winner__criteria`           | string  |          | —       | The combination that performs the best. This may be determined automatically by click rate, open rate, or total revenue -- or you may choose manually based on the reporting data you find the most valuable. For Multivariate Campaigns testing send\_time, winner\_criteria is ignored. For Multivariate Campaigns with "manual" as the winner\_criteria, the winner must be chosen in the Mailchimp web application. |
| `recipients__segment__opts__conditions`         | array   |          | —       | Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).                                                                                                                                                                                                                    |
| `rss__opts__schedule__weekly__send__day`        | string  |          | —       | The day of the week to send a weekly RSS Campaign.                                                                                                                                                                                                                                                                                                                                                                      |
| `variate__settings__reply__to__addresses`       | array   |          | —       | The possible reply-to addresses. The number of reply\_to\_addresses provided must match the number of from\_names. If no reply\_to\_addresses are provided, settings.reply\_to will be used.                                                                                                                                                                                                                            |
| `rss__opts__schedule__daily__send__friday`      | boolean |          | —       | Sends the daily RSS Campaign on Fridays.                                                                                                                                                                                                                                                                                                                                                                                |
| `rss__opts__schedule__daily__send__monday`      | boolean |          | —       | Sends the daily RSS Campaign on Mondays.                                                                                                                                                                                                                                                                                                                                                                                |
| `rss__opts__schedule__daily__send__sunday`      | boolean |          | —       | Sends the daily RSS Campaign on Sundays.                                                                                                                                                                                                                                                                                                                                                                                |
| `rss__opts__schedule__monthly__send__date`      | integer |          | —       | The day of the month to send a monthly RSS Campaign. Acceptable days are 0-31, where "0" is always the last day of a month. Months with fewer than the selected number of days will not have an RSS campaign sent out that day. For example, RSS Campaigns set to send on the 30th will not go out in February.                                                                                                         |
| `rss__opts__schedule__daily__send__tuesday`     | boolean |          | —       | Sends the daily RSS Campaign on Tuesdays.                                                                                                                                                                                                                                                                                                                                                                               |
| `rss__opts__schedule__daily__send__saturday`    | boolean |          | —       | Sends the daily RSS Campaign on Saturdays.                                                                                                                                                                                                                                                                                                                                                                              |
| `rss__opts__schedule__daily__send__thursday`    | boolean |          | —       | Sends the daily RSS Campaign on Thursdays.                                                                                                                                                                                                                                                                                                                                                                              |
| `rss__opts__schedule__daily__send__wednesday`   | boolean |          | —       | Sends the daily RSS Campaign on Wednesdays.                                                                                                                                                                                                                                                                                                                                                                             |
| `recipients__segment__opts__saved__segment__id` | integer |          | —       | The id for an existing saved segment.                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Mailchimp Add Campaign Feedback`

Integration name: **MAILCHIMP\_ADD\_CAMPAIGN\_FEEDBACK**

Add feedback on a specific Mailchimp campaign. Use this to post comments, notes, or feedback while collaborating on a campaign with your team. The feedback can be associated with a specific content block or applied to the campaign as a whole.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example | Description                                                                                                                     |
| ------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `message`     | string  |     ✅    | —       | The content of the feedback message. This is the text of the feedback comment.                                                  |
| `block_id`    | integer |          | —       | The block ID for the editable block that the feedback addresses. Optional - omit if providing general feedback on the campaign. |
| `campaign_id` | string  |     ✅    | —       | The unique ID for the campaign. You can get this from the List Campaigns endpoint or when creating a campaign.                  |
| `is_complete` | boolean |          | —       | Whether the feedback item is complete. Set to true to mark as resolved, false otherwise. Defaults to false if not provided.     |

***

### `Mailchimp Add Campaign Folder`

Integration name: **MAILCHIMP\_ADD\_CAMPAIGN\_FOLDER**

Create a new campaign folder to organize email campaigns in Mailchimp. Campaign folders help organize your email marketing campaigns into logical groups. Returns the created folder's ID, name, and initial campaign count (0).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                          |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------- |
| `name`    | string |     ✅    | —       | The name for the new campaign folder. This is used to organize campaigns in the Mailchimp interface. |

***

### `Mailchimp Add Cart`

Integration name: **MAILCHIMP\_ADD\_CART**

Add a new cart to a store.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                           | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                                | string  |     ✅    | —       | A unique identifier for the cart.                                                                                                                                                                                                                                                                                                                                                                                  |
| `lines`                             | array   |     ✅    | —       | An array of the cart's line items. Each line item must include: 'id' (unique identifier for the line item), 'product\_id' (ID of the product in your store), 'product\_variant\_id' (ID of the product variant), 'quantity' (number of items), and 'price' (price of the item as a number). Example: \[{'id': 'line1', 'product\_id': 'prod123', 'product\_variant\_id': 'var123', 'quantity': 1, 'price': 29.99}] |
| `store_id`                          | string  |     ✅    | —       | The unique identifier for the e-commerce store. Must be an existing store ID in your Mailchimp account.                                                                                                                                                                                                                                                                                                            |
| `tax_total`                         | number  |          | —       | The total tax amount for the cart. Optional field that can be used to track tax separately.                                                                                                                                                                                                                                                                                                                        |
| `campaign_id`                       | string  |          | —       | A string that uniquely identifies the campaign for a cart.                                                                                                                                                                                                                                                                                                                                                         |
| `order_total`                       | number  |     ✅    | —       | The total price for all items in the cart. This should be the sum of all line item prices multiplied by their quantities.                                                                                                                                                                                                                                                                                          |
| `checkout_url`                      | string  |          | —       | The URL for the cart. This parameter is required for [Abandoned Cart](https://mailchimp.com/help/create-an-abandoned-cart-email/) automations.                                                                                                                                                                                                                                                                     |
| `customer__id`                      | string  |     ✅    | —       | A unique identifier for the customer who owns this cart. Limited to 50 characters. Required field.                                                                                                                                                                                                                                                                                                                 |
| `currency_code`                     | string  |     ✅    | —       | The three-letter ISO 4217 currency code (e.g., 'USD', 'EUR', 'GBP'). Must match the currency configured for the store.                                                                                                                                                                                                                                                                                             |
| `customer__company`                 | string  |          | —       | The customer's company name.                                                                                                                                                                                                                                                                                                                                                                                       |
| `customer__last__name`              | string  |          | —       | The customer's last name.                                                                                                                                                                                                                                                                                                                                                                                          |
| `customer__first__name`             | string  |          | —       | The customer's first name.                                                                                                                                                                                                                                                                                                                                                                                         |
| `customer__address__city`           | string  |          | —       | The city the customer is located in.                                                                                                                                                                                                                                                                                                                                                                               |
| `customer__email__address`          | string  |     ✅    | —       | Required. The customer's email address. Must be a valid, real email address.                                                                                                                                                                                                                                                                                                                                       |
| `customer__opt__in__status`         | boolean |     ✅    | —       | Required. The customer's opt-in status. This value will never overwrite the opt-in status of a pre-existing Mailchimp list member, but will apply to list members that are added through the e-commerce API endpoints. Customers who don't opt in to your Mailchimp list will be added as Transactional members.                                                                                                   |
| `customer__address__country`        | string  |          | —       | The customer's country.                                                                                                                                                                                                                                                                                                                                                                                            |
| `customer__address__address1`       | string  |          | —       | The mailing address of the customer.                                                                                                                                                                                                                                                                                                                                                                               |
| `customer__address__address2`       | string  |          | —       | An additional field for the customer's mailing address.                                                                                                                                                                                                                                                                                                                                                            |
| `customer__address__province`       | string  |          | —       | The customer's state name or normalized province.                                                                                                                                                                                                                                                                                                                                                                  |
| `customer__address__postal__code`   | string  |          | —       | The customer's postal or zip code.                                                                                                                                                                                                                                                                                                                                                                                 |
| `customer__address__country__code`  | string  |          | —       | The two-letter ISO country code for the customer's country (e.g., 'US', 'DE').                                                                                                                                                                                                                                                                                                                                     |
| `customer__address__province__code` | string  |          | —       | The two-letter code for the customer's province or state.                                                                                                                                                                                                                                                                                                                                                          |

***

### `Mailchimp Add Cart Line Item`

Integration name: **MAILCHIMP\_ADD\_CART\_LINE\_ITEM**

Add a new line item to an existing cart.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example | Description                                                                                      |
| -------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------ |
| `id`                 | string  |     ✅    | —       | A unique identifier for the cart line item. Must be unique within the cart.                      |
| `price`              | number  |     ✅    | —       | The price per unit for the cart line item in the store's currency.                               |
| `cart_id`            | string  |     ✅    | —       | The unique identifier for the cart to add the line item to.                                      |
| `quantity`           | integer |     ✅    | —       | The quantity of this product variant to add to the cart. Must be a positive integer.             |
| `store_id`           | string  |     ✅    | —       | The unique identifier for the e-commerce store.                                                  |
| `product_id`         | string  |     ✅    | —       | The unique identifier for the product. The product must already exist in the store.              |
| `product_variant_id` | string  |     ✅    | —       | The unique identifier for the product variant. The variant must exist for the specified product. |

***

### `Mailchimp Add Connected Site`

Integration name: **MAILCHIMP\_ADD\_CONNECTED\_SITE**

Create a new Mailchimp connected site. Connected sites allow you to track website visitor activity and integrate with Mailchimp's marketing features. After adding a connected site, you'll receive a tracking script (site\_script) that should be installed on your website to enable visitor tracking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example | Description                                                                                                                                                            |
| ------------ | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `domain`     | string |     ✅    | —       | The full domain name of the connected site (e.g., 'example.com' or 'shop.mystore.com'). This is the website URL where the Mailchimp tracking script will be installed. |
| `foreign_id` | string |     ✅    | —       | A unique identifier for the connected site that you define. This ID is used to reference the site in subsequent API calls. Example: 'my-website-001' or 'store-12345'. |

***

### `Mailchimp Add Contact To Audience`

Integration name: **MAILCHIMP\_ADD\_CONTACT\_TO\_AUDIENCE**

Tool to create a new omni-channel contact in a Mailchimp audience. Use when adding contacts with email and/or SMS channels to an audience.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type   | Required | Example                          | Description                                                                                                                                                                                            |
| ----------------------------- | ------ | :------: | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tags`                        | array  |          | `["new_tag","another_tag"]`      | An array of tag names to add to the contact. This operation is append-only; existing tags will be preserved, and only new tags from this array will be added.                                          |
| `language`                    | string |          | `"en"`                           | The subscriber's language preference as a two-letter ISO 639-1 code (e.g., 'en', 'es', 'fr').                                                                                                          |
| `data_mode`                   | string |          | —                                | Data processing mode.                                                                                                                                                                                  |
| `audience_id`                 | string |     ✅    | `"773280e405"`                   | The unique ID for the audience. Get this from the Mailchimp account or via the list audiences endpoint.                                                                                                |
| `sms_channel`                 | object |          | —                                | SMS channel details for a contact.                                                                                                                                                                     |
| `merge_fields`                | object |          | `{"FNAME":"John","LNAME":"Doe"}` | A dictionary of merge fields where the keys are the merge tags (like FNAME, LNAME). Values are strings representing the field values. See the Merge Fields documentation for more about the structure. |
| `email_channel`               | object |          | —                                | Email channel details for a contact.                                                                                                                                                                   |
| `merge_field_validation_mode` | string |          | —                                | Merge field validation mode.                                                                                                                                                                           |

***

### `Mailchimp Add Domain To Account`

Integration name: **MAILCHIMP\_ADD\_DOMAIN\_TO\_ACCOUNT**

Add a sending domain to the Mailchimp account for email verification. This action adds a new domain to your Mailchimp account and initiates the verification process by sending a verification code to the specified email address. After calling this action, use the 'verify\_domain' action with the received verification code to complete the domain verification process.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example | Description                                                                                                                                                                                                                                             |
| -------------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `verification_email` | string |     ✅    | —       | The email address at the domain you want to verify (e.g., '<admin@yourdomain.com>'). A verification code will be sent to this email address to confirm domain ownership. You must have access to this email inbox to complete the verification process. |

***

### `Mailchimp Add Event`

Integration name: **MAILCHIMP\_ADD\_EVENT**

Add an event for a list member. Use this action to track contact activity and behavior outside of email campaigns. Events can be used for segmentation and triggering automation workflows. Common use cases:

* Track purchases, signups, or page visits
* Record custom milestones or achievements
* Import historical events with is\_syncing=true to avoid triggering automations

Note: Returns 204 No Content on success (empty response body).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example | Description                                                                                                                                                                   |
| ----------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string  |     ✅    | —       | The name for this type of event (e.g., 'purchased', 'visited', 'signup\_completed'). Must be 2-30 characters in length. Use lowercase letters, numbers, and underscores only. |
| `list_id`         | string  |     ✅    | —       | The unique ID for the Mailchimp list/audience.                                                                                                                                |
| `is_syncing`      | boolean |          | —       | Set to true to prevent this event from triggering automations. Useful when bulk-importing historical events.                                                                  |
| `properties`      | object  |          | —       | Optional key-value pairs of custom properties for the event. Example: {'product\_name': 'T-Shirt', 'price': '29.99'}. Property names must be 2-30 characters.                 |
| `occurred_at`     | string  |          | —       | The date and time the event occurred in ISO 8601 format (e.g., '2024-01-15T10:30:00Z'). Defaults to current time if not specified.                                            |
| `subscriber_hash` | string  |     ✅    | —       | The MD5 hash of the lowercase version of the list member's email address. This endpoint also accepts a list member's email address or contact\_id.                            |

***

### `Mailchimp Add Export`

Integration name: **MAILCHIMP\_ADD\_EXPORT**

Create a new account export in your Mailchimp account. This action initiates an export of your Mailchimp account data as a downloadable ZIP file. The export runs in the background and may take from a few minutes to several hours depending on account size. Use the 'get\_account\_export\_info' action with the returned export\_id to check progress and retrieve the download URL. Important limitations:

* Only one export can run at a time per account
* Only one export can be created per 24-hour period
* Completed exports are available for download for 90 days

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `include_stages`  | array  |     ✅    | —       | The types of data to include in the export. At least one stage is required. Available stages: 'audiences' (contact lists and segments), 'campaigns' (email campaign content), 'events' (contact activity events), 'gallery\_files' (uploaded images and files), 'reports' (campaign performance reports), 'templates' (email template designs). Example: \['audiences', 'campaigns'] to export both audiences and campaigns. |
| `since_timestamp` | string |          | —       | Optional ISO 8601 timestamp to limit the export to data created after this time. Format: YYYY-MM-DDTHH:MM:SS+00:00 (e.g., '2024-01-15T00:00:00+00:00'). Note: This limit does NOT apply to audiences - all audience data is always included. Useful for incremental exports when you only need recent campaign reports or events.                                                                                            |

***

### `Mailchimp Add File`

Integration name: **MAILCHIMP\_ADD\_FILE**

Upload a new image or file to the Mailchimp File Manager. Use this action to upload files (images, documents, etc.) that can be used in campaigns, templates, or signup forms. The file must be base64-encoded and under 10MB. Supported image types: jpg, jpeg, gif, png, svg. Supported document types: pdf, txt, csv, and more. The uploaded file will be available at the returned full\_size\_url for use in your content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example | Description                                                                                                                                                             |
| ----------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`      | string  |     ✅    | —       | The name of the file including extension (e.g., 'image.png', 'document.pdf'). This will be the display name in the File Manager.                                        |
| `file_data` | string  |     ✅    | —       | The base64-encoded contents of the file to upload. The file must be a supported type (images: jpg, jpeg, gif, png, svg; documents: pdf, txt, csv, etc.) and under 10MB. |
| `folder_id` | integer |          | —       | The ID of the folder to upload the file to. If not provided, the file will be uploaded to the root folder.                                                              |

***

### `Mailchimp Add Folder`

Integration name: **MAILCHIMP\_ADD\_FOLDER**

Create a new folder in the File Manager to organize uploaded files. Use this action to create organizational folders in the Mailchimp File Manager. Folders help organize images and other files that can be used in campaigns and templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                              |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------- |
| `name`       | string  |     ✅    | —       | The name of the folder to create in the File Manager. Must be unique within the account. |
| `created_at` | string  |          | —       | The date and time the folder was created in ISO 8601 format.                             |
| `created_by` | string  |          | —       | The username of the profile that created the folder.                                     |
| `file_count` | integer |          | —       | The number of files in the folder.                                                       |

***

### `Mailchimp Add Interest Category`

Integration name: **MAILCHIMP\_ADD\_INTEREST\_CATEGORY**

Create a new interest category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example | Description                                                                                                                                                                                                                               |
| --------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`          | string  |     ✅    | —       | Determines how this category's interests appear on signup forms. Options: 'checkboxes' (multiple selection), 'dropdown' (single selection from dropdown), 'radio' (single selection from radio buttons), 'hidden' (not visible on forms). |
| `title`         | string  |     ✅    | —       | The text description of this category. This field appears on signup forms and is often phrased as a question (e.g., 'What topics interest you?').                                                                                         |
| `list_id`       | string  |     ✅    | —       | The unique ID for the list/audience to add the interest category to.                                                                                                                                                                      |
| `display_order` | integer |          | —       | The order that the categories are displayed in the list. Lower numbers display first. Defaults to 0 if not specified.                                                                                                                     |

***

### `Mailchimp Add Interest In Category`

Integration name: **MAILCHIMP\_ADD\_INTEREST\_IN\_CATEGORY**

Create a new interest or 'group name' for a specific category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example | Description                                                                                                                               |
| ---------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string  |     ✅    | —       | The name of the interest (group name). This is shown publicly on subscription forms and used to group subscribers by their preferences.   |
| `list_id`              | string  |     ✅    | —       | The unique ID for the Mailchimp list/audience (e.g., 'abc123def4').                                                                       |
| `display_order`        | integer |          | —       | The display order for this interest within the category. Lower numbers display first. If not specified, the interest is added at the end. |
| `interest_category_id` | string  |     ✅    | —       | The unique ID for the interest category (group) where the interest will be added (e.g., 'xyz789ghi0').                                    |

***

### `Mailchimp Add Landing Page`

Integration name: **MAILCHIMP\_ADD\_LANDING\_PAGE**

Create a new Mailchimp landing page. Creates an unpublished landing page that can be customized and published later. Requires either a list\_id or use\_default\_list=true. The landing page type can be 'signup' (for email list signups) or 'product' (for product promotions, requires store\_id).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                        | Type    | Required | Example | Description                                                                                                                                                      |
| ------------------------------------------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                           | string  |          | —       | The internal name of this landing page (for your reference, not visible to visitors).                                                                            |
| `type`                                           | string  |          | —       | The type of landing page template: 'signup' for email list signups, or 'product' for product promotions.                                                         |
| `title`                                          | string  |          | —       | The title of this landing page displayed in the browser's title bar.                                                                                             |
| `list_id`                                        | string  |          | —       | The audience/list ID to associate with this landing page. Either list\_id or use\_default\_list=true must be provided.                                           |
| `store_id`                                       | string  |          | —       | The ID of the e-commerce store to associate with this landing page. Required for 'product' type pages.                                                           |
| `description`                                    | string  |          | —       | A brief description of this landing page for internal reference.                                                                                                 |
| `template_id`                                    | integer |          | —       | The specific template ID to use for this landing page. If not provided, a default template is used.                                                              |
| `use_default_list`                               | boolean |          | —       | If true, creates the landing page using the account's default list instead of requiring a list\_id. Either list\_id or use\_default\_list=true must be provided. |
| `tracking__track__with__mailchimp`               | boolean |          | —       | Enable Mailchimp cookie tracking to monitor unique visitors and calculate conversion rates.                                                                      |
| `tracking__enable__restricted__data__processing` | boolean |          | —       | Enable Google's restricted data processing for CCPA compliance, limiting how Google uses certain identifiers and data in its services.                           |

***

### `Mailchimp Add List`

Integration name: **MAILCHIMP\_ADD\_LIST**

Create a new audience (list) in your Mailchimp account. This endpoint creates a new audience/list for managing email contacts. Each audience has unique settings for campaigns, permissions, and contact information. Note: Free Mailchimp accounts are limited to 1 audience. Paid plans allow multiple audiences. Required fields include: name, contact information (company, address1, city, country), permission\_reminder, and campaign defaults (from\_name, from\_email, subject, language).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example | Description                                                                                                                                                              |
| --------------------------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                            | string  |     ✅    | —       | The name of the audience/list. Must be unique within your Mailchimp account.                                                                                             |
| `contact__zip`                    | string  |          | —       | The postal or zip code for the list contact (optional).                                                                                                                  |
| `double_optin`                    | boolean |          | —       | Whether to require double opt-in (subscriber must confirm via email). Recommended for GDPR compliance. Defaults to false.                                                |
| `contact__city`                   | string  |     ✅    | —       | The city for the list contact. Required.                                                                                                                                 |
| `contact__phone`                  | string  |          | —       | The phone number for the list contact. Optional.                                                                                                                         |
| `contact__state`                  | string  |          | —       | The state or province for the list contact (optional).                                                                                                                   |
| `use_archive_bar`                 | boolean |          | —       | Whether campaigns for this list use the Archive Bar in archives by default. Defaults to false.                                                                           |
| `contact__company`                | string  |     ✅    | —       | The company name for the list. Required.                                                                                                                                 |
| `contact__country`                | string  |     ✅    | —       | A two-character ISO3166 country code (e.g., 'US', 'GB', 'CA'). Required.                                                                                                 |
| `contact__address1`               | string  |     ✅    | —       | The street address for the list contact. Required.                                                                                                                       |
| `contact__address2`               | string  |          | —       | The secondary street address for the list contact (optional).                                                                                                            |
| `email_type_option`               | boolean |          | —       | Whether subscribers can choose their email format (HTML vs plain-text). When true, subscribers choose their format. When false, all receive HTML with plain-text backup. |
| `notify_on_subscribe`             | string  |          | —       | Email address to send subscribe notifications to. Provide a valid email address or omit to disable notifications.                                                        |
| `permission_reminder`             | string  |     ✅    | —       | The permission reminder explaining why contacts are receiving emails from this list. Example: 'You are receiving this email because you opted in via our website.'       |
| `marketing_permissions`           | boolean |          | —       | Whether to enable GDPR-friendly marketing permissions. Defaults to false.                                                                                                |
| `notify_on_unsubscribe`           | string  |          | —       | Email address to send unsubscribe notifications to. Provide a valid email address or omit to disable notifications.                                                      |
| `campaign__defaults__subject`     | string  |     ✅    | —       | The default subject line for campaigns sent to this list. Required.                                                                                                      |
| `campaign__defaults__language`    | string  |     ✅    | —       | The default language for this list's forms (e.g., 'en' for English). Required.                                                                                           |
| `campaign__defaults__from__name`  | string  |     ✅    | —       | The default 'From' name for campaigns sent to this list. Required.                                                                                                       |
| `campaign__defaults__from__email` | string  |     ✅    | —       | The default 'From' email address for campaigns sent to this list. Required.                                                                                              |

***

This page continues with the remaining Mailchimp tool entries in the same format.


# Microsoft Teams

Your Toolhouse AI Worker can connect to Microsoft Teams using 163 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](https://toolhouse.app/auth-connections?authkit_slugs=microsoft_teams).

## Tools (163)

### `Microsoft Teams Add Chat Member`

Integration name: **MICROSOFT\_TEAMS\_ADD\_CHAT\_MEMBER**

Tool to add a conversationMember to a Microsoft Teams chat. Use when adding a user to an existing chat conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type   | Required | Example                                           | Description                                                                                                                                                                                           |
| --------------------------------- | ------ | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `roles`                           | array  |          | `["owner"]`                                       | Roles to assign to the member. Valid values are 'owner' or 'guest'. Leave empty to add as a standard member (not owner or guest).                                                                     |
| `chat_id`                         | string |     ✅    | `"19:cf6dec80624a45d798eaf23390645655@thread.v2"` | The unique identifier of the chat to which the member will be added.                                                                                                                                  |
| `user_id`                         | string |     ✅    | `"dfce5c6f-1901-48f6-bf9f-74ba8b05fd10"`          | The user's Graph ID (GUID) or userPrincipalName (email) to add to the chat.                                                                                                                           |
| `visible_history_start_date_time` | string |          | `"2021-01-01T00:00:00Z"`                          | Optional. Timestamp denoting how far back a conversation's history is shared with the conversation member. Must be in ISO 8601 format (e.g., '2021-01-01T00:00:00Z'). Only settable for chat members. |

***

### `Microsoft Teams Add Tab`

Integration name: **MICROSOFT\_TEAMS\_ADD\_TAB**

Tool to add a new tab to a Microsoft Teams channel. Use when you need to pin an app or website as a tab in a channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                              | Description                                                                                                                                                                                                                                                                                                            |
| --------------- | ------ | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier (GUID) of the team containing the channel where the tab will be added.                                                                                                                                                                                                                           |
| `channel_id`    | string |     ✅    | `"19:079fd66c7bf04c07a21430a9a32c2130@thread.tacv2"` | The unique identifier of the channel where the tab will be added. This is typically in the format '19:xxx\@thread.tacv2' for standard channels.                                                                                                                                                                        |
| `display_name`  | string |     ✅    | `"Test Tab via API"`                                 | The display name for the tab as it will appear to users in Microsoft Teams.                                                                                                                                                                                                                                            |
| `teams_app_id`  | string |     ✅    | `"com.microsoft.teamspace.tab.web"`                  | The unique identifier or catalog reference of the Teams app to add as a tab. Common values: 'com.microsoft.teamspace.tab.web' for website tabs, 'com.microsoft.teamspace.tab.wiki' for Wiki, 'com.microsoft.teamspace.tab.planner' for Planner. The app must be installed in the team or available in the app catalog. |
| `configuration` | object |          | —                                                    | Configuration settings for the tab.                                                                                                                                                                                                                                                                                    |

***

### `Microsoft Teams Add Team Member`

Integration name: **MICROSOFT\_TEAMS\_ADD\_TEAM\_MEMBER**

Tool to add a user to a Microsoft Teams team. Use when granting or updating membership for a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `roles`   | array  |          | `["owner"]`                              | Roles to assign to the member. Only 'owner' is supported. Omit or leave empty to add as a standard member. |
| `team_id` | string |     ✅    | `"ee0f5ae2-8bc6-4ae5-8466-7daeebbfa062"` | The unique ID (GUID) of the Microsoft Team to which the member will be added.                              |
| `user_id` | string |     ✅    | `"8b081ef6-4792-4def-b2c9-c363a1bf41d5"` | The user's Graph ID (GUID) or userPrincipalName (email) to add to the team.                                |

***

### `Microsoft Teams Add Team Members Bulk`

Integration name: **MICROSOFT\_TEAMS\_ADD\_TEAM\_MEMBERS\_BULK**

Tool to add multiple members to a Microsoft Teams team in a single operation. Use when adding several users at once to improve efficiency.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `values`  | array  |     ✅    | —                                        | Array of conversation members to add to the team. Each member must specify the user reference and optional roles. |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier (GUID) of the team to add members to.                                                       |

***

### `Microsoft Teams Archive Channel`

Integration name: **MICROSOFT\_TEAMS\_ARCHIVE\_CHANNEL**

Tool to archive a channel in a Microsoft Teams team. Use when you need to archive a specific channel within a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                   | Type    | Required | Example                                              | Description                                                                                                                            |
| ------------------------------------------- | ------- | :------: | ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`                                   | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier (GUID) of the team containing the channel to archive.                                                            |
| `channel_id`                                | string  |     ✅    | `"19:079fd66c7bf04c07a21430a9a32c2130@thread.tacv2"` | The unique identifier of the channel to archive. Must be in thread format (e.g., '19:079fd66c7bf04c07a21430a9a32c2130\@thread.tacv2'). |
| `should_set_spo_site_read_only_for_members` | boolean |          | `false`                                              | If true, sets the SharePoint site to read-only for team members when archiving the channel. Default is false.                          |

***

### `Microsoft Teams Archive Group Team Channel`

Integration name: **MICROSOFT\_TEAMS\_ARCHIVE\_GROUP\_TEAM\_CHANNEL**

Tool to archive a channel in a Microsoft Teams team using the group ID. Use when you need to archive a specific channel within a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                   | Type    | Required | Example                                              | Description                                                                                                                            |
| ------------------------------------------- | ------- | :------: | ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`                                  | string  |     ✅    | `"b123aad1-e738-47bc-af1e-a1c35022ae54"`             | The unique identifier (GUID) of the Microsoft 365 group associated with the team containing the channel to archive.                    |
| `channel_id`                                | string  |     ✅    | `"19:f95aa28eb1de46e994e1e8f8a40f2113@thread.tacv2"` | The unique identifier of the channel to archive. Must be in thread format (e.g., '19:f95aa28eb1de46e994e1e8f8a40f2113\@thread.tacv2'). |
| `should_set_spo_site_read_only_for_members` | boolean |          | `false`                                              | If true, sets the SharePoint site to read-only for team members when archiving the channel. Default is false.                          |

***

### `Microsoft Teams Archive Team`

Integration name: **MICROSOFT\_TEAMS\_ARCHIVE\_TEAM**

Tool to archive a Microsoft Teams team. Use after confirming the team ID; returns 202 if accepted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                   | Type    | Required | Example                                  | Description                                                                     |
| ------------------------------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `team_id`                                   | string  |     ✅    | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"` | The Microsoft Teams team GUID to archive.                                       |
| `should_set_spo_site_read_only_for_members` | boolean |          | `true`                                   | If true, sets the SharePoint site to read-only for team members when archiving. |

***

### `Microsoft Teams Chats Get All Chats`

Integration name: **MICROSOFT\_TEAMS\_CHATS\_GET\_ALL\_CHATS**

Retrieves all Microsoft Teams chats a specified user is part of, supporting filtering, property selection, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                               | Description                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------- | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `25`                                  | The page size (number of chats per API request) for pagination. Default is 50. Microsoft Graph enforces a maximum of 50 per request. Note: This action auto-paginates and returns chats up to the 'limit' parameter. The 'top' parameter only controls how many chats are fetched per API call, not the total number of chats returned.                                                            |
| `limit`   | integer |          | `10`                                  | Maximum total number of chats to return. If not specified (None), all chats are returned through auto-pagination. Use this as a safety valve to restrict total data returned.                                                                                                                                                                                                                      |
| `filter`  | string  |          | `"chatType eq 'group'"`               | OData filter query string (do not include '$filter='). Supports filtering by chat properties like 'topic', 'chatType' (e.g., "chatType eq 'group'", "topic eq 'Project X'"), and 'installedApps/any(...)' for app-based filtering. Note: Filtering by 'members' (a navigation property) is NOT supported - to filter by member, retrieve all chats and filter client-side, or use $expand=members. |
| `select`  | array   |          | `["id","topic","lastMessagePreview"]` | A list of specific Microsoft Graph chat resource properties to retrieve (e.g., 'id', 'topic'). If omitted or empty, a default set of properties is returned. Each string in the list should be a valid property name.                                                                                                                                                                              |
| `user_id` | string  |          | `"me"`                                | The ID or user principal name (UPN) of the user whose chats are to be retrieved. Use 'me' to specify the currently authenticated user.                                                                                                                                                                                                                                                             |

***

### `Microsoft Teams Chats Get All Messages`

Integration name: **MICROSOFT\_TEAMS\_CHATS\_GET\_ALL\_MESSAGES**

DEPRECATED: Use ListUserChatMessages instead. Retrieves all messages from a specified Microsoft Teams chat using the Microsoft Graph API, automatically handling pagination; ensure `chat_id` is valid and OData expressions in `filter` or `select` are correct.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                              | Description                                                                                                                                                                                                                                                                                                                                                                  |
| --------- | ------- | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `10`                                                 | Number of messages to retrieve per API page request. Microsoft Graph API maximum is 50 per page. This controls the page size for pagination, not the total number of messages returned.                                                                                                                                                                                      |
| `limit`   | integer |          | `100`                                                | Maximum total number of messages to retrieve across all pages. If not specified, all available messages are returned (following pagination). Use this to limit the total results when you don't need the full history.                                                                                                                                                       |
| `filter`  | string  |          | `"lastModifiedDateTime gt 2024-01-01T00:00:00.000Z"` | OData v4.0 filter query string for messages. FILTER RESTRICTIONS: For 'lastModifiedDateTime', both 'gt' (greater than) and 'lt' (less than) operators are supported. For 'createdDateTime', ONLY 'lt' (less than) is supported - 'gt' (greater than) is NOT allowed and will cause an API error. Must be used with 'orderby' on the same property or filter will be ignored. |
| `chat_id` | string  |     ✅    | `"chat-id-123"`                                      | Unique identifier of the Microsoft Teams chat.                                                                                                                                                                                                                                                                                                                               |
| `orderby` | string  |          | `"lastModifiedDateTime desc"`                        | OData v4.0 orderby expression for sorting messages. Only supports 'lastModifiedDateTime desc' and 'createdDateTime desc'. Ascending order is not supported. Required when using filter parameter - must be on the same property as the filter.                                                                                                                               |
| `user_id` | string  |          | `"me"`                                               | The ID or user principal name (UPN) of the user whose chats are to be accessed. Use 'me' to specify the currently authenticated user.                                                                                                                                                                                                                                        |

***

### `Microsoft Teams Clear Automatic Location`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_AUTOMATIC\_LOCATION**

Tool to clear the automatic location from a user's presence in Microsoft Teams. Use when you need to remove automatically-set location information from presence status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                      |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier (GUID) of the user whose automatic location will be cleared. Note: This endpoint does not support 'me' as an alias; you must provide the actual user GUID. |

***

### `Microsoft Teams Clear Me Presence User Preferred`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_ME\_PRESENCE\_USER\_PREFERRED**

Tool to clear a user's preferred presence setting in Microsoft Teams. Use when you need to remove the user's manually set presence status and allow the system to automatically determine their presence based on activity. Supports both delegated (user) and application (S2S) authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                       |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |          | `"me"`  | The user's unique identifier or principal name. Use 'me' to clear the preferred presence of the authenticated user (delegated auth), or provide a specific user ID or email for application auth. |

***

### `Microsoft Teams Clear My Presence`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_MY\_PRESENCE**

DEPRECATED: Use MICROSOFT\_TEAMS\_CLEAR\_PRESENCE instead. Tool to clear the authenticated user's presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the current user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                                                  |
| ----------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`   | string |          | `"me"`                                   | The user's unique identifier or principal name. Use 'me' to clear presence for the authenticated user.                                       |
| `sessionId` | string |     ✅    | `"9841f176-c6b4-4864-97ff-e88d245b2dbb"` | The ID of the application's presence session to clear. Should be the application's client ID (appid). This parameter is required by the API. |

***

### `Microsoft Teams Clear Presence`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_PRESENCE**

Tool to clear the presence information for a user's application presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the authenticated user. Note: This action can only clear presence for the authenticated user, not for other users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                    |
| ----------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`   | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier (GUID) of the user whose presence session to clear. Must be an explicit user ID (not 'me'). Note: You can only clear presence for the authenticated user - attempting to clear presence for other users will result in a 401 Unauthorized error. Use the user's object ID from Azure AD. |
| `sessionId` | string |     ✅    | `"9841f176-c6b4-4864-97ff-e88d245b2dbb"` | The ID of the application's presence session to clear. This must exactly match the application ID (client ID) used for authentication. The API will return a 400 error if the sessionId doesn't match. This parameter is required.                                                                             |

***

### `Microsoft Teams Clear Presence Automatic Location`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_PRESENCE\_AUTOMATIC\_LOCATION**

DEPRECATED: Use MICROSOFT\_TEAMS\_CLEAR\_AUTOMATIC\_LOCATION instead. Tool to clear the automatic presence location for the authenticated user. Use when you need to remove automatically-detected location information from the user's presence status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's unique identifier or principal name. Use 'me' to clear the presence location of the authenticated user (delegated auth). For application-only (S2S) authentication, provide the user's GUID or email address. |

***

### `Microsoft Teams Clear Presence Location`

Integration name: **MICROSOFT\_TEAMS\_CLEAR\_PRESENCE\_LOCATION**

Tool to clear the authenticated user's presence location. Use when you need to remove location information from the user's current presence status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                        |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |          | `"me"`  | The user's unique identifier or principal name. Use 'me' to clear the presence location of the authenticated user. |

***

### `Microsoft Teams Clone Team`

Integration name: **MICROSOFT\_TEAMS\_CLONE\_TEAM**

Tool to clone a Microsoft Teams team using the team ID. Use when you need to create a copy of an existing team including its structure, channels, and tabs. This is an asynchronous operation; poll the returned location URL to monitor progress.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                  | Description                                                                                                                                                                                                                               |
| ---------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`        | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier (GUID) of the Microsoft Teams team to clone.                                                                                                                                                                        |
| `visibility`     | string |          | `"private"`                              | Visibility type for the cloned team.                                                                                                                                                                                                      |
| `description`    | string |          | `"Test clone for API verification"`      | An optional description for the cloned team. If not provided, it takes the value of displayName.                                                                                                                                          |
| `displayName`    | string |     ✅    | `"Cloned Test Team API Verification"`    | The display name for the cloned team. This property is required when a team is cloned.                                                                                                                                                    |
| `mailNickname`   | string |     ✅    | `"clonedtestapiverify"`                  | The mail alias for the cloned team. This property must be specified when a team is cloned. Must be unique in the organization.                                                                                                            |
| `partsToClone`   | string |          | `"apps,tabs,settings,channels,members"`  | Comma-separated list of parts to clone. Valid values: 'apps', 'tabs', 'settings', 'channels', 'members'. Defaults to a full clone (all five parts). Pass a narrower list to exclude parts; omitting 'members' clones a members-less team. |
| `classification` | string |          | `"Confidential"`                         | Optional label describing the data or business sensitivity of the cloned team. Must match a preconfigured value in the tenant's directory.                                                                                                |

***

### `Microsoft Teams Create Call Operation`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_CALL\_OPERATION**

Tool to create a new operation for a communications call. Use when you need to initiate a new operation on an active call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                    | Description                                                                               |
| --------------- | ------ | :------: | -------------------------- | ----------------------------------------------------------------------------------------- |
| `status`        | string |          | `"notStarted"`             | Initial status of the operation. Possible values: notStarted, running, completed, failed. |
| `call_id`       | string |     ✅    | `"test-call-id-123"`       | The unique identifier of the call to create an operation for.                             |
| `odata_type`    | string |          | —                          | The OData type of the operation entity. Must be `#microsoft.graph.commsOperation`.        |
| `clientContext` | string |          | `"test-operation-context"` | Optional client context string for tracking the operation.                                |

***

### `Microsoft Teams Create Channel`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_CHANNEL**

Tool to create a new standard, private, or shared channel within a Microsoft Teams team. Use when you need to create a new channel for team collaboration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                                                                                                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                   | string  |     ✅    | `"Project Alpha Discussion"`                                                                                                                                                       | The display name for the new channel. Maximum length is 50 characters. Cannot contain the following characters: \~ # % & \* { } + / \ : < > ? \| ' " , or control characters. Cannot start with an underscore (\_) or period (.)                                                                                                                                                                                                                                                        |
| `members`                | string  |          | `"[{\"@odata.type\": \"#microsoft.graph.aadUserConversationMember\", \"user@odata.bind\": \"https://graph.microsoft.com/v1.0/users('user-id-or-upn')\", \"roles\": [\"owner\"]}]"` | JSON string containing array of conversationMember objects to add as owners/members when creating private or shared channels. Each member object should include '@odata.type' (e.g., '#microsoft.graph.aadUserConversationMember'), '<user@odata.bind>' (user URL), and 'roles' array (e.g., \['owner']). Required for private and shared channels to specify at least one owner. Maximum 200 members for private channels. For shared channels, only one owner can be added initially. |
| `team_id`                | string  |     ✅    | `"e4e57af8-cff8-4557-af89-a43a6f961f32"`                                                                                                                                           | The GUID of the existing Microsoft Teams team where the new channel will be created.                                                                                                                                                                                                                                                                                                                                                                                                    |
| `description`            | string  |          | `"Channel for all discussions related to Project Alpha."`                                                                                                                          | An optional, user-friendly description of the channel's purpose. Maximum length is 1024 characters.                                                                                                                                                                                                                                                                                                                                                                                     |
| `membership_type`        | string  |          | `"standard"`                                                                                                                                                                       | Membership type determining channel accessibility: 'standard' is accessible to all team members, 'private' is only accessible to a specific subset of team members, and 'shared' can be shared with people outside the team or organization (requires appropriate policies).                                                                                                                                                                                                            |
| `created_date_time`      | string  |          | `"2020-03-14T11:22:17.067Z"`                                                                                                                                                       | The timestamp for when the channel was created. Only used when creating a channel in migration mode by including '@microsoft.graph.channelCreationMode': 'migration' in the request. Format: ISO 8601 datetime string (e.g., '2020-03-14T11:22:17.067Z').                                                                                                                                                                                                                               |
| `shared_with_teams`      | string  |          | `"[{\"id\": \"team-guid-here\"}]"`                                                                                                                                                 | JSON string containing array of team objects to share the channel with when creating a shared channel. Each object should contain an 'id' field with the team ID. Use this to share the channel with the host team or other teams.                                                                                                                                                                                                                                                      |
| `is_favorite_by_default` | boolean |          | —                                                                                                                                                                                  | Indicates whether the channel should be marked as recommended for all members of the team to show in their channel list. Can only be set during creation. Defaults to false if not specified.                                                                                                                                                                                                                                                                                           |

***

### `Microsoft Teams Create Content Sharing Session`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_CONTENT\_SHARING\_SESSION**

Tool to create a content sharing session in a Microsoft Teams call. Use when you need to initiate content sharing during an active call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                | Description                                                                   |
| --------- | ------ | :------: | ---------------------- | ----------------------------------------------------------------------------- |
| `call_id` | string |     ✅    | `"test-call-id-12345"` | Unique identifier of the call in which to create the content sharing session. |

***

### `Microsoft Teams Create Group Team Channel`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_GROUP\_TEAM\_CHANNEL**

Tool to create a new channel in a group's associated team. Use when you have a group ID and need to create a channel in its team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                                   | Description                                                                                                                                               |
| ------------------------ | ------- | :------: | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`               | string  |     ✅    | `"e4c36173-d019-45ec-9c77-497b86386206"`                  | The unique identifier (GUID) of the group. This is the group ID, not the team ID. The group must have an associated team.                                 |
| `description`            | string  |          | `"Channel for all discussions related to Project Alpha."` | Optional textual description of the channel's purpose.                                                                                                    |
| `display_name`           | string  |     ✅    | `"Project Alpha Discussion"`                              | The display name for the new channel. Maximum length is 50 characters. This is the only required field.                                                   |
| `membership_type`        | string  |          | —                                                         | Channel membership type options.                                                                                                                          |
| `is_favorite_by_default` | boolean |          | —                                                         | Indicates whether the channel should be marked as recommended for all members of the team to show in their channel list. Can only be set during creation. |

***

### `Microsoft Teams Create Meeting`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_MEETING**

Use to schedule a new standalone Microsoft Teams online meeting, i.e., one not linked to any calendar event.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                   | Type    | Required | Example                  | Description                                                                                                                                                                        |
| ------------------------------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `subject`                                   | string  |     ✅    | `"Project Sync-Up"`      | The subject or title for the online meeting.                                                                                                                                       |
| `user_id`                                   | string  |          | —                        | The user ID (object ID) on whose behalf to create the meeting. Required when using application permissions (S2S). If not specified, uses the /me endpoint (delegated permissions). |
| `participants`                              | array   |          | —                        | An optional list of participants to invite to the meeting. Each participant is defined by their user ID and role.                                                                  |
| `end_date_time`                             | string  |     ✅    | `"2024-08-15T11:00:00Z"` | The end date and time of the meeting, specified in ISO 8601 format (e.g., '2024-08-15T11:00:00Z'). Must be after start\_date\_time.                                                |
| `allow_recording`                           | boolean |          | —                        | Indicates whether recording is enabled for the meeting.                                                                                                                            |
| `start_date_time`                           | string  |     ✅    | `"2024-08-15T10:00:00Z"` | The start date and time of the meeting, specified in ISO 8601 format (e.g., '2024-08-15T10:00:00Z').                                                                               |
| `allow_live_share`                          | string  |          | —                        | Indicates whether Live Share is enabled for the meeting. Possible values: enabled, disabled.                                                                                       |
| `allow_whiteboard`                          | boolean |          | —                        | Indicates whether whiteboard is enabled for the meeting.                                                                                                                           |
| `allow_meeting_chat`                        | string  |          | —                        | Specifies the mode of meeting chat. Possible values: enabled (default), disabled, limited (only during the meeting call).                                                          |
| `allowed_presenters`                        | string  |          | —                        | Specifies who can be a presenter in a meeting. Possible values: everyone (default), organization, roleIsPresenter, organizer.                                                      |
| `allow_transcription`                       | boolean |          | —                        | Indicates whether transcription is enabled for the meeting.                                                                                                                        |
| `meeting_template_id`                       | string  |          | —                        | The ID of the meeting template. Using a custom meeting template to create a meeting is a Teams Premium feature.                                                                    |
| `allow_breakout_rooms`                      | boolean |          | —                        | Indicates whether breakout rooms are enabled for the meeting.                                                                                                                      |
| `is_passcode_required`                      | boolean |          | —                        | An optional boolean indicating whether a passcode should be required to join this meeting. If not specified, the organization's default policy applies.                            |
| `record_automatically`                      | boolean |          | —                        | Indicates whether to record the meeting automatically.                                                                                                                             |
| `lobby_bypass_settings`                     | object  |          | —                        | Specifies which participants can bypass the meeting lobby.                                                                                                                         |
| `is_entry_exit_announced`                   | boolean |          | —                        | Indicates whether to announce when callers join or leave.                                                                                                                          |
| `allow_teamwork_reactions`                  | boolean |          | —                        | Indicates whether Teams reactions are enabled for the meeting.                                                                                                                     |
| `allow_power_point_sharing`                 | boolean |          | —                        | Indicates whether PowerPoint live is enabled for the meeting.                                                                                                                      |
| `allow_attendee_to_enable_mic`              | boolean |          | —                        | Indicates whether attendees can unmute themselves.                                                                                                                                 |
| `allow_attendee_to_enable_camera`           | boolean |          | —                        | Indicates whether attendees can turn on their camera.                                                                                                                              |
| `is_end_to_end_encryption_enabled`          | boolean |          | —                        | Indicates whether end-to-end encryption is enabled for the meeting. Note: This property must be used with Teams policies to determine the final behavior.                          |
| `allow_participants_to_change_name`         | boolean |          | —                        | Specifies whether participants are allowed to rename themselves in an instance of the meeting.                                                                                     |
| `share_meeting_chat_history_default`        | string  |          | —                        | Specifies whether meeting chat history is shared with participants. Possible values: all, none.                                                                                    |
| `allow_copying_and_sharing_meeting_content` | boolean |          | —                        | Indicates whether participants can copy and share meeting content.                                                                                                                 |

***

### `Microsoft Teams Create Offer Shift Request`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_OFFER\_SHIFT\_REQUEST**

Tool to create a new offer shift request in a user's joined team schedule. Use when a team member wants to offer their shift to another team member.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                       | Description                                                                                                                           |
| ------------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`                 | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').     |
| `user_id`                 | string |          | `"me"`                                        | Optional user identifier. Not used in the API request as the endpoint operates at the team level. Accepts 'me' or a GUID/UUID format. |
| `odata_type`              | string |          | —                                             | The OData type of the resource. Must be `#microsoft.graph.offerShiftRequest`.                                                         |
| `senderMessage`           | string |          | `"Would you like to take this shift?"`        | Optional message from the sender to the recipient explaining the shift offer.                                                         |
| `senderShiftId`           | string |     ✅    | `"SHFT_67bbbd0f-ad83-46a1-a94f-fe9d9f29fb84"` | The shift ID that is being offered. Format typically starts with 'SHFT\_' followed by a GUID.                                         |
| `recipientUserId`         | string |     ✅    | `"33ba30b9-9158-426d-a893-c3eff9d9a6bb"`      | The user ID of the recipient to whom the shift is being offered. Must be a valid GUID/UUID.                                           |
| `recipientActionMessage`  | string |          | —                                             | Message from the recipient when responding to the offer. This is typically set when the recipient accepts or declines.                |
| `recipientActionDateTime` | string |          | —                                             | Date and time when the recipient responded to the offer, in ISO 8601 format. This is typically set by the system.                     |

***

### `Microsoft Teams Create Open Shift`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_OPEN\_SHIFT**

Tool to create a new open shift in a Microsoft Teams team schedule. Use when you need to publish available shifts that team members can claim.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                      | Description                                                                                                                                                  |
| --------------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `team_id`             | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | The unique identifier of the team (GUID format).                                                                                                             |
| `draftOpenShift`      | object  |          | —                                            | Represents the draft version of an open shift that has not been shared with the team.                                                                        |
| `sharedOpenShift`     | object  |     ✅    | —                                            | The shared version of the open shift that is visible to team members. This contains the shift details including start/end times, theme, and open slot count. |
| `schedulingGroupId`   | string  |          | `"TAG_be14b4f7-7481-49a6-81fa-04a8df2751bf"` | The unique identifier of the scheduling group this open shift belongs to. Use format 'TAG\_{guid}' for scheduling group IDs.                                 |
| `isStagedForDeletion` | boolean |          | —                                            | Indicates whether the open shift is staged for deletion. Set to true to mark for deletion.                                                                   |

***

### `Microsoft Teams Create Open Shift Change Request`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_OPEN\_SHIFT\_CHANGE\_REQUEST**

Tool to create a new open shift change request in a team schedule. Use when a team member wants to claim an available open shift.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                          | Description                                                                                                                                     |
| -------------- | ------ | :------: | ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `message`      | string |          | —                                                | Optional message from the user explaining why they want to claim this open shift.                                                               |
| `team_id`      | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`         | The unique identifier of the team (GUID format).                                                                                                |
| `openShiftId`  | string |     ✅    | `"OPNSHFT_ca2655aa-2fc8-45dc-8c94-a6fcfc8924f0"` | The unique identifier of the open shift that the user is requesting to claim. This ID references an existing open shift in the team's schedule. |
| `senderUserId` | string |     ✅    | `"3fe0bc21-1398-4fd9-9713-52511b434c1e"`         | The unique identifier (GUID) of the user who is requesting to claim the open shift.                                                             |

***

### `Microsoft Teams Create Or Get Online Meeting`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_OR\_GET\_ONLINE\_MEETING**

Tool to create a new Microsoft Teams online meeting or retrieve an existing one based on externalId. Use when you need an idempotent meeting creation operation that returns an existing meeting if the externalId matches.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                  | Description                                                                                                                                                                                                         |
| --------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`        | string |          | `"user@contoso.com"`     | The user ID (UPN or GUID) on whose behalf to create the meeting. Required for Service-to-Service (client credentials) authentication. If not provided, uses /me endpoint (delegated permissions only).              |
| `subject`       | string |          | `"Test Meeting via API"` | The subject or title for the online meeting. Optional.                                                                                                                                                              |
| `chatInfo`      | object |          | —                        | The chat information associated with an online meeting.                                                                                                                                                             |
| `externalId`    | string |     ✅    | `"test-meeting-12345"`   | The external ID that uniquely identifies this meeting. Required. If a meeting with this externalId already exists, that meeting is returned; otherwise, a new meeting is created. Maximum length is 256 characters. |
| `endDateTime`   | string |          | `"2026-02-24T11:00:00Z"` | The meeting end date and time in ISO 8601 format (e.g., '2026-02-24T11:00:00Z'). Optional but recommended. Should be after startDateTime if both are provided.                                                      |
| `participants`  | object |          | —                        | The participants associated with the online meeting.                                                                                                                                                                |
| `startDateTime` | string |          | `"2026-02-24T10:00:00Z"` | The meeting start date and time in ISO 8601 format (e.g., '2026-02-24T10:00:00Z'). Optional but recommended.                                                                                                        |

***

### `Microsoft Teams Create Or Update Schedule`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_OR\_UPDATE\_SCHEDULE**

Tool to create or replace a schedule object for a Microsoft Teams team. Use when you need to enable or configure scheduling features for a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                                      | Type    | Required | Example                                  | Description                                                                                                      |
| ---------------------------------------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `enabled`                                      | boolean |          | —                                        | Indicates whether the schedule is enabled for the team. Set to true to enable.                                   |
| `team_id`                                      | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team (GUID format).                                                                 |
| `timeZone`                                     | string  |          | `"America/New_York"`                     | Time zone for the schedule (e.g., 'America/New\_York', 'Europe/London', 'UTC'). Uses IANA time zone identifiers. |
| `timeClockEnabled`                             | boolean |          | —                                        | Indicates whether the time clock feature is enabled for the schedule.                                            |
| `openShiftsEnabled`                            | boolean |          | —                                        | Indicates whether open shifts are enabled for the schedule.                                                      |
| `timeOffRequestsEnabled`                       | boolean |          | —                                        | Indicates whether team members can request time off.                                                             |
| `offerShiftRequestsEnabled`                    | boolean |          | —                                        | Indicates whether team members can offer their shifts to others.                                                 |
| `swapShiftsRequestsEnabled`                    | boolean |          | —                                        | Indicates whether team members can swap shifts with each other.                                                  |
| `isActivitiesIncludedWhenCopyingShiftsEnabled` | boolean |          | —                                        | Indicates whether activities are included when copying shifts.                                                   |

***

### `Microsoft Teams Create Schedule Day Note`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_SCHEDULE\_DAY\_NOTE**

Tool to create a new day note in a team's schedule. Use when you need to add notes or reminders for a specific date in the team schedule. Day notes help communicate important information to team members for a particular day.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                  |
| --------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------- |
| `teamId`        | string |     ✅    | `"26baab0a-c4eb-4e23-94ae-ac8b5304027d"` | The unique identifier (GUID) of the Microsoft Teams team where the day note will be created. |
| `dayNoteDate`   | string |     ✅    | `"2026-02-24"`                           | The date for which the day note applies, in YYYY-MM-DD format (e.g., '2026-02-24').          |
| `draftDayNote`  | object |          | —                                        | Represents the content and format of a day note.                                             |
| `sharedDayNote` | object |          | —                                        | Represents the content and format of a day note.                                             |

***

### `Microsoft Teams Create Scheduling Group`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_SCHEDULING\_GROUP**

Tool to create a new scheduling group in a team's schedule. Use when you need to organize team members into groups for shift scheduling and management. This action uses 'team\_id' parameter naming which aligns with the Microsoft Graph API endpoint (/teams/{id}/schedule/schedulingGroups).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                    | Description                                                                                                                                                          |
| -------------- | ------- | :------: | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`         | string  |          | `"MORNING-1"`                              | Code or identifier for the scheduling group. This can be used for external system integration or quick reference.                                                    |
| `team_id`      | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`   | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                    |
| `user_ids`     | array   |     ✅    | `["550ac91a-5895-4c98-af68-e97197a65af4"]` | List of user IDs to include as members of this scheduling group. Each ID should be a valid GUID/UUID. Can be an empty array if no members are being added initially. |
| `is_active`    | boolean |          | `true`                                     | Indicates whether the scheduling group is active and available for scheduling. Set to true to enable, false to disable.                                              |
| `display_name` | string  |     ✅    | `"Morning Shift"`                          | Display name of the scheduling group. This is the name that will appear when managing schedules and shifts.                                                          |

***

### `Microsoft Teams Create Shift`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_SHIFT**

Tool to create a new shift in a Microsoft Teams team schedule. Use when you need to assign work shifts to team members with specific start/end times and details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                  | Description                                                                                                                |
| --------------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `userId`              | string  |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier of the user assigned to this shift (GUID format).                                                    |
| `team_id`             | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team (GUID format).                                                                           |
| `draftShift`          | object  |     ✅    | —                                        | The draft version of the shift containing schedule details. This is the version managers see before sharing with the team. |
| `sharedShift`         | object  |          | —                                        | Represents the shared version of a shift that is visible to team members.                                                  |
| `schedulingGroupId`   | string  |          | —                                        | The unique identifier of the scheduling group this shift belongs to.                                                       |
| `isStagedForDeletion` | boolean |          | —                                        | Indicates whether the shift is staged for deletion. Set to true to mark for deletion.                                      |

***

### `Microsoft Teams Create Team`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_TEAM**

Tool to create a new Microsoft Teams team. Use when you need to provision a team with optional template, channels, and members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                                                                 | Description                                                                                                                                                                                                                        |
| ------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `members`           | array  |          | `[{"roles":["owner"],"odata_type":"#microsoft.graph.aadUserConversationMember","user_odata_bind":"https://graph.microsoft.com/v1.0/users('user-id')"}]` | List of initial team members. At least one member with 'owner' role is recommended. If not provided, the authenticated user will be added as owner. Each member must specify '@odata.type', roles, and '<user@odata.bind>'.        |
| `channels`          | array  |          | —                                                                                                                                                       | Collection of channels to create in the team. Note: The 'General' channel is created automatically.                                                                                                                                |
| `visibility`        | string |          | `"private"`                                                                                                                                             | Team visibility setting. 'private': Only owners can add members. 'public': Anyone in the organization can join. 'hiddenMembership': Private team whose membership list is also hidden. Default is 'public'.                        |
| `description`       | string |          | `"Team for Q4 planning"`                                                                                                                                | Brief description of the team's purpose. Maximum 1024 characters. Note: Known template IDs for team creation: 'standard' (default), 'educationClass', 'educationStaff', 'educationProfessionalLearningCommunity'.                  |
| `displayName`       | string |     ✅    | `"My Sample Team"`                                                                                                                                      | Display name of the team as it will appear in Microsoft Teams. Note: The API allows duplicate team names, but using unique names is recommended for clarity.                                                                       |
| `funSettings`       | object |          | —                                                                                                                                                       | Settings to configure use of Giphy, memes, and stickers in the team.                                                                                                                                                               |
| `guestSettings`     | object |          | —                                                                                                                                                       | Settings to configure whether guests can create, update, or delete channels in the team.                                                                                                                                           |
| `installedApps`     | array  |          | —                                                                                                                                                       | Collection of apps to install in the team.                                                                                                                                                                                         |
| `classification`    | string |          | —                                                                                                                                                       | Optional label describing the data or business sensitivity of the team. Must match a preconfigured value in the tenant's directory.                                                                                                |
| `memberSettings`    | object |          | —                                                                                                                                                       | Settings to configure whether members can perform certain actions in the team.                                                                                                                                                     |
| `specialization`    | string |          | `"educationClass"`                                                                                                                                      | Indicates whether the team is intended for a particular use case. Each specialization has access to unique behaviors and experiences.                                                                                              |
| `firstChannelName`  | string |          | —                                                                                                                                                       | Name of the first channel created; defaults to 'General' if omitted.                                                                                                                                                               |
| `messagingSettings` | object |          | —                                                                                                                                                       | Settings to configure messaging and mentions in the team.                                                                                                                                                                          |
| `templateOdataBind` | string |          | `"https://graph.microsoft.com/v1.0/teamsTemplates('standard')"`                                                                                         | URL reference to the team template. Common templates: 'standard' (default), 'educationClass', 'educationStaff', 'educationProfessionalLearningCommunity'. Format: <https://graph.microsoft.com/v1.0/teamsTemplates('template-id>') |

***

### `Microsoft Teams Create Team From Group`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_TEAM\_FROM\_GROUP**

Tool to create a new team under an existing Microsoft 365 group. Use when you need to add Teams capabilities to an existing group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                  | Description                                                                                                                                                                                                             |
| ------------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`          | string |     ✅    | `"53e97ba7-3b5a-4d66-927e-27ebd8d1414c"` | The unique identifier (GUID) of the Microsoft 365 group to create a team from. Note: The group must not already have a team associated with it, and newly created groups may need time to propagate (up to 15 minutes). |
| `funSettings`       | object |          | —                                        | Settings to configure use of Giphy, memes, and stickers in the team.                                                                                                                                                    |
| `guestSettings`     | object |          | —                                        | Settings to configure whether guests can create, update, or delete channels in the team.                                                                                                                                |
| `memberSettings`    | object |          | —                                        | Settings to configure whether members can perform certain actions in the team.                                                                                                                                          |
| `messagingSettings` | object |          | —                                        | Settings to configure messaging and mentions in the team.                                                                                                                                                               |

***

### `Microsoft Teams Create Time Off`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_TIME\_OFF**

Tool to create a new timeOff instance in a team's schedule. Use when you need to create approved time off for a team member (vacation, sick leave, etc.).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                  | Description                                                                                                                     |
| --------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `userId`              | string  |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | ID of the user assigned to this timeOff entry. Must be a valid user GUID (e.g., '43f0c14d-bca8-421f-b762-c3d8dd75be1f').        |
| `team_id`             | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').    |
| `draftTimeOff`        | object  |          | —                                        | Represents a version of the timeOff entry (shared or draft).                                                                    |
| `sharedTimeOff`       | object  |          | —                                        | Represents a version of the timeOff entry (shared or draft).                                                                    |
| `isStagedForDeletion` | boolean |          | —                                        | Indicates whether the timeOff is marked for deletion. This process is finalized when the schedule is shared. Defaults to false. |

***

### `Microsoft Teams Create Time Off Reason`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_TIME\_OFF\_REASON**

Tool to create a new time off reason in a team's schedule. Use when you need to define a new category for time off requests with a custom name and icon.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                                                                                                                       |
| ------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`        | string  |          | `"VAC001"`                               | Optional external identifier code for the time off reason. Must be unique within the team and alphanumeric, maximum 100 characters. Useful for integration with external systems. |
| `team_id`     | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                      |
| `iconType`    | string  |     ✅    | `"plane"`                                | Icon to display for this time off reason in the schedule. Choose an icon that visually represents the reason type.                                                                |
| `isActive`    | boolean |     ✅    | `true`                                   | Whether this time off reason is active and available for use. Set to true to make it available immediately, false to create it as inactive.                                       |
| `displayName` | string  |     ✅    | `"Vacation"`                             | Name of the time off reason as it will appear in the schedule (e.g., 'Vacation', 'Sick Leave', 'Personal Day').                                                                   |

***

### `Microsoft Teams Create Time Off Request`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_TIME\_OFF\_REQUEST**

Tool to create a new time off request in a team's schedule. Use when a team member needs to request time off for vacation, sick leave, or other absences.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                      | Description                                                                                                                                                                                        |
| ----------------- | ------ | :------: | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`         | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                                       |
| `odata_type`      | string |          | —                                            | The OData type of the resource. Must be `#microsoft.graph.timeOffRequest`.                                                                                                                         |
| `endDateTime`     | string |     ✅    | `"2026-03-16T00:00:00Z"`                     | End date and time of the time off request in ISO 8601 format (e.g., '2026-03-16T00:00:00Z'). This represents when the requested time off ends.                                                     |
| `senderUserId`    | string |     ✅    | `"484453b2-158e-479b-9200-07bdb8a3cd12"`     | The user ID of the person who is creating the time off request. Must be a valid user GUID in the organization (e.g., '484453b2-158e-479b-9200-07bdb8a3cd12').                                      |
| `startDateTime`   | string |     ✅    | `"2026-03-15T00:00:00Z"`                     | Start date and time of the time off request in ISO 8601 format (e.g., '2026-03-15T00:00:00Z'). This represents when the requested time off begins.                                                 |
| `timeOffReasonId` | string |     ✅    | `"TOR_31a5f3a6-e4ba-41d9-9823-8220839fd095"` | The unique identifier of the time off reason. This ID references a predefined reason in the team's schedule (e.g., vacation, sick leave). Format typically starts with 'TOR\_' followed by a GUID. |

***

### `Microsoft Teams Create User Online Meeting`

Integration name: **MICROSOFT\_TEAMS\_CREATE\_USER\_ONLINE\_MEETING**

Tool to create a new Microsoft Teams online meeting for a specific user. Use when you need to create an online meeting on behalf of a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                          | Description                                                                                                                                     |
| ------------------- | ------- | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `subject`           | string  |     ✅    | `"Test Online Meeting via API"`  | The subject or title for the online meeting.                                                                                                    |
| `user_id`           | string  |     ✅    | `"me"`                           | The unique identifier (user ID) of the user for whom to create the online meeting. Use 'me' for the authenticated user or a specific user GUID. |
| `externalId`        | string  |          | `"project-meeting-001"`          | Custom external identifier for the meeting. Maximum length is 256 characters.                                                                   |
| `endDateTime`       | string  |     ✅    | `"2026-02-24T15:00:00.0000000Z"` | The meeting end date and time in ISO 8601 format (e.g., '2026-02-24T15:00:00.0000000Z'). Must be after startDateTime.                           |
| `isBroadcast`       | boolean |          | —                                | Indicates whether this meeting is a Teams live event. Deprecated.                                                                               |
| `startDateTime`     | string  |     ✅    | `"2026-02-24T14:30:00.0000000Z"` | The meeting start date and time in ISO 8601 format (e.g., '2026-02-24T14:30:00.0000000Z').                                                      |
| `meetingTemplateId` | string  |          | —                                | The ID of the meeting template. Using a custom meeting template to create a meeting is a Teams Premium feature.                                 |

***

### `Microsoft Teams Delete Call Operation`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_CALL\_OPERATION**

Tool to delete a navigation property operation for a communications call. Use when you need to remove a specific commsOperation from a call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                |
| -------------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `call_id`            | string |     ✅    | `"57dab8b1-894c-409a-b240-bd8beae78896"` | The unique identifier of the call.                                                                         |
| `if_match`           | string |          | —                                        | ETag value for conditional deletion. Use this to ensure the operation hasn't changed since last retrieved. |
| `comms_operation_id` | string |     ✅    | `"0fe0623f-d628-42ed-b4bd-8ac290072cc5"` | The unique identifier of the commsOperation to delete.                                                     |

***

### `Microsoft Teams Delete Channel`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_CHANNEL**

Tool to delete a channel from a Microsoft Teams team. Use when you need to permanently remove a channel. Note that the General channel cannot be deleted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                        | Description                                                                                                                              |
| ------------ | ------ | :------: | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                       | The unique identifier of the team that contains the channel. Must be a valid GUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `if_match`   | string |          | `"W/\"JjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiJw==\""` | ETag value for conditional delete. Use this to ensure the channel hasn't been modified since it was last retrieved.                      |
| `channel_id` | string |     ✅    | `"19:72737dcaab464ad99ab3ffda590e1854@thread.tacv2"`           | The unique identifier of the channel to delete. Can be in thread format (e.g., '19:72737dcaab464ad99ab3ffda590e1854\@thread.tacv2').     |

***

### `Microsoft Teams Delete Day Note`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_DAY\_NOTE**

Tool to delete a day note from a Microsoft Teams schedule. Use when you need to remove a day note from a specific date in the team schedule. The If-Match header with ETag value is required for deletion.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                       | Description                                                                                                                                                                      |
| ------------- | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`     | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier of the team. Must be a valid GUID.                                                                                                                         |
| `if_match`    | string |     ✅    | `"\"e800eff0-0000-0400-0000-69930a1e0000\""`  | ETag value for conditional delete (REQUIRED). Use this to ensure the day note hasn't been modified since it was retrieved. Obtain this value from a GET request to the day note. |
| `day_note_id` | string |     ✅    | `"NOTE_940eab35-f133-47dc-becd-b345e6cea66c"` | The unique identifier of the dayNote to delete. Typically starts with 'NOTE\_' prefix.                                                                                           |

***

### `Microsoft Teams Delete Open Shift`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_OPEN\_SHIFT**

Tool to delete an open shift from a Microsoft Teams schedule. Use when you need to remove an unfilled shift from the team schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                          | Description                                                                                                                                                                 |
| --------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`         | The unique identifier (GUID) of the Microsoft Teams team that contains the schedule.                                                                                        |
| `if_match`      | string |          | —                                                | Optional ETag value for conditional delete. Use this to ensure the open shift hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `open_shift_id` | string |     ✅    | `"OPNSHFT_ca2655aa-2fc8-45dc-8c94-a6fcfc8924f0"` | The unique identifier of the open shift to delete. Format: 'OPNSHFT\_' followed by a GUID (e.g., 'OPNSHFT\_ca2655aa-2fc8-45dc-8c94-a6fcfc8924f0').                          |

***

### `Microsoft Teams Delete Scheduling Group`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_SCHEDULING\_GROUP**

Tool to delete a scheduling group from a Microsoft Teams team schedule. Use this when you need to remove a scheduling group from a specific team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                      | Description                                                                                                                                                                       |
| --------------------- | ------ | :------: | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`             | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | The unique identifier (GUID) of the Microsoft Teams team that contains the schedule.                                                                                              |
| `if_match`            | string |          | —                                            | Optional ETag value for conditional delete. Use this to ensure the scheduling group hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `scheduling_group_id` | string |     ✅    | `"TAG_6685f5de-54e3-47e7-b1fb-436f35b67b2c"` | The unique identifier of the scheduling group to delete. This can be a GUID or a tag-based ID (e.g., 'TAG\_6685f5de-54e3-47e7-b1fb-436f35b67b2c').                                |

***

### `Microsoft Teams Delete Shift`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_SHIFT**

Tool to delete a shift from a Microsoft Teams team schedule. Use when you need to permanently remove a scheduled shift.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                       | Description                                                                                                                                                   |
| ---------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`  | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier of the team (GUID format).                                                                                                              |
| `if_match` | string |          | —                                             | ETag value for conditional delete. Use this to ensure the shift hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `shift_id` | string |     ✅    | `"SHFT_da9a0769-7ef6-4f94-8bff-5a7238769692"` | The unique identifier of the shift to delete.                                                                                                                 |

***

### `Microsoft Teams Delete Soft Message`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_SOFT\_MESSAGE**

Tool to soft-delete a message in a Teams channel. Use when you need to remove a message without permanently deleting it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                               |
| ------------ | ------ | :------: | ---------------------------------------------------- | --------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier of the team containing the channel. |
| `channel_id` | string |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"` | The unique identifier of the channel within the team.     |
| `message_id` | string |     ✅    | `"1771863545596"`                                    | The unique identifier of the message to soft-delete.      |

***

### `Microsoft Teams Delete Tab`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_TAB**

Tool to delete a tab from a Microsoft Teams channel. Use when you need to permanently remove a tab from a channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                        | Description                                                                                                                                                                                                            |
| ------------ | ------ | :------: | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tab_id`     | string |     ✅    | `"6fa06ee5-1f61-4edb-ba26-bf59d64db56d"`                       | Unique identifier of the tab to delete from the channel. This is the tab's GUID (e.g., '6fa06ee5-1f61-4edb-ba26-bf59d64db56d').                                                                                        |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                       | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                                                           |
| `if_match`   | string |          | `"W/\"JjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiJw==\""` | Optional ETag value for conditional delete. Use this to ensure the tab hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail.                                                   |
| `channel_id` | string |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"`           | Unique identifier of the channel within the team. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or non-encoded format (e.g., '19:04e881b862664873b6e97eeeb6961e5e\@thread.tacv2'). |

***

### `Microsoft Teams Delete Team`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_TEAM**

Tool to delete a Microsoft Teams team. Use after confirming the target team ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                         |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"fbe2bf47-16c8-47cf-b4a5-4b9b187c508b"` | The unique identifier (GUID) of the Microsoft Teams team to delete. |

***

### `Microsoft Teams Delete Time Off`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_TIME\_OFF**

Tool to delete a timeOff from a team's schedule. Use when you need to remove a scheduled time off entry from a team member's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                        | Description                                                                                                                                                     |
| ------------ | ------ | :------: | -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                       | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                    |
| `if_match`   | string |          | `"W/\"JjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiJw==\""` | ETag value for conditional delete. Use this to ensure the timeOff hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `timeoff_id` | string |     ✅    | `"SHFT_56063b98-003a-4578-b676-5faf39926257"`                  | Unique identifier of the timeOff to delete. This is the ID of the timeOff resource in the team's schedule.                                                      |

***

### `Microsoft Teams Delete Time Off Reason`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_TIME\_OFF\_REASON**

Tool to delete a time off reason from a team's schedule. Use when you need to remove a time off reason. Note: This operation marks the time off reason as inactive rather than permanently deleting it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                                        | Description                                                                                                                                                             |
| -------------------- | ------ | :------: | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`            | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                       | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                            |
| `if_match`           | string |          | `"W/\"JjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiJw==\""` | ETag value for conditional delete. Use this to ensure the time off reason hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `time_off_reason_id` | string |     ✅    | `"TOR_027a2ccc-c0fe-46cd-98f7-f78203556140"`                   | Unique identifier of the time off reason to delete. This is the ID of the timeOffReason resource in the team's schedule.                                                |

***

### `Microsoft Teams Delete Time Off Request`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_TIME\_OFF\_REQUEST**

Tool to delete a time off request from a Microsoft Teams team schedule. Use when you need to permanently remove a time off request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                       | Description                                                                                                                                                              |
| --------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `team_id`             | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier of the team (GUID format).                                                                                                                         |
| `if_match`            | string |          | —                                             | ETag value for conditional delete. Use this to ensure the time off request hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `time_off_request_id` | string |     ✅    | `"SREQ_04903df3-3948-46e0-8f34-442520a234c7"` | The unique identifier of the time off request to delete.                                                                                                                 |

***

### `Microsoft Teams Delete User Online Meeting`

Integration name: **MICROSOFT\_TEAMS\_DELETE\_USER\_ONLINE\_MEETING**

Tool to delete an online meeting for a user. Use when you need to permanently remove an online meeting from a user's calendar.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                                                                                                  | Description                                                                                                                                                     |
| ------------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`           | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`                                                                                                                 | The unique identifier of the user who owns the online meeting.                                                                                                  |
| `if_match`          | string |          | `"W/\"JjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAiJw==\""`                                                                                           | ETag value for conditional delete. Use this to ensure the meeting hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `online_meeting_id` | string |     ✅    | `"MSo0M2YwYzE0ZC1iY2E4LTQyMWYtYjc2Mi1jM2Q4ZGQ3NWJlMWYqMCoqMTk6bWVldGluZ19NbUl4WkdKaU1tSXROR0U0TWkwMFptVTBMVGs1TnpNdE16STNNMlF5WWprd1pESXhAdGhyZWFkLnYy"` | The unique identifier of the online meeting to delete.                                                                                                          |

***

### `Microsoft Teams Get Call Operation`

Integration name: **MICROSOFT\_TEAMS\_GET\_CALL\_OPERATION**

Tool to get a specific commsOperation for a call. Use to check the status of long-running call operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                                                                  |
| -------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `expand`             | string |          | `"*"`                                    | OData $expand query parameter to include related resources inline. Comma-separated list of relationships.                                                    |
| `select`             | string |          | `"id,status"`                            | OData $select query parameter to specify which properties to include in the response. Comma-separated list of property names (e.g., 'id,status,resultInfo'). |
| `call_id`            | string |     ✅    | `"12345678-1234-1234-1234-123456789012"` | The unique identifier of the call.                                                                                                                           |
| `comms_operation_id` | string |     ✅    | `"0fe0623f-d628-42ed-b4bd-8ac290072cc5"` | The unique identifier of the commsOperation.                                                                                                                 |

***

### `Microsoft Teams Get Channel`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHANNEL**

Tool to get a specific channel in a team. Use after obtaining valid team and channel IDs to fetch channel details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                                                                                                                                                                |
| ------------ | ------ | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `expand`     | string |          | `"members"`                                          | Comma-separated list of relationships to expand and include in the response (e.g., 'members', 'tabs').                                                                                                                                     |
| `select`     | string |          | `"id,displayName,description"`                       | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Empty string returns all default properties. Use to optimize performance by excluding expensive properties like 'email' and 'summary'. |
| `team_id`    | string |     ✅    | `"893075dd-2487-4122-925f-022c42e20265"`             | The unique identifier of the Microsoft Teams team. Must be a valid GUID (e.g., '893075dd-2487-4122-925f-022c42e20265').                                                                                                                    |
| `channel_id` | string |     ✅    | `"19:561fbdbbfca848a484f0a6f00ce9dbbd@thread.tacv2"` | The unique identifier of the channel within the specified team. Must be in thread format (e.g., '19:561fbdbbfca848a484f0a6f00ce9dbbd\@thread.tacv2').                                                                                      |

***

### `Microsoft Teams Get Channel Message`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHANNEL\_MESSAGE**

Retrieves a specific message from a Microsoft Teams channel using its Team, Channel, and Message IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                            |
| ------------ | ------ | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"fbe2bf47-16c8-47cf-b4a5-4b9b187c508b"`             | ID of the Team containing the channel where the message is located.    |
| `channel_id` | string |     ✅    | `"19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"` | ID of the Channel within the specified Team that contains the message. |
| `message_id` | string |     ✅    | `"1614618259349"`                                    | ID of the message to retrieve from the channel.                        |

***

### `Microsoft Teams Get Channel Message Reply`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHANNEL\_MESSAGE\_REPLY**

Tool to retrieve a single reply to a message in a channel. Use when you need to get details of a specific reply message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                               |
| ------------ | ------ | :------: | ---------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| `expand`     | array  |          | `["replies"]`                                        | Expand related entities. Use to include additional related information in the response.   |
| `select`     | array  |          | `["id","body","from","createdDateTime"]`             | Select specific properties to be returned. If not specified, all properties are returned. |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | Unique identifier of the Microsoft Teams team.                                            |
| `reply_id`   | string |     ✅    | `"1771240360006"`                                    | Unique identifier of the reply message to retrieve.                                       |
| `channel_id` | string |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"` | Unique identifier of the channel within the team.                                         |
| `message_id` | string |     ✅    | `"1768309336891"`                                    | Unique identifier of the channel message that contains the reply.                         |

***

### `Microsoft Teams Get Chat`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHAT**

Tool to retrieve a single chat by ID. Use when you need to get details about a specific chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                                                                                                                 |
| --------- | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | array  |          | `["members"]`                                     | List of related entities to expand in the response. Supported values: 'members' (includes all chat members), 'lastMessagePreview' (includes preview of the last message). Leave empty to return only basic chat properties. |
| `chat_id` | string |     ✅    | `"19:b8577894a63548969c5c92bb9c80c5e1@thread.v2"` | The unique identifier of the chat to retrieve. This is the chat's ID in the format '19:abc123def456\@thread.v2' for group chats or '19:<user1_user2@unq.gbl.spaces>' for one-on-one chats.                                  |

***

### `Microsoft Teams Get Chat Last Message Preview`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHAT\_LAST\_MESSAGE\_PREVIEW**

DEPRECATED: Use MICROSOFT\_TEAMS\_GET\_CHAT instead. Tool to get lastMessagePreview from a chat. Use when you need to see the preview of the most recent message in a specific chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                             |
| --------- | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat. This is a composite ID formatted like '19:abc123def456\@thread.v2' for group chats or meeting chats. |

***

### `Microsoft Teams Get Chat Member`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHAT\_MEMBER**

Tool to get a specific conversation member from a Microsoft Teams chat. Use when you need details about a specific chat participant.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type   | Required | Example                                                                                                                                                                          | Description                                                                                                                                             |
| ------------------------ | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`                | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"`                                                                                                                                | Unique identifier of the Microsoft Teams chat. Format: '19:xxxxx\@thread.v2'                                                                            |
| `conversation_member_id` | string |     ✅    | `"MCMjMCMjYTZhNTVjNWYtMDc0Ny00ODA0LWExNjYtMmI1ZGZjOWFjZTJhIyMxOTpmYWE0YjkxZDQ5Njg0ZTQyODBhOTY4MjRmNWM0ZGMyZUB0aHJlYWQudjIjIzQzZjBjMTRkLWJjYTgtNDIxZi1iNzYyLWMzZDhkZDc1YmUxZg=="` | Unique identifier of the conversation member. This is an opaque string returned by Microsoft Graph API that should not be parsed or assumed by clients. |

***

### `Microsoft Teams Get Chat Message`

Integration name: **MICROSOFT\_TEAMS\_GET\_CHAT\_MESSAGE**

Tool to get a specific chat message. Use after confirming chat\_id and message\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                             | Description                                                                                                                                                                                                                 |
| ------------ | ------ | :------: | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`    | string |     ✅    | `"19:abc123def456ghi789@thread.v2"` | Unique identifier of the Microsoft Teams chat that contains the message.                                                                                                                                                    |
| `message_id` | string |     ✅    | `"1612289992105"`                   | Unique identifier of the chat message to retrieve. This is a numeric timestamp string (milliseconds since epoch) returned by the Microsoft Graph API when listing messages. Do not include underscores or other separators. |

***

### `Microsoft Teams Get Day Note`

Integration name: **MICROSOFT\_TEAMS\_GET\_DAY\_NOTE**

Tool to retrieve a specific day note from a team's schedule. Use when you need to view notes for a specific date in a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                       | Description                                                                                                                |
| ------------ | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | array  |          | `["sharedDayNote"]`                           | Expand related entities inline. Use to include related resources in the response.                                          |
| `select`     | array  |          | `["id","dayNoteDate","sharedDayNote"]`        | Select specific properties to include in the response. Available properties: id, dayNoteDate, sharedDayNote, draftDayNote. |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier (GUID) of the Microsoft Teams team.                                                                  |
| `daynote_id` | string |     ✅    | `"NOTE_e826ba29-9a01-4aec-a4e9-1e20183f8447"` | The unique identifier of the day note to retrieve. Format: NOTE\_                                                          |

***

### `Microsoft Teams Get Files Folder`

Integration name: **MICROSOFT\_TEAMS\_GET\_FILES\_FOLDER**

Tool to get the files folder (DriveItem) metadata for a specific channel in a Microsoft Teams team. Use when you need to access file storage information for a channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                                                                       |
| ------------ | ------ | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | string |          | —                                                    | Expand related entities to include additional data in the response.                                                                               |
| `select`     | string |          | `"id,name,webUrl"`                                   | Select specific properties to be returned (comma-separated, e.g., 'id,name,webUrl').                                                              |
| `group_id`   | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | Unique identifier (GUID/UUID) of the Microsoft Teams group/team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').           |
| `channel_id` | string |     ✅    | `"19:3442cabe1ce346538fec728d83abe8a5@thread.tacv2"` | Unique identifier of the channel within the specified team. Must be in thread format (e.g., '19:3442cabe1ce346538fec728d83abe8a5\@thread.tacv2'). |

***

### `Microsoft Teams Get Group Team Channel`

Integration name: **MICROSOFT\_TEAMS\_GET\_GROUP\_TEAM\_CHANNEL**

DEPRECATED: Use MICROSOFT\_TEAMS\_GET\_CHANNEL instead. Tool to get a specific channel from a group's team. Use when you have a group ID and channel ID to fetch channel details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                                                                                   |
| ------------ | ------ | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | string |          | `"members"`                                          | Comma-separated list of relationships to expand and include in the response.                                                                                  |
| `select`     | string |          | `"id,displayName,description"`                       | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Leave empty to return all default properties.             |
| `group_id`   | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier (GUID) of the group. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                             |
| `channel_id` | string |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"` | The unique identifier of the channel within the specified group's team. Must be in thread format (e.g., '19:04e881b862664873b6e97eeeb6961e5e\@thread.tacv2'). |

***

### `Microsoft Teams Get My Profile`

Integration name: **MICROSOFT\_TEAMS\_GET\_MY\_PROFILE**

Tool to retrieve a user's profile (id/UPN/mail/displayName). Supports both delegated auth (use user\_id='me') and application-only auth (specify user ID/UPN). Use when operations require user identity information (e.g., chat creation).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                   | Description                                                                                                                                                                            |
| --------- | ------ | :------: | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `select`  | string |          | `"id,userPrincipalName,mail,displayName"` | Comma-separated list of properties to include in the response. Maps to the $select query parameter. If not specified, returns id, userPrincipalName, mail, and displayName by default. |
| `user_id` | string |          | `"me"`                                    | The user's unique identifier (GUID) or user principal name (email). Use 'me' for delegated auth (currently signed-in user) or specify a user ID/UPN for application-only (S2S) auth.   |

***

### `Microsoft Teams Get Offer Shift Request`

Integration name: **MICROSOFT\_TEAMS\_GET\_OFFER\_SHIFT\_REQUEST**

Tool to get a specific offer shift request from a Microsoft Teams schedule. Use when you need to retrieve details of a single offer shift request by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type   | Required | Example                                       | Description                                                                                                                                     |
| ------------------------ | ------ | :------: | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`                 | string |          | —                                             | Expand related entities to include additional data in the response.                                                                             |
| `select`                 | string |          | `"id,state,recipientActionDateTime"`          | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime').                                          |
| `team_id`                | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').               |
| `offer_shift_request_id` | string |     ✅    | `"SREQ_6578bed4-f09c-4d6e-9d2a-ec86d2fe8244"` | Unique identifier of the offer shift request to retrieve. Must start with 'SREQ\_' prefix (e.g., 'SREQ\_6578bed4-f09c-4d6e-9d2a-ec86d2fe8244'). |

***

### `Microsoft Teams Get Online Meeting`

Integration name: **MICROSOFT\_TEAMS\_GET\_ONLINE\_MEETING**

Tool to retrieve details of a specific Microsoft Teams online meeting by its ID. Use when you need to get the properties and relationships of an existing meeting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                                                                                                  | Description                                                                                                                                             |
| ------------ | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | array  |          | `["attendanceReports"]`                                                                                                                                  | Expand related entities to include additional information in the response.                                                                              |
| `select`     | array  |          | `["id","subject","startDateTime","endDateTime","joinWebUrl"]`                                                                                            | Select specific properties to be returned. Allows filtering the response to include only the fields you need.                                           |
| `user_id`    | string |          | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`                                                                                                                 | The user ID (UPN or object ID) of the meeting organizer. Required for S2S (client credentials) authentication. Not needed for delegated authentication. |
| `meeting_id` | string |     ✅    | `"MSo0M2YwYzE0ZC1iY2E4LTQyMWYtYjc2Mi1jM2Q4ZGQ3NWJlMWYqMCoqMTk6bWVldGluZ19PREUwTlRjNE9XVXRZamRsT0MwMFl6QTVMVGd5T0RRdE5UUTBORGc0MVdVd1ptRXdAdGhyZWFkLnYy"` | The unique identifier (ID) of the online meeting to retrieve. This is the meeting's ID in the format returned when creating a meeting.                  |

***

### `Microsoft Teams Get Open Shift`

Integration name: **MICROSOFT\_TEAMS\_GET\_OPEN\_SHIFT**

Tool to get a specific open shift from a Microsoft Teams schedule. Use when you need to retrieve details about a particular unassigned open shift by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                          | Description                                                                                                                                   |
| -------------- | ------ | :------: | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`       | string |          | —                                                | Expand related entities to include additional data in the response.                                                                           |
| `select`       | string |          | `"id,schedulingGroupId,sharedOpenShift"`         | Select specific properties to be returned (comma-separated, e.g., 'id,schedulingGroupId,sharedOpenShift').                                    |
| `team_id`      | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`         | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').             |
| `openshift_id` | string |     ✅    | `"OPNSHFT_36878d77-7319-4c0e-9071-28f1f6a231c0"` | Unique identifier of the open shift to retrieve. Typically in the format 'OPNSHFT\_' (e.g., 'OPNSHFT\_36878d77-7319-4c0e-9071-28f1f6a231c0'). |

***

### `Microsoft Teams Get Open Shift Change Request`

Integration name: **MICROSOFT\_TEAMS\_GET\_OPEN\_SHIFT\_CHANGE\_REQUEST**

Tool to retrieve a specific open shift change request from a Microsoft Teams team's schedule. Use when you need to get details about a particular open shift request including its state, sender, and manager actions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type   | Required | Example                                       | Description                                                                                                                                                                                        |
| ------------------------------ | ------ | :------: | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`                       | string |          | `"*"`                                         | Expand related entities to include additional data in the response.                                                                                                                                |
| `select`                       | string |          | `"id,state,openShiftId"`                      | Select specific properties to be returned (comma-separated, e.g., 'id,state,openShiftId').                                                                                                         |
| `team_id`                      | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                                  |
| `open_shift_change_request_id` | string |     ✅    | `"SREQ_ba70828a-6add-43f6-9fc6-57eaddcfd0ef"` | Unique identifier of the openShiftChangeRequest to retrieve. This is the ID of the open shift change request resource in the team's schedule (e.g., 'SREQ\_ba70828a-6add-43f6-9fc6-57eaddcfd0ef'). |

***

### `Microsoft Teams Get Presence`

Integration name: **MICROSOFT\_TEAMS\_GET\_PRESENCE**

Tool to get a specific user's presence information. Use when checking availability status, activity, or work location for a particular user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | string |          | `"statusMessage"`                        | Comma-separated list of relationships to expand inline (e.g., 'statusMessage'). If unspecified, no relationships are expanded.                       |
| `select`  | string |          | `"availability,activity"`                | Comma-separated OData property names to include in the response (e.g., 'availability,activity'). If unspecified, all properties are returned.        |
| `user_id` | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier (GUID) or user principal name (UPN) of the user whose presence to retrieve. Use 'me' to get the authenticated user's presence. |

***

### `Microsoft Teams Get Primary Channel`

Integration name: **MICROSOFT\_TEAMS\_GET\_PRIMARY\_CHANNEL**

Tool to get the default (General) channel of a team. Use when you need to access the primary channel without knowing its channel ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                              |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | string |          | `"members"`                              | Comma-separated list of relationships to expand inline (e.g., 'members', 'tabs'). Note: Expanding some relationships may require additional permissions. |
| `select`  | string |          | `"id,displayName,description"`           | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Empty returns all default properties.                |
| `team_id` | string |     ✅    | `"02bd9fd6-8f93-4758-87c3-1fb73740a315"` | The unique identifier of the Microsoft Teams team. Must be a valid GUID (e.g., '02bd9fd6-8f93-4758-87c3-1fb73740a315').                                  |

***

### `Microsoft Teams Get Schedule`

Integration name: **MICROSOFT\_TEAMS\_GET\_SCHEDULE**

Tool to retrieve the properties and relationships of a schedule object. Use when you need to get schedule configuration details for a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                    |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | string |          | `"shifts"`                               | Comma-separated list of related entities to expand inline (e.g., 'shifts', 'timesOff'). Leave empty to get only the schedule properties without relationships. |
| `select`  | string |          | `"id,enabled,timeZone"`                  | Comma-separated list of properties to include in the response (e.g., 'id,enabled,timeZone'). Leave empty to get all properties.                                |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team (GUID format). This is the team whose schedule you want to retrieve.                                                         |

***

### `Microsoft Teams Get Scheduling Group`

Integration name: **MICROSOFT\_TEAMS\_GET\_SCHEDULING\_GROUP**

Tool to retrieve a specific scheduling group from a Microsoft Teams team's schedule. Use when you need to get details about a scheduling group including its members, status, and metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                      | Description                                                                                                                                      |
| -------------------- | ------ | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `expand`             | string |          | `"*"`                                        | Expand related entities to include additional data in the response.                                                                              |
| `select`             | string |          | `"id,displayName,userIds"`                   | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,userIds').                                                     |
| `team_id`            | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                     |
| `schedulinggroup_id` | string |     ✅    | `"TAG_f914d037-00a3-4ba4-b712-ef178cbea263"` | Unique identifier of the scheduling group to retrieve. This can be a GUID or a tag-based ID (e.g., 'TAG\_f914d037-00a3-4ba4-b712-ef178cbea263'). |

***

### `Microsoft Teams Get Shift`

Integration name: **MICROSOFT\_TEAMS\_GET\_SHIFT**

Tool to retrieve a shift by ID from a Microsoft Teams team schedule. Use when you need to get details of a specific shift assignment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                       | Description                                                                                                                                                      |
| ---------- | ------ | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`   | string |          | `"activities"`                                | Comma-separated list of relationships to expand inline in the response.                                                                                          |
| `select`   | string |          | `"id,userId,sharedShift"`                     | Comma-separated list of properties to include in the response (e.g., 'id,userId,sharedShift'). Use to optimize performance by requesting only needed properties. |
| `team_id`  | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier of the team (GUID format).                                                                                                                 |
| `shift_id` | string |     ✅    | `"SHFT_ce18c3e5-5cd0-4513-90a8-b828635d78f8"` | The unique identifier of the shift to retrieve.                                                                                                                  |

***

### `Microsoft Teams Get Swap Shifts Change Request`

Integration name: **MICROSOFT\_TEAMS\_GET\_SWAP\_SHIFTS\_CHANGE\_REQUEST**

Tool to get a specific swap shift change request from a Microsoft Teams schedule. Use when you need to retrieve details of a single swap shift change request by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                       | Type   | Required | Example                                       | Description                                                                                                                                           |
| ------------------------------- | ------ | :------: | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`                        | string |          | —                                             | Expand related entities to include additional data in the response.                                                                                   |
| `select`                        | string |          | `"id,state,recipientActionDateTime"`          | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime').                                                |
| `team_id`                       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                     |
| `swap_shifts_change_request_id` | string |     ✅    | `"SREQ_99721bb2-ec50-4615-ac20-d22c3710f762"` | Unique identifier of the swap shift change request to retrieve. Must start with 'SREQ\_' prefix (e.g., 'SREQ\_99721bb2-ec50-4615-ac20-d22c3710f762'). |

***

### `Microsoft Teams Get Tab`

Integration name: **MICROSOFT\_TEAMS\_GET\_TAB**

Tool to get a specific tab in a Microsoft Teams channel. Use when you need to retrieve details of a particular tab.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                                                                         |
| ------------ | ------ | :------: | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | string |          | `"teamsApp"`                                         | Expand related entities. Comma-separated list of relationships to include inline in the response. Use 'teamsApp' to include full Teams app details. |
| `select`     | string |          | `"id,displayName,webUrl"`                            | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,webUrl').                                           |
| `tab_id`     | string |     ✅    | `"3ed5b337-c2c9-4d5d-b7b4-84ff09a8fc1c"`             | The unique identifier of the tab to retrieve.                                                                                                       |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier of the team. Must be a valid GUID format.                                                                                     |
| `channel_id` | string |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"` | The unique identifier of the channel. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or plain format.            |

***

### `Microsoft Teams Get Team From Group`

Integration name: **MICROSOFT\_TEAMS\_GET\_TEAM\_FROM\_GROUP**

Tool to get a specific team. Use when full details of one team by ID are needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                                  |
| ---------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`   | string |          | `"channels"`                             | OData $expand query parameter to include related resources inline. Comma-separated list of relationships (e.g., 'channels', 'members', 'operations'). Note: Expanding some relationships may require additional permissions. |
| `select`   | string |          | `"id,displayName,description"`           | OData $select query parameter to specify which properties to include in the response. Comma-separated list of property names (e.g., 'id,displayName,description').                                                           |
| `group_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | GUID of the Microsoft 365 group that has an associated team.                                                                                                                                                                 |

***

### `Microsoft Teams Get Team Member`

Integration name: **MICROSOFT\_TEAMS\_GET\_TEAM\_MEMBER**

Tool to get a specific conversation member from a team. Use when retrieving details about a team member by their membership ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                                                                                              | Description                                                       |
| --------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                                                                                                                             | The unique identifier of the team.                                |
| `membership_id` | string |     ✅    | `"MCMjMSMjYTZhNTVjNWYtMDc0Ny00ODA0LWExNjYtMmI1ZGZjOWFjZTJhIyM4N2IwNTYwZi1mYzBkLTQ0NDItYWRkOC1iMzgwY2E5MjY3MDcjIzQzZjBjMTRkLWJjYTgtNDIxZi1iNzYyLWMzZDhkZDc1YmUxZg=="` | The unique identifier of the conversation member (membership ID). |

***

### `Microsoft Teams Get Team Operation`

Integration name: **MICROSOFT\_TEAMS\_GET\_TEAM\_OPERATION**

Tool to retrieve the status of a Teams async operation using teamId and operationId. Use when you need to poll and track the progress of long-running operations like team creation or archiving. Microsoft recommends waiting at least 30 seconds between polling requests.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                  | Description                                                                                                          |
| -------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `team_id`      | string |     ✅    | `"dbd8de4f-5d47-48da-87f1-594bed003375"` | The unique identifier of the team associated with the operation.                                                     |
| `operation_id` | string |     ✅    | `"3a6fdce1-c261-48bc-89de-1cfef658c0d5"` | The unique identifier of the teamsAsyncOperation. Obtained from the Location header of the async operation response. |

***

### `Microsoft Teams Get Teams App Definition`

Integration name: **MICROSOFT\_TEAMS\_GET\_TEAMS\_APP\_DEFINITION**

Tool to get an installed app in a Microsoft Teams team. Use when you need to retrieve details of a specific app installation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                  | Description                                                                                                                       |
| --------------------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `expand`              | string |          | `"teamsAppDefinition"`                   | Expand related entities to include additional data in the response. Supports 'teamsApp', 'teamsAppDefinition'.                    |
| `select`              | string |          | `"id,consentedPermissionSet"`            | Select specific properties to be returned (comma-separated, e.g., 'id,consentedPermissionSet').                                   |
| `team_id`             | string |     ✅    | `"12345678-1234-1234-1234-123456789abc"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '12345678-1234-1234-1234-123456789abc'). |
| `app_installation_id` | string |     ✅    | `"base64-encoded-app-installation-id"`   | Unique identifier of the app installation. This is a base64-encoded string returned by Microsoft Graph API.                       |

***

### `Microsoft Teams Get Team Template`

Integration name: **MICROSOFT\_TEAMS\_GET\_TEAM\_TEMPLATE**

DEPRECATED: Use MICROSOFT\_TEAMS\_GET\_TEAM\_FROM\_GROUP with expand="template" instead. Tool to get the template used to create a team. Use when you need to retrieve the template information for a specific team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                     |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team. Must be a valid GUID format. |

***

### `Microsoft Teams Get Time Off`

Integration name: **MICROSOFT\_TEAMS\_GET\_TIME\_OFF**

Tool to retrieve a specific time off entry from a Microsoft Teams team's schedule by ID. Use when you need to get details about a particular time off period including its dates, reason, and status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                       | Description                                                                                                                                                             |
| ------------ | ------ | :------: | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`     | string |          | `"*"`                                         | Expand related entities to include additional data in the response.                                                                                                     |
| `select`     | string |          | `"id,userId,sharedTimeOff"`                   | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedTimeOff').                                                                           |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                            |
| `timeoff_id` | string |     ✅    | `"SHFT_d3b1de89-60b8-4e61-81b7-c55ab222c1ab"` | Unique identifier of the timeOff entry to retrieve. This is the ID of the timeOff resource in the team's schedule (e.g., 'SHFT\_d3b1de89-60b8-4e61-81b7-c55ab222c1ab'). |

***

### `Microsoft Teams Get Time Off Reason`

Integration name: **MICROSOFT\_TEAMS\_GET\_TIME\_OFF\_REASON**

Tool to get a specific time off reason from a team's schedule. Use when you need to retrieve details about a time off reason including its display name, icon type, and active status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                      | Description                                                                                                                                                                   |
| -------------------- | ------ | :------: | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`            | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                  |
| `time_off_reason_id` | string |     ✅    | `"TOR_891045ca-b5d2-406b-aa06-a3c8921245d7"` | Unique identifier of the time off reason to retrieve. This is the ID of the timeOffReason resource in the team's schedule (typically starts with 'TOR\_' followed by a GUID). |

***

### `Microsoft Teams Get Time Off Request`

Integration name: **MICROSOFT\_TEAMS\_GET\_TIME\_OFF\_REQUEST**

Tool to retrieve a specific time off request from a team's schedule. Use when you need to check the status or details of a time off request.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                       | Description                                                                                                                  |
| --------------------- | ------ | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `team_id`             | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `time_off_request_id` | string |     ✅    | `"SREQ_0782ff6b-0252-434f-86f3-6bd2d70cd5ae"` | The unique identifier of the time off request to retrieve. Format typically starts with 'SREQ\_' followed by a GUID.         |

***

### `Microsoft Teams Get User Chat`

Integration name: **MICROSOFT\_TEAMS\_GET\_USER\_CHAT**

Tool to retrieve a specific chat for a user. Use when you need to get details about a chat that a specific user is part of.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                                                                                |
| --------- | ------ | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `expand`  | array  |          | `["members"]`                                     | Expand related entities. Supported values: 'members' (includes all chat members), 'lastMessagePreview' (includes preview of the last message).                                             |
| `select`  | array  |          | `["id","topic","chatType"]`                       | Select properties to be returned. Specify which properties to include in the response to optimize the query.                                                                               |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat to retrieve. This is the chat's ID in the format '19:abc123def456\@thread.v2' for group chats or '19:<user1_user2@unq.gbl.spaces>' for one-on-one chats. |
| `user_id` | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`          | The unique identifier of the user. Can be the user's UPN (user principal name) or the user's object ID (GUID).                                                                             |

***

### `Microsoft Teams Get User Teamwork`

Integration name: **MICROSOFT\_TEAMS\_GET\_USER\_TEAMWORK**

Tool to get userTeamwork settings for a specified user, including Microsoft Teams region and locale. Use when you need to determine user's Teams configuration or regional settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                                                                                                                           |
| --------- | ------ | :------: | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | string |          | `"installedApps"`    | Comma-separated list of relationships to expand inline. Maps to the $expand query parameter.                                                          |
| `select`  | string |          | `"id,locale,region"` | Comma-separated list of properties to include in the response. Maps to the $select query parameter.                                                   |
| `user_id` | string |     ✅    | `"me"`               | The unique identifier of the user. Can be the user's GUID or user principal name (UPN). Use 'me' to query the authenticated user's teamwork settings. |

***

### `Microsoft Teams Hide Chat For User`

Integration name: **MICROSOFT\_TEAMS\_HIDE\_CHAT\_FOR\_USER**

Tool to hide a Microsoft Teams chat for a specific user. Use when you need to hide a chat from a user's chat list. Note: The chat is automatically unhidden if an action such as sending a message is taken at the chat level.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                         | Description                                                                                                       |
| --------- | ------ | :------: | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `user`    | object |     ✅    | —                                                                                               | User identity containing the user ID and tenant ID. In delegated mode, users can only hide a chat for themselves. |
| `chat_id` | string |     ✅    | `"19:7d898072-792c-4006-bb10-5ca9f2590649_8ea0e38b-efb3-4757-924a-5f94061cf8c2@unq.gbl.spaces"` | The unique identifier of the chat to hide.                                                                        |

***

### `Microsoft Teams List Associated Teams`

Integration name: **MICROSOFT\_TEAMS\_LIST\_ASSOCIATED\_TEAMS**

Tool to list teams that a user is associated with in Microsoft Teams. Use when you need to get teams where a user is either a direct member or a member of a shared channel hosted in the team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                      |
| --------- | ------ | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |     ✅    | `"me"`  | User ID or user principal name (UPN) to query associated teams for. Use 'me' to query the authenticated user's associated teams. |

***

### `Microsoft Teams List Channel Tabs`

Integration name: **MICROSOFT\_TEAMS\_LIST\_CHANNEL\_TABS**

Tool to list tabs from a Microsoft Teams channel. Use when you need to retrieve all tabs configured in a specific channel. Note: The Files tab (native to channels) is not returned by this API.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                  | Description                                                                                                                                         |
| ------------ | ------- | :------: | -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `50`                                                     | Show only the first n items. Use to limit the number of tabs returned in the response.                                                              |
| `skip`       | integer |          | —                                                        | Skip the first n items. Use with 'top' for pagination to retrieve subsequent pages of tabs.                                                         |
| `count`      | boolean |          | —                                                        | Include count of items in the response. When true, adds @odata.count with total number of tabs.                                                     |
| `expand`     | string  |          | `"teamsApp"`                                             | Expand related entities. Comma-separated list of relationships to include inline in the response. Use 'teamsApp' to include full Teams app details. |
| `filter`     | string  |          | `"teamsApp/id eq 'com.microsoft.teamspace.tab.planner'"` | Filter items by property values. Use OData filter syntax (e.g., 'teamsApp/id eq "com.microsoft.teamspace.tab.planner"').                            |
| `search`     | string  |          | —                                                        | Search items by search phrases. Use OData search syntax to find tabs matching search criteria.                                                      |
| `select`     | string  |          | `"id,displayName,webUrl"`                                | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,webUrl').                                           |
| `orderby`    | string  |          | `"displayName asc"`                                      | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc' (e.g., 'displayName asc').                         |
| `team_id`    | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                 | The unique identifier (GUID) of the team. This is the team ID that contains the channel.                                                            |
| `channel_id` | string  |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"`     | The unique identifier of the channel. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or plain format.            |

***

### `Microsoft Teams List Chat`

Integration name: **MICROSOFT\_TEAMS\_LIST\_CHAT**

DEPRECATED: Use MICROSOFT\_TEAMS\_CHATS\_GET\_ALL\_CHATS instead. Tool to list chats that the user is part of. Use when retrieving the list of chats for a user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                     | Description                                                                                                                                                                                    |
| --------- | ------- | :------: | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                        | Show only the first n items. Maximum allowed value is 50.                                                                                                                                      |
| `skip`    | integer |          | `0`                                         | Skip the first n items                                                                                                                                                                         |
| `count`   | boolean |          | `true`                                      | Include count of items in the response                                                                                                                                                         |
| `expand`  | array   |          | `["members"]`                               | Expand related entities. Currently supports 'members' and 'lastMessagePreview'.                                                                                                                |
| `filter`  | string  |          | `"chatType eq 'group'"`                     | Filter items by property values (do not include '$filter='). Supports filtering by chatType, installedApps. Example: "chatType eq 'group'" or "installedApps/any(a:a/teamsApp/id eq 'app-id')" |
| `search`  | string  |          | `"project"`                                 | Search items by search phrases                                                                                                                                                                 |
| `select`  | array   |          | `["id","topic","chatType"]`                 | Select properties to be returned. If omitted, default properties are returned.                                                                                                                 |
| `orderby` | string  |          | `"lastMessagePreview/createdDateTime desc"` | Order items by property values. Currently supports 'lastMessagePreview/createdDateTime desc' in descending order. Ascending order is not supported.                                            |
| `user_id` | string  |          | `"me"`                                      | The user ID for whom to list chats. For delegated auth, use 'me' or a specific user ID. For application-only auth (S2S), you MUST provide a specific user ID (GUID format). Default is 'me'.   |

***

### `Microsoft Teams List Chat Members`

Integration name: **MICROSOFT\_TEAMS\_LIST\_CHAT\_MEMBERS**

DEPRECATED: Use MICROSOFT\_TEAMS\_USERS\_CHATS\_LIST\_MEMBERS instead. Tool to list members of a Microsoft Teams chat. Use when you need to retrieve the members of a specific one-on-one chat, group chat, or meeting chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                         | Description                                                                                           |
| --------- | ------ | :------: | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `chat_id` | string |     ✅    | `"19:09ddc990-3821-4ceb-8019-24d39998f93e_48d31887-5fad-4d73-a9f5-3c356e68a038@unq.gbl.spaces"` | GUID of the Microsoft Teams chat to retrieve members from. This is the chat ID returned by Graph API. |

***

### `Microsoft Teams List Communications Calls Operations`

Integration name: **MICROSOFT\_TEAMS\_LIST\_COMMUNICATIONS\_CALLS\_OPERATIONS**

Tool to list operations on a Microsoft Teams call. Use when you need to retrieve the status of long-running operations like adding large gallery views, recording, or playing prompts on an active call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                          |
| --------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Maximum number of operations to return in a single response. Default is 50 if not specified.                         |
| `skip`    | integer |          | `0`                                      | Number of operations to skip before returning results. Used for pagination.                                          |
| `count`   | boolean |          | —                                        | Include count of total items in the response. When true, adds @odata.count to response.                              |
| `expand`  | string  |          | —                                        | Expand related entities inline. Comma-separated list of relationships to expand.                                     |
| `filter`  | string  |          | `"status eq 'completed'"`                | Filter items by property values using OData filter syntax. Example: "status eq 'completed'".                         |
| `search`  | string  |          | —                                        | Search items by search phrases. Filters operations based on matching text.                                           |
| `select`  | string  |          | `"id,status,clientContext"`              | Select specific properties to include in response. Comma-separated list of property names. Example: 'id,status'.     |
| `call_id` | string  |     ✅    | `"57dab8b1-894c-409a-b240-bd8beae78896"` | The unique identifier of the call.                                                                                   |
| `orderby` | string  |          | `"id asc"`                               | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc'. Example: 'id asc'. |

***

### `Microsoft Teams List Deleted Teams`

Integration name: **MICROSOFT\_TEAMS\_LIST\_DELETED\_TEAMS**

Tool to list deleted Microsoft Teams and their properties. Use when you need to retrieve a list of teams that have been deleted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                                 |
| --------- | ------- | :------: | ------- | --------------------------------------------------------------------------- |
| `top`     | integer |          | `50`    | Show only the first n items. Maximum value is 999.                          |
| `skip`    | integer |          | —       | Skip the first n items for pagination.                                      |
| `count`   | boolean |          | —       | Include count of items in the response.                                     |
| `expand`  | string  |          | —       | Expand related entities to include additional data in the response.         |
| `filter`  | string  |          | —       | Filter items by property values using OData query syntax.                   |
| `search`  | string  |          | —       | Search items by search phrases. Use this to find deleted teams by keywords. |
| `select`  | string  |          | `"id"`  | Select specific properties to be returned (comma-separated, e.g., 'id').    |
| `orderby` | string  |          | `"id"`  | Order items by property values (e.g., 'id' or 'id desc').                   |

***

### `Microsoft Teams List Group Team Channels`

Integration name: **MICROSOFT\_TEAMS\_LIST\_GROUP\_TEAM\_CHANNELS**

DEPRECATED: Use MICROSOFT\_TEAMS\_LIST\_CHANNELS instead. Tool to list channels from a group's associated team. Use when you have a group ID and need to retrieve its team's channels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                  | Description                                                                                                                                |
| ---------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `top`      | integer |          | `50`                                     | Show only the first n items. Use to limit the number of channels returned in the response.                                                 |
| `skip`     | integer |          | —                                        | Skip the first n items. Use with 'top' for pagination to retrieve subsequent pages of channels.                                            |
| `count`    | boolean |          | —                                        | Include count of items in the response. When true, adds @odata.count with total number of channels.                                        |
| `expand`   | string  |          | `"members"`                              | Expand related entities. Comma-separated list of relationships to include inline in the response.                                          |
| `filter`   | string  |          | `"membershipType eq 'standard'"`         | Filter items by property values. Use OData filter syntax (e.g., 'membershipType eq 'standard'').                                           |
| `search`   | string  |          | —                                        | Search items by search phrases. Use OData search syntax to find channels matching search criteria.                                         |
| `select`   | string  |          | `"id,displayName,description"`           | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,description').                             |
| `orderby`  | string  |          | `"displayName asc"`                      | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc' (e.g., 'displayName asc').                |
| `group_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier (GUID) of the group. This is the group ID, not the team ID. Use this to list channels for a group's associated team. |

***

### `Microsoft Teams List Group Team Operations`

Integration name: **MICROSOFT\_TEAMS\_LIST\_GROUP\_TEAM\_OPERATIONS**

Tool to list operations on a group's team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific group's team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                 |
| ---------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `group_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the group. This is the group ID (GUID) whose team operations you want to retrieve. |

***

### `Microsoft Teams List Incoming Channels`

Integration name: **MICROSOFT\_TEAMS\_LIST\_INCOMING\_CHANNELS**

Tool to list incoming channels shared with a Microsoft Teams team. Use when you need to view channels from other teams that have been shared with this team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                      |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `filter`  | string |          | `"membershipType eq 'shared'"`           | Filter items by property values using OData query syntax (e.g., 'membershipType eq "shared"' or 'startswith(displayName, "Sales")'). This is one of only two query parameters officially supported by the Microsoft Graph API for this endpoint. |
| `select`  | string |          | `"id,displayName,description"`           | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,description'). This is one of only two query parameters officially supported by the Microsoft Graph API for this endpoint.                                     |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). Use MICROSOFT\_TEAMS\_LIST\_USER\_JOINED\_TEAMS to get team IDs.                                               |

***

### `Microsoft Teams List Installed Apps`

Integration name: **MICROSOFT\_TEAMS\_LIST\_INSTALLED\_APPS**

Tool to list apps installed in a Microsoft Teams team. Use when you need to retrieve the collection of apps installed in a specific team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                                           | Description                                                                                                                             |
| ---------- | ------- | :------: | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `top`      | integer |          | `50`                                                              | Show only the first n items. Maximum value is 999.                                                                                      |
| `skip`     | integer |          | —                                                                 | Skip the first n items for pagination.                                                                                                  |
| `count`    | boolean |          | —                                                                 | Include count of items in the response.                                                                                                 |
| `expand`   | string  |          | `"teamsAppDefinition"`                                            | Expand related entities to include additional data in the response. Supports 'teamsApp', 'teamsAppDefinition'.                          |
| `filter`   | string  |          | `"teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'"` | Filter items by property values using OData query syntax (e.g., 'teamsApp/externalId eq 'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee'').       |
| `search`   | string  |          | —                                                                 | Search items by search phrases. Use this to find apps by keywords in their name or description.                                         |
| `select`   | string  |          | `"id,consentedPermissionSet"`                                     | Select specific properties to be returned (comma-separated, e.g., 'id,consentedPermissionSet').                                         |
| `orderby`  | string  |          | `"displayName"`                                                   | Order items by property values (e.g., 'displayName' or 'displayName desc').                                                             |
| `group_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                          | Unique identifier (GUID/UUID) of the Microsoft Teams group/team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List Message Replies`

Integration name: **MICROSOFT\_TEAMS\_LIST\_MESSAGE\_REPLIES**

Tool to list all replies to a specific message in a Microsoft Teams channel. Use when you need to retrieve the conversation thread for a particular message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                              | Description                                                                                                                  |
| ------------ | ------- | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `50`                                                 | Show only the first n items. Useful for pagination and limiting result size.                                                 |
| `skip`       | integer |          | —                                                    | Skip the first n items. Used for pagination to retrieve items beyond the initial set.                                        |
| `count`      | boolean |          | —                                                    | Include count of items in the response. When true, adds a total count of matching replies.                                   |
| `expand`     | string  |          | `"replies"`                                          | Expand related entities to include additional data.                                                                          |
| `filter`     | string  |          | —                                                    | Filter items by property values using OData syntax. Example: "messageType eq 'message'" or "from/user/displayName eq 'John'" |
| `search`     | string  |          | —                                                    | Search items by search phrases. Use this to find replies containing specific keywords or phrases.                            |
| `select`     | string  |          | `"id,body,from,createdDateTime"`                     | Select specific properties to be returned (comma-separated). Example: 'id,body,from,createdDateTime'                         |
| `orderby`    | string  |          | `"createdDateTime desc"`                             | Order items by property values. Example: 'createdDateTime desc' or 'lastModifiedDateTime'                                    |
| `team_id`    | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | Unique identifier (GUID) of the Microsoft Teams team.                                                                        |
| `channel_id` | string  |     ✅    | `"19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2"` | Unique identifier of the channel within the team.                                                                            |
| `message_id` | string  |     ✅    | `"1768309336891"`                                    | Unique identifier of the parent message for which to retrieve replies.                                                       |

***

### `Microsoft Teams List Offer Shift Requests`

Integration name: **MICROSOFT\_TEAMS\_LIST\_OFFER\_SHIFT\_REQUESTS**

Tool to list offer shift requests in a Microsoft Teams schedule. Use when you need to retrieve all offer shift requests for a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Show only the first n items. Maximum value is 999.                                                                                |
| `skip`    | integer |          | —                                        | Skip the first n items for pagination.                                                                                            |
| `count`   | boolean |          | —                                        | Include count of items in the response.                                                                                           |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                                                               |
| `filter`  | string  |          | `"state eq 'approved'"`                  | Filter items by property values using OData query syntax (e.g., 'state eq "approved"').                                           |
| `search`  | string  |          | —                                        | Search items by search phrases. Use this to find offer shift requests by keywords.                                                |
| `select`  | string  |          | `"id,state,recipientActionDateTime"`     | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime').                            |
| `orderby` | string  |          | `"createdDateTime"`                      | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc').                                               |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List Online Meetings`

Integration name: **MICROSOFT\_TEAMS\_LIST\_ONLINE\_MEETINGS**

Look up a Microsoft Teams online meeting for a user by identifier. This is effectively a 'lookup-by-identifier' endpoint, NOT a general-purpose list or search. Microsoft Graph REQUIRES an OData $filter predicate on /me/onlineMeetings and /users/{user\_id}/onlineMeetings; without it the API returns HTTP 400 'Filter expression expected'. The only supported filter properties on this endpoint are JoinWebUrl and joinMeetingIdSettings/joinMeetingId (e.g. "JoinWebUrl eq '<https://teams.microsoft.com/l/meetup-join/>...'" or "joinMeetingIdSettings/joinMeetingId eq '1234567890'"). subject and VideoTeleconferenceId are NOT supported here. If you already know the meeting id, prefer MICROSOFT\_TEAMS\_USERS\_GET\_ONLINE\_MEETING. There is no Graph API for free-text searching a user's meetings by title.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| --------- | ------- | :------: | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                                                         | Show only the first n items. Maximum value is 50.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `skip`    | integer |          | —                                                                                            | Skip the first n items for pagination.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `count`   | boolean |          | —                                                                                            | Include count of items in the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `expand`  | string  |          | —                                                                                            | Expand related entities to include additional data in the response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `filter`  | string  |     ✅    | `"JoinWebUrl eq 'https://teams.microsoft.com/l/meetup-join/19%3ameeting_xxx%40thread.v2/0'"` | REQUIRED OData $filter predicate. This endpoint is a lookup-by-identifier, NOT a general-purpose search/list — Microsoft Graph returns HTTP 400 'Filter expression expected' without it. The ONLY two supported filter properties are: - JoinWebUrl — e.g. "JoinWebUrl eq '<https://teams.microsoft.com/l/meetup-join/19%3ameeting\\_xxx%40thread.v2/0>'" - joinMeetingIdSettings/joinMeetingId — e.g. "joinMeetingIdSettings/joinMeetingId eq '1234567890'" WRONG (all return HTTP 400): - 'REUNION SICAL' (bare string, not an OData predicate) - subject eq '...' (subject is NOT filterable here) - VideoTeleconferenceId eq '...' (only on /communications/onlineMeetings/) If you already know the meeting id, prefer MICROSOFT\_TEAMS\_USERS\_GET\_ONLINE\_MEETING. |
| `search`  | string  |          | —                                                                                            | Search items by search phrases. Use this to find online meetings by keywords.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `select`  | string  |          | `"id,subject,joinWebUrl"`                                                                    | Select specific properties to be returned (comma-separated, e.g., 'id,subject,joinWebUrl').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `orderby` | string  |          | `"creationDateTime"`                                                                         | Order items by property values (e.g., 'creationDateTime' or 'creationDateTime desc').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `user_id` | string  |          | `"john.doe@contoso.com"`                                                                     | User ID or user principal name (UPN) to query online meetings for. With delegated (OAuth2) auth, omit or use 'me' for the signed-in user. With application (S2S/client\_credentials) auth, you MUST provide a specific user ID or UPN — 'me' does not work without a signed-in user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `Microsoft Teams List Open Shift Change Requests`

Integration name: **MICROSOFT\_TEAMS\_LIST\_OPEN\_SHIFT\_CHANGE\_REQUESTS**

Tool to list open shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all open shift requests for a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Show only the first n items. Maximum value is 999.                                                                                |
| `skip`    | integer |          | —                                        | Skip the first n items for pagination.                                                                                            |
| `count`   | boolean |          | —                                        | Include count of items in the response.                                                                                           |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                                                               |
| `filter`  | string  |          | `"state eq 'approved'"`                  | Filter items by property values using OData query syntax (e.g., 'state eq "approved"').                                           |
| `search`  | string  |          | —                                        | Search items by search phrases. Use this to find open shift requests by keywords.                                                 |
| `select`  | string  |          | `"id,state,openShiftId"`                 | Select specific properties to be returned (comma-separated, e.g., 'id,state,openShiftId').                                        |
| `orderby` | string  |          | `"createdDateTime"`                      | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc').                                               |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List Open Shifts`

Integration name: **MICROSOFT\_TEAMS\_LIST\_OPEN\_SHIFTS**

Tool to list open shifts in a Microsoft Teams schedule. Use when you need to retrieve all unassigned open shifts for a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Show only the first n items. Maximum value is 999.                                                                                |
| `skip`    | integer |          | —                                        | Skip the first n items for pagination.                                                                                            |
| `count`   | boolean |          | —                                        | Include count of items in the response.                                                                                           |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                                                               |
| `filter`  | string  |          | `"schedulingGroupId eq 'TAG_123'"`       | Filter items by property values using OData query syntax (e.g., 'schedulingGroupId eq "TAG\_123"').                               |
| `search`  | string  |          | —                                        | Search items by search phrases. Use this to find open shifts by keywords.                                                         |
| `select`  | string  |          | `"id,schedulingGroupId,sharedOpenShift"` | Select specific properties to be returned (comma-separated, e.g., 'id,schedulingGroupId,sharedOpenShift').                        |
| `orderby` | string  |          | `"createdDateTime"`                      | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc').                                               |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List People`

Integration name: **MICROSOFT\_TEAMS\_LIST\_PEOPLE**

Retrieves a list of people relevant to a specified user from Microsoft Graph, noting the `search` parameter is only effective if `user_id` is 'me'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------- | ------- | :------: | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `"10"`                          | Maximum number of items per page for pagination. Actual count may be less. Service default if unspecified.                                                                                                                                                                                                                                                                                                                               |
| `skip`    | integer |          | `"0"`                           | Number of items to skip for pagination.                                                                                                                                                                                                                                                                                                                                                                                                  |
| `filter`  | string  |          | `"displayName eq 'John Smith'"` | OData $filter query using equality comparisons only. The People API has limited $filter support: only 'eq' operator and 'and' logical operator are supported. OData functions like startsWith, endsWith, and contains are NOT supported and will result in API errors. Supported filterable properties include: displayName, personType/class, personType/subclass. For partial/fuzzy name searches, use the 'search' parameter instead. |
| `search`  | string  |          | `"John Doe"`                    | Fuzzy search query (name, email, or topic like 'topic:marketing'). Effective only when `user_id` is 'me'.                                                                                                                                                                                                                                                                                                                                |
| `select`  | string  |          | `"id,displayName"`              | Comma-separated OData property names to include for each person (e.g., 'id,displayName'). If unspecified, a default set is returned. Note: 'emailAddresses' is not a valid property for microsoft.graph.person; use 'scoredEmailAddresses' instead.                                                                                                                                                                                      |
| `orderby` | string  |          | `"displayName asc"`             | OData $orderby expression to sort results (e.g., 'displayName asc'). The People API has limited $orderby support; primarily 'displayName' is supported. Results are already sorted by relevance by default when using $search.                                                                                                                                                                                                           |
| `user_id` | string  |          | `"me"`                          | Identifier of the user (e.g., 'me', '<adelev@contoso.com>', or GUID) whose relevant people are to be retrieved.                                                                                                                                                                                                                                                                                                                          |

***

### `Microsoft Teams List Pinned Messages`

Integration name: **MICROSOFT\_TEAMS\_LIST\_PINNED\_MESSAGES**

Tool to retrieve the list of pinned messages in a Microsoft Teams chat. Use when you need to get all messages that have been pinned in a specific chat conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                               |
| --------- | ------ | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `expand`  | array  |          | `["message"]`                                     | Expand related entities to include additional details. Use 'message' to retrieve the full message content along with pinned message info. |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | Unique identifier of the Microsoft Teams chat. Use the Get All Chats action to retrieve valid chat IDs.                                   |

***

### `Microsoft Teams List Schedule Day Notes`

Integration name: **MICROSOFT\_TEAMS\_LIST\_SCHEDULE\_DAY\_NOTES**

Tool to list all dayNotes from a team's schedule. Use when you need to retrieve all day notes or search/filter notes for specific dates in a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                              |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------- |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team. Must be a valid GUID. |

***

### `Microsoft Teams List Scheduling Groups`

Integration name: **MICROSOFT\_TEAMS\_LIST\_SCHEDULING\_GROUPS**

Tool to list scheduling groups in a team's schedule. Use when you need to retrieve all scheduling groups for shift management and organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                             |
| --------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Show only the first n items. Limits the number of scheduling groups returned in a single response.                                                      |
| `skip`    | integer |          | `0`                                      | Skip the first n items. Used for pagination to skip over already-retrieved results.                                                                     |
| `count`   | boolean |          | `true`                                   | Include count of items in the response. When true, the response includes @odata.count with total number of scheduling groups.                           |
| `expand`  | string  |          | `"*"`                                    | Expand related entities. Comma-separated list of navigation properties to expand and include in the response.                                           |
| `filter`  | string  |          | `"isActive eq true"`                     | Filter items by property values using OData filter syntax. Example: "isActive eq true" to get only active groups.                                       |
| `search`  | string  |          | `"Morning"`                              | Search items by search phrases. Searches across scheduling group properties like displayName.                                                           |
| `select`  | string  |          | `"id,displayName,isActive"`              | Select properties to be returned. Comma-separated list of property names to include in the response.                                                    |
| `orderby` | string  |          | `"displayName asc"`                      | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc'. Example: 'displayName asc' or 'createdDateTime desc'. |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier (GUID) of the team. Required to identify which team's scheduling groups to retrieve.                                              |

***

### `Microsoft Teams List Shifts`

Integration name: **MICROSOFT\_TEAMS\_LIST\_SHIFTS**

Tool to list shifts in a Microsoft Teams schedule. Use when you need to retrieve all shifts for a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                              | Description                                                                                                                                                                                                                                             |
| --------- | ------- | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                 | Show only the first n items. Maximum value is 999.                                                                                                                                                                                                      |
| `skip`    | integer |          | —                                                    | Skip the first n items for pagination.                                                                                                                                                                                                                  |
| `count`   | boolean |          | —                                                    | Include count of items in the response.                                                                                                                                                                                                                 |
| `expand`  | string  |          | —                                                    | Expand related entities to include additional data in the response.                                                                                                                                                                                     |
| `filter`  | string  |          | `"userId eq '5ca83ce7-291d-43b7-bf53-af79eef4bc1d'"` | Filter items by property values using OData query syntax (e.g., 'userId eq "5ca83ce7-291d-43b7-bf53-af79eef4bc1d"' or 'schedulingGroupId eq "TAG\_123"'). Note: The filter parameter doesn't support using the same property more than once in a query. |
| `search`  | string  |          | —                                                    | Search items by search phrases. Use this to find shifts by keywords.                                                                                                                                                                                    |
| `select`  | string  |          | `"id,userId,sharedShift"`                            | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedShift').                                                                                                                                                             |
| `orderby` | string  |          | `"createdDateTime"`                                  | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc').                                                                                                                                                                     |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                                                                                       |

***

### `Microsoft Teams List Swap Shifts Change Requests`

Integration name: **MICROSOFT\_TEAMS\_LIST\_SWAP\_SHIFTS\_CHANGE\_REQUESTS**

Tool to list swap shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all swap shift requests for a team's schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Show only the first n items. Maximum value is 999.                                                                                |
| `skip`    | integer |          | —                                        | Skip the first n items for pagination.                                                                                            |
| `count`   | boolean |          | —                                        | Include count of items in the response.                                                                                           |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                                                               |
| `filter`  | string  |          | `"state eq 'approved'"`                  | Filter items by property values using OData query syntax (e.g., 'state eq "approved"').                                           |
| `search`  | string  |          | —                                        | Search items by search phrases. Use this to find swap shift requests by keywords.                                                 |
| `select`  | string  |          | `"id,state,recipientActionDateTime"`     | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime').                            |
| `orderby` | string  |          | `"createdDateTime"`                      | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc').                                               |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List Team Members`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TEAM\_MEMBERS**

Tool to list members of a Microsoft Teams team. Use when you need to retrieve the members of a specific team, for auditing or notifications.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                          | Description                                                                                                                                                                                                                                                       |
| --------- | ------- | :------: | ------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                                                             | Optional maximum number of members to return (1–999).                                                                                                                                                                                                             |
| `filter`  | string  |          | `"(microsoft.graph.aadUserConversationMember/userId eq '73761f06-2ac9-469c-9f10-279a8cc267f9')"` | Optional OData filter expression to filter members. Supports filtering by userId, displayName, or email. Example: "(microsoft.graph.aadUserConversationMember/userId eq '12345')" or "(microsoft.graph.aadUserConversationMember/email eq '<user@example.com>')". |
| `select`  | string  |          | `"id,displayName,email,roles"`                                                                   | Optional comma-separated list of properties to include in the response. Example: "id,displayName,email" to return only those fields.                                                                                                                              |
| `team_id` | string  |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"`                                                         | GUID of the Microsoft Teams team to retrieve members from.                                                                                                                                                                                                        |

***

### `Microsoft Teams List Team Operations`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TEAM\_OPERATIONS**

Tool to list operations from a team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team. This is the team ID (GUID) whose operations you want to retrieve. |

***

### `Microsoft Teams List Team Permission Grants`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TEAM\_PERMISSION\_GRANTS**

Tool to list all resource-specific permission grants for a team with support for filtering, pagination, and sorting. Use when you need to identify which Microsoft Entra apps have access to a team and their corresponding permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `team_id` | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

***

### `Microsoft Teams List Team Templates`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TEAM\_TEMPLATES**

Tool to list available Microsoft Teams templates. Use when retrieving templates for team creation or customization workflows.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                | Description                                                                                                                                                                                           |
| ----------- | ------- | :------: | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`       | integer |          | `50`                                   | Maximum number of templates to return (1–999).                                                                                                                                                        |
| `skip`      | integer |          | `10`                                   | Number of templates to skip for pagination.                                                                                                                                                           |
| `count`     | boolean |          | —                                      | If true, include a count of total matching templates in the response.                                                                                                                                 |
| `expand`    | string  |          | `"definitions"`                        | Comma-separated list of navigation properties to expand and include in the response (e.g., 'definitions'). Use 'definitions' to get full teamTemplateDefinition objects instead of just template IDs. |
| `filter`    | string  |          | `"startsWith(displayName,'Template')"` | OData filter expression to filter the templates (e.g., "startsWith(displayName,'Template')" or "definitions/any(a:a/languageTag eq 'en-US')").                                                        |
| `select`    | string  |          | `"id,displayName"`                     | Comma-separated template properties to include in the response (e.g., 'id,displayName,description'). If empty, default properties are returned.                                                       |
| `orderby`   | string  |          | `"displayName desc"`                   | Comma-separated properties and directions to order the results by (e.g., 'displayName desc').                                                                                                         |
| `skipToken` | string  |          | `""`                                   | Token for server-side pagination. Use the value from @odata.nextLink in the previous response to get the next page of results.                                                                        |

***

### `Microsoft Teams List Time Off`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TIME\_OFF**

Tool to list time off entries from a Microsoft Teams team's schedule. Use when you need to retrieve all time off periods for a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                              | Description                                                                                                                          |
| --------- | ------- | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `top`     | integer |          | `50`                                                 | Show only the first n items. Use to limit the number of results returned.                                                            |
| `skip`    | integer |          | —                                                    | Skip the first n items. Use for pagination to offset results.                                                                        |
| `count`   | boolean |          | —                                                    | Include count of items in the response. When true, the response includes the total count of matching items.                          |
| `expand`  | string  |          | `"*"`                                                | Expand related entities to include additional data in the response.                                                                  |
| `filter`  | string  |          | `"userId eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'"` | Filter items by property values. Use OData filter syntax (e.g., 'userId eq "user-guid"' or 'startDateTime ge 2024-01-01T00:00:00Z'). |
| `search`  | string  |          | —                                                    | Search items by search phrases. Use to find time off entries matching specific text.                                                 |
| `select`  | string  |          | `"id,userId,sharedTimeOff"`                          | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedTimeOff').                                        |
| `orderby` | string  |          | `"createdDateTime desc"`                             | Order items by property values. Use OData orderby syntax (e.g., 'createdDateTime desc' or 'userId,startDateTime').                   |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').         |

***

### `Microsoft Teams List Time Off Reasons`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TIME\_OFF\_REASONS**

Tool to get time off reasons from a team's schedule. Use when you need to retrieve the list of available time off reasons for scheduling in Microsoft Teams.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                     |
| --------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Use for limiting the number of results returned.                                                |
| `skip`    | integer |          | —                                        | Skip the first n items. Use for pagination to skip a certain number of results.                 |
| `count`   | boolean |          | —                                        | Include count of items in the response. Set to true to get the total count of time off reasons. |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                             |
| `filter`  | string  |          | `"isActive eq true"`                     | Filter items by property values using OData query syntax (e.g., 'isActive eq true').            |
| `search`  | string  |          | —                                        | Search items by search phrases. Use to find time off reasons by keywords.                       |
| `select`  | string  |          | `"id,displayName,isActive"`              | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,isActive').   |
| `orderby` | string  |          | `"displayName"`                          | Order items by property values (e.g., 'displayName' or 'displayName desc').                     |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier (GUID) of the team. Must be a valid UUID format.                          |

***

### `Microsoft Teams List Time Off Requests`

Integration name: **MICROSOFT\_TEAMS\_LIST\_TIME\_OFF\_REQUESTS**

Tool to retrieve a list of time off requests from a Microsoft Teams team's schedule. Use when you need to view all time off requests including their status (pending, approved, declined), dates, and associated users.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                     | Maximum value is 999.                                                                                                             |
| `skip`    | integer |          | —                                        | Skip the first n items for pagination.                                                                                            |
| `count`   | boolean |          | —                                        | Include count of items in the response.                                                                                           |
| `expand`  | string  |          | —                                        | Expand related entities to include additional data in the response.                                                               |
| `filter`  | string  |          | `"state eq 'pending'"`                   | Filter items by property values using OData query syntax (e.g., 'state eq "pending"' or 'startDateTime ge 2024-01-01T00:00:00Z'). |
| `search`  | string  |          | —                                        | Search items by search phrases. Use this to find time off requests by keywords.                                                   |
| `select`  | string  |          | `"id,startDateTime,endDateTime,state"`   | Select specific properties to be returned (comma-separated, e.g., 'id,startDateTime,endDateTime,state').                          |
| `orderby` | string  |          | `"startDateTime"`                        | Order items by property values (e.g., 'startDateTime' or 'startDateTime desc').                                                   |
| `team_id` | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').      |

***

### `Microsoft Teams List User Chat Members`

Integration name: **MICROSOFT\_TEAMS\_LIST\_USER\_CHAT\_MEMBERS**

Tool to list members of a specific chat for a user in Microsoft Teams. Use when you need to retrieve the members of a specific user's chat, whether it's a one-on-one chat, group chat, or meeting chat.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                          |
| --------- | ------ | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat. This is the chat ID returned by Graph API.                                                        |
| `user_id` | string |     ✅    | `"me"`                                            | The unique identifier of the user. Can be the user's ID (GUID), user principal name (UPN/email), or 'me' for the authenticated user. |

***

### `Microsoft Teams List User Chat Messages`

Integration name: **MICROSOFT\_TEAMS\_LIST\_USER\_CHAT\_MESSAGES**

Tool to retrieve messages from a specific chat for a given user. Use when you need to access chat messages through the user context.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                           | Description                                                                                           |
| --------- | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | —                                                 | Maximum number of messages to retrieve. Microsoft Graph enforces a maximum limit of 50 per request.   |
| `skip`    | integer |          | —                                                 | Number of messages to skip for pagination.                                                            |
| `count`   | boolean |          | —                                                 | Include count of items in the response.                                                               |
| `expand`  | array   |          | —                                                 | Expand related entities (e.g., 'replies' to include message replies).                                 |
| `filter`  | string  |          | —                                                 | OData filter expression for filtering messages by property values (do not include '$filter=' prefix). |
| `search`  | string  |          | —                                                 | Search items by search phrases.                                                                       |
| `select`  | array   |          | —                                                 | Select specific properties to be returned in the response.                                            |
| `chat_id` | string  |     ✅    | `"19:2da4c29f6d7041eca70b638b43d45437@thread.v2"` | Unique Microsoft Graph chat identifier. This is the chat ID returned by Graph API.                    |
| `orderby` | string  |          | —                                                 | Order items by property values (comma-separated list of properties).                                  |
| `user_id` | string  |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`          | Unique identifier (GUID or UPN) of the user whose chats to access.                                    |

***

### `Microsoft Teams List User Joined Teams`

Integration name: **MICROSOFT\_TEAMS\_LIST\_USER\_JOINED\_TEAMS**

Tool to list the Teams that a specified user is a direct member of (joined teams). Use for access/membership audits when enumerating team members is access-restricted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                              |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------ |
| `user_id` | string |     ✅    | `"me"`  | User ID or user principal name (UPN) to query joined teams for. Use 'me' to query the authenticated user's joined teams. |

***

### `Microsoft Teams List Users`

Integration name: **MICROSOFT\_TEAMS\_LIST\_USERS**

Tool to list all users in the organization. Use when you need to retrieve directory users with filtering, pagination, and field selection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type    | Required | Example                            | Description                                                                                                                                                                                                                                                                                                                     |
| ------------------ | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`              | integer |          | `50`                               | Maximum number of users to return per page (1-999). Default is 100. For pagination beyond the first page, use the @odata.nextLink URL returned in the response. Note: Some tenants have restrictive page size policies that may reject explicit $top values. If such an error occurs, the request will be retried without $top. |
| `expand`           | string  |          | `"manager"`                        | OData expand related entities (e.g., manager).                                                                                                                                                                                                                                                                                  |
| `filter`           | string  |          | `"startswith(displayName,'John')"` | OData filter to refine results by property values (e.g., startswith(displayName,'A')).                                                                                                                                                                                                                                          |
| `search`           | string  |          | `"\"displayName:John\""`           | OData search query for advanced text search across user properties. Requires ConsistencyLevel: eventual header. Use double quotes for phrases (e.g., "displayName:John"). Not available in Azure AD B2C tenants.                                                                                                                |
| `select`           | string  |          | `"id,displayName,mail"`            | Comma-separated list of user properties to include (e.g., id,displayName,mail).                                                                                                                                                                                                                                                 |
| `orderby`          | string  |          | `"displayName asc"`                | OData orderby clause to sort results (e.g., displayName desc). When combined with $filter, advanced query capabilities (ConsistencyLevel: eventual header and $count=true) may be required and will be added automatically if needed.                                                                                           |
| `consistencyLevel` | string  |          | `"eventual"`                       | Set to 'eventual' when using advanced queries with $count or $search.                                                                                                                                                                                                                                                           |

***

### `Microsoft Teams Mark Chat Read For User`

Integration name: **MICROSOFT\_TEAMS\_MARK\_CHAT\_READ\_FOR\_USER**

Tool to mark a chat as read for a specific user in Microsoft Teams. Use when you need to update the read status of a chat for a particular user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                   |
| --------- | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `user`    | object |     ✅    | —                                                 | The user for whom the chat should be marked as read. Must include both user ID and tenant ID. |
| `chat_id` | string |     ✅    | `"19:12f973dcc61b428aae3e1ab42adf199d@thread.v2"` | The unique identifier of the chat to mark as read.                                            |

***

### `Microsoft Teams Mark Chat Unread For User`

Integration name: **MICROSOFT\_TEAMS\_MARK\_CHAT\_UNREAD\_FOR\_USER**

Marks a specific chat as unread for a user by setting the last read message timestamp. Use when you need to mark messages after a certain time as unread.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type   | Required | Example                                           | Description                                                                                                                                                                                  |
| ------------------------- | ------ | :------: | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user`                    | object |     ✅    | —                                                 | The user for whom the chat should be marked as unread. Must include both user ID and tenant ID.                                                                                              |
| `chat_id`                 | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat to mark as unread.                                                                                                                                         |
| `lastMessageReadDateTime` | string |          | `"2026-02-23T13:59:38.000Z"`                      | The timestamp (ISO 8601 format) up to which the user has read messages. Messages after this timestamp will be marked as unread. If not provided, the chat will be marked as entirely unread. |

***

### `Microsoft Teams Pin Message`

Integration name: **MICROSOFT\_TEAMS\_PIN\_MESSAGE**

Tool to pin a message in a Microsoft Teams chat. Use when you need to highlight an important message for quick access.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                           | Description                                                                                                                                                           |
| ------------ | ------ | :------: | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`    | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat where the message to be pinned is located.                                                                                          |
| `message_id` | string |     ✅    | `"1771858324199"`                                 | The unique identifier of the message to pin. This is a numeric timestamp string (milliseconds since epoch) returned by the Microsoft Graph API when listing messages. |

***

### `Microsoft Teams Post Message Reply`

Integration name: **MICROSOFT\_TEAMS\_POST\_MESSAGE\_REPLY**

Sends a reply to an existing message, identified by `message_id`, within a specific `channel_id` of a given `team_id` in Microsoft Teams.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                                                             | Description                                                                                                                                                                                                                                                                                                                                                 |
| ----------------- | ------ | :------: | ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`         | string |     ✅    | `"Acknowledged."`                                                                                                                   | The body of the reply message. This can be plain text or HTML, as specified by the `content_type` field.                                                                                                                                                                                                                                                    |
| `subject`         | string |          | `"Follow-up on the previous discussion"`                                                                                            | The subject of the reply message, in plaintext. Typically null for channel message replies.                                                                                                                                                                                                                                                                 |
| `team_id`         | string |     ✅    | `"fbe2bf47-16c8-47cf-b4a5-4b9b187c508b"`                                                                                            | The unique identifier (GUID) of the Microsoft Teams team that owns/hosts the channel. IMPORTANT: For shared channels, this must be the host team ID (the team that created the channel), not the team where you access the shared channel. If you receive a 404 'Channel does not belong to Team' error, you likely need to use the host team's ID instead. |
| `mentions`        | array  |          | `[{"id":0,"mentioned":{"user":{"id":"user-guid","displayName":"John Doe","userIdentityType":"aadUser"}},"mentionText":"John Doe"}]` | List of entities (users, bots, teams, channels) mentioned in the reply. Each mention should include 'id' (numeric index), 'mentionText', and 'mentioned' (entity details). The 'id' corresponds to the 'id' attribute in HTML tags in the message content.                                                                                                  |
| `channel_id`      | string |     ✅    | `"19:general@thread.tacv2"`                                                                                                         | The unique identifier of the channel containing the message to reply to. Standard channels use format '19:{alphanumeric}@thread.tacv2'. For shared/private channels, the format may differ (e.g., '19:{guid}@thread.tacv2' or '19:{id}@unq.gbl.spaces'). The channel must belong to the team specified in team\_id.                                         |
| `importance`      | string |          | `"normal"`                                                                                                                          | Priority level of the reply message. Values: 'normal', 'high', or 'urgent'. If not specified, defaults to 'normal'.                                                                                                                                                                                                                                         |
| `message_id`      | string |     ✅    | `"1611900000000"`                                                                                                                   | The unique identifier of the specific message within the channel to which this reply is directed.                                                                                                                                                                                                                                                           |
| `attachments`     | array  |          | `[{"id":"attachment-id","name":"file.pdf","contentUrl":"https://example.com/file.pdf","contentType":"reference"}]`                  | References to attached objects like files, tabs, meetings, or rich cards (e.g., adaptive cards). Each attachment should include 'id', 'contentType', 'contentUrl' or 'content', and optionally 'name' and 'thumbnailUrl'.                                                                                                                                   |
| `content_type`    | string |          | `"text"`                                                                                                                            | Specifies the format of the `content` field. Accepted values are 'text' for plain text content and 'html' for content with HTML formatting. Defaults to 'text' if not provided.                                                                                                                                                                             |
| `hosted_contents` | array  |          | —                                                                                                                                   | Inline images or code snippets to embed in the reply. Each item requires a file and a temporary\_id. Reference hosted content in the HTML body via  tags. Requires content\_type to be 'html'.                                                                                                                                                              |

***

### `Microsoft Teams Provision Channel Email`

Integration name: **MICROSOFT\_TEAMS\_PROVISION\_CHANNEL\_EMAIL**

Tool to provision an email address for a Microsoft Teams channel. Use when you need to enable email integration for a specific channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                             |
| ------------ | ------ | :------: | ---------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier of the team that contains the channel.                            |
| `channel_id` | string |     ✅    | `"19:3442cabe1ce346538fec728d83abe8a5@thread.tacv2"` | The unique identifier of the channel within the team to provision an email address for. |

***

### `Microsoft Teams Remove Channel Email`

Integration name: **MICROSOFT\_TEAMS\_REMOVE\_CHANNEL\_EMAIL**

Tool to remove the email address of a channel in Microsoft Teams. Use when you need to disable email integration for a specific channel.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                                                                                       |
| ------------ | ------ | :------: | ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier (GUID) of the team that contains the channel. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                        |
| `channel_id` | string |     ✅    | `"19:4889194729264b06aa92cadc3cbb8bf0@thread.tacv2"` | The unique identifier of the channel whose email address should be removed. Must be in thread format (e.g., '19:4889194729264b06aa92cadc3cbb8bf0\@thread.tacv2'). |

***

### `Microsoft Teams Remove Chat Member`

Integration name: **MICROSOFT\_TEAMS\_REMOVE\_CHAT\_MEMBER**

Tool to remove a member from a Microsoft Teams chat. Use when you need to remove a user from a chat conversation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                                                                                                          | Description                                                                                                                          |
| --------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `chat_id`       | string |     ✅    | `"19:12f973dcc61b428aae3e1ab42adf199d@thread.v2"`                                                                                                                                | The unique identifier of the chat from which to remove the member.                                                                   |
| `if_match`      | string |          | —                                                                                                                                                                                | Optional ETag header value for conditional requests. Use this to ensure the member hasn't been modified since you last retrieved it. |
| `membership_id` | string |     ✅    | `"MCMjMCMjYTZhNTVjNWYtMDc0Ny00ODA0LWExNjYtMmI1ZGZjOWFjZTJhIyMxOToxMmY5NzNkY2M2MWI0MjhhYWUzZTFhYjQyYWRmMTk5ZEB0aHJlYWQudjIjIzVjYjM4NzllLWIyZTYtNGViMy1iMmIxLTRiMDgyMWM3ZWJhMA=="` | The unique identifier of the conversationMember to remove from the chat.                                                             |

***

### `Microsoft Teams Remove Team Member`

Integration name: **MICROSOFT\_TEAMS\_REMOVE\_TEAM\_MEMBER**

Tool to remove a member from a Microsoft Teams team. Use when you need to remove a user from a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                                                                                              | Description                                                                                                                          |
| --------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                                                                                                                             | The unique identifier of the team from which to remove the member.                                                                   |
| `if_match`      | string |          | —                                                                                                                                                                    | Optional ETag header value for conditional requests. Use this to ensure the member hasn't been modified since you last retrieved it. |
| `membership_id` | string |     ✅    | `"MCMjMSMjYTZhNTVjNWYtMDc0Ny00ODA0LWExNjYtMmI1ZGZjOWFjZTJhIyM4N2IwNTYwZi1mYzBkLTQ0NDItYWRkOC1iMzgwY2E5MjY3MDcjIzFkMDEwZjUyLTYwOTYtNDI2ZS05MDBkLWNjMzM3MzVmNmNhNw=="` | The unique identifier of the conversationMember to remove from the team.                                                             |

***

### `Microsoft Teams Remove Team Members`

Integration name: **MICROSOFT\_TEAMS\_REMOVE\_TEAM\_MEMBERS**

Tool to remove multiple members from a Microsoft Teams team in bulk. Use when you need to remove one or more users from a team.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                     |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `members` | array  |     ✅    | —                                        | List of members to remove from the team. Maximum 20 members can be removed in a single request. |
| `team_id` | string |     ✅    | `"e4183b04-c9a2-417c-bde4-70e3ee46a6dc"` | The unique identifier (GUID) of the Microsoft Teams team from which to remove members.          |

***

### `Microsoft Teams Search Files`

Integration name: **MICROSOFT\_TEAMS\_SEARCH\_FILES**

Search files in Microsoft Teams using KQL syntax. Find files by name, type, content, author, and modification date across all Teams and channels. Supports boolean logic and date ranges. Examples: 'filetype:pdf AND lastmodifiedtime>=2024-10-01', 'contract AND budget', 'filename:report AND author:<user@example.com>'

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------ | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `size`       | integer |          | —            | The maximum number of file results to return per page. Use with from\_index for pagination.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `query`      | string  |     ✅    | `"contract"` | Search query for files in Teams. Supports keywords, filenames, and content search. **Basic Syntax:** - Keywords: 'budget contract' - Exact phrases: '"project timeline"' - Filenames: 'report.pdf' or 'filename:contract' - File types: 'filetype:pdf' or 'filetype:docx' - Boolean: 'contract AND budget' or 'report OR summary' **Property Filters:** - filename: File name - 'filename:contract' - filetype: File extension - 'filetype:pdf', 'filetype:docx', 'filetype:xlsx' - author: Creator - 'author:<user@example.com>' - lastmodifiedtime: Modified date - 'lastmodifiedtime>=2024-10-01' **Date Filters:** - Exact: 'lastmodifiedtime:2024-10-01' - Greater/equal: 'lastmodifiedtime>=2024-10-01' - Range: 'lastmodifiedtime:2024-10-01..2024-10-31' - Relative: 'lastmodifiedtime>today-30' **Complex Queries:** - 'contract AND filetype:pdf AND lastmodifiedtime>=2024-10-01' - '(budget OR financial) AND filetype:xlsx' - 'filename:report AND lastmodifiedtime>today-7' |
| `region`     | string  |          | —            | Specifies the geographic region for the search request. ONLY required when using application permissions (S2S authentication). DO NOT use with delegated permissions (user authentication) - the API will reject the request. Valid values: 'NAM' (North America), 'EMEA' (Europe, Middle East, Africa), 'APAC' (Asia Pacific). Leave unset (None) for delegated permissions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `from_index` | integer |          | —            | The 0-based starting index for pagination. To paginate: check response\['value']\[0]\['hitsContainers']\[0]\['moreResultsAvailable']. If true, call again with from\_index += size (e.g., 0 → 25 → 50).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Microsoft Teams Search Messages`

Integration name: **MICROSOFT\_TEAMS\_SEARCH\_MESSAGES**

Search Microsoft Teams messages using powerful KQL syntax. Supports sender (from:), date filters (sent:), attachments, and boolean logic. Works across all Teams chats and channels the user has access to. Examples: 'from:<user@example.com> AND sent>=2024-10-01', 'punchlist OR termination', 'sent>today-30 AND hasattachment:yes' NOTE: This action requires an organizational Microsoft 365 account (Azure AD/Entra ID). It does NOT work with personal Microsoft accounts (MSA) such as @outlook.com, @hotmail.com, or @live.com. If using a personal Microsoft account, this search will fail.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| -------------------- | ------- | :------: | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `size`               | integer |          | —                  | The maximum number of search results to return per page. Use with from\_index for pagination.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `query`              | string  |          | `"project update"` | KQL (Keyword Query Language) search query string. Supports advanced syntax for precise searches. **Basic Syntax:** - Simple keywords: 'budget report' - Exact phrases: '"quarterly review"' - Boolean operators: 'urgent AND deadline' or 'invoice OR receipt' **Property Filters (prefix:value):** - from: Sender - 'from:<user@example.com>' or 'from:example.com' - sent: Date sent - 'sent:2024-10-01', 'sent>=2024-10-01', 'sent:2024-10-01..2024-10-31', 'sent>today-7' - hasattachment: Has files - 'hasattachment:yes' or 'hasattachment:no' Note: A search query is required. To return recent messages without a keyword filter, use a date range like 'sent>=2020-01-01'. Empty queries will default to 'sent>=2020-01-01' to return recent messages. |
| `region`             | string  |          | —                  | Specifies the geographic region for the search request. ONLY required when using application permissions (S2S authentication). DO NOT use with delegated permissions (user authentication) - the API will reject the request. Valid values: 'NAM' (North America), 'EMEA' (Europe, Middle East, Africa), 'APAC' (Asia Pacific). Leave unset (None) for delegated permissions.                                                                                                                                                                                                                                                                                                                                                                                    |
| `from_index`         | integer |          | —                  | The 0-based starting index for pagination. To paginate: check response\['value']\[0]\['hitsContainers']\[0]\['moreResultsAvailable']. If true, call again with from\_index += size (e.g., 0 → 25 → 50). Message ID is in hits\[]\['hitId'], not hits\[]\['resource']\['id'].                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `enable_top_results` | boolean |          | —                  | If `true`, sorts results by relevance; otherwise, sorts by date in descending order (newest first).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Microsoft Teams Send Activity Notification`

Integration name: **MICROSOFT\_TEAMS\_SEND\_ACTIVITY\_NOTIFICATION**

Tool to send activity notifications to specified recipients in Microsoft Teams. Use when you need to send custom notifications to users, team members, or channel members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example              | Description                                                                                                                    |
| -------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `topic`              | object  |     ✅    | —                    | The topic of the notification, including source, value, and optional webUrl for deep linking.                                  |
| `chainId`            | integer |          | —                    | Optional chain ID for grouping related notifications together.                                                                 |
| `recipients`         | array   |     ✅    | —                    | Array of recipients who will receive the notification. Each recipient must specify an @odata.type and corresponding ID fields. |
| `teamsAppId`         | string  |          | —                    | Optional Teams app ID if the notification is associated with a specific Teams app.                                             |
| `previewText`        | object  |     ✅    | —                    | The preview text to display in the notification.                                                                               |
| `activityType`       | string  |     ✅    | `"testNotification"` | The type of activity being notified. This should match an activity type defined in the Teams app manifest.                     |
| `templateParameters` | array   |          | —                    | Optional array of template parameters as key-value pairs for customizing the notification content.                             |

***

### `Microsoft Teams Set Me Preferred Presence`

Integration name: **MICROSOFT\_TEAMS\_SET\_ME\_PREFERRED\_PRESENCE**

DEPRECATED: Use MICROSOFT\_TEAMS\_SET\_USER\_PREFERRED\_PRESENCE instead. Tool to set the preferred availability and activity status for the current authenticated user. Use when you need to update your own presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example       | Description                                                                                                                                                                                                                |
| --------------------- | ------ | :------: | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `activity`            | string |     ✅    | `"Available"` | The supplemental information to availability. Must match the availability value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `availability`        | string |     ✅    | `"Available"` | The base presence information. Must match the activity value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork.                    |
| `expiration_duration` | string |          | `"PT8H"`      | The expiration of the app presence session in ISO 8601 duration format (e.g., 'PT8H' for 8 hours). If not provided, default expiration applies: DoNotDisturb or Busy expire in 1 day, all others expire in 7 days.         |

***

### `Microsoft Teams Set Presence`

Integration name: **MICROSOFT\_TEAMS\_SET\_PRESENCE**

Tool to set the presence information for a user's application presence session. Use when you need to update a user's presence state in Microsoft Teams. Valid combinations: Available/Available, Busy/InACall, Busy/InAConferenceCall, Away/Away, or DoNotDisturb/Presenting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                  | Description                                                                                                                                                         |
| --------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`             | string |     ✅    | `"fa8bf3dc-eca7-46b7-bad1-db199b62afc3"` | The unique identifier (GUID) of the user whose presence session to set.                                                                                             |
| `activity`            | string |     ✅    | `"Available"`                            | The supplemental information to availability. Must match valid combinations with availability.                                                                      |
| `session_id`          | string |     ✅    | `"9841f176-c6b4-4864-97ff-e88d245b2dbb"` | The ID of the application's presence session. This should typically match the application ID (appId) from the OAuth token.                                          |
| `availability`        | string |     ✅    | `"Available"`                            | The base presence information. Valid combinations: Available/Available, Busy/InACall, Busy/InAConferenceCall, Away/Away, DoNotDisturb/Presenting.                   |
| `expiration_duration` | string |          | `"PT1H"`                                 | The expiration of the app presence session in ISO 8601 duration format. Valid range is PT5M to PT4H (5 minutes to 4 hours). If not provided, defaults to 5 minutes. |

***

### `Microsoft Teams Set Presence Automatic Location`

Integration name: **MICROSOFT\_TEAMS\_SET\_PRESENCE\_AUTOMATIC\_LOCATION**

Tool to set the automatic presence location (office/remote/timeOff) for a specified user. Use when updating work location status in Microsoft Teams via automatic detection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                                                                                                                                                              |
| ------------------ | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `placeId`          | string |          | —                                        | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location.                                                             |
| `user_id`          | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier (GUID) of the user whose automatic presence location will be set.                                                                                                                  |
| `workLocationType` | string |     ✅    | `"remote"`                               | The work location type to set for the user's automatic presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

***

### `Microsoft Teams Set Presence Manual Location`

Integration name: **MICROSOFT\_TEAMS\_SET\_PRESENCE\_MANUAL\_LOCATION**

DEPRECATED: Use MICROSOFT\_TEAMS\_SET\_USER\_PRESENCE\_MANUAL\_LOCATION instead. Tool to set the manual presence location (office/remote/timeOff) for the authenticated user. Use when updating work location status in Microsoft Teams.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example    | Description                                                                                                                                                                                    |
| ------------------ | ------ | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `placeId`          | string |          | —          | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location.                                                   |
| `user_id`          | string |          | `"me"`     | The user's unique identifier or principal name. Use 'me' for delegated authentication (authenticated user) or provide a specific user ID/email for application authentication.                 |
| `workLocationType` | string |     ✅    | `"remote"` | The work location type to set for the user's presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

***

### `Microsoft Teams Set User Preferred Presence`

Integration name: **MICROSOFT\_TEAMS\_SET\_USER\_PREFERRED\_PRESENCE**

Tool to set the preferred availability and activity status for a user. Use when you need to update a user's presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists for the user.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                  | Description                                                                                                                                                                                                                |
| --------------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`             | string |     ✅    | `"fa8bf3dc-eca7-46b7-bad1-db199b62afc3"` | The unique identifier (GUID) of the user whose preferred presence status will be set.                                                                                                                                      |
| `activity`            | string |     ✅    | `"Available"`                            | The supplemental information to availability. Must match the availability value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `availability`        | string |     ✅    | `"Available"`                            | The base presence information. Must match the activity value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork.                    |
| `expiration_duration` | string |          | `"PT8H"`                                 | The expiration of the app presence session in ISO 8601 duration format (e.g., 'PT8H' for 8 hours). If not provided, default expiration applies: DoNotDisturb or Busy expire in 1 day, all others expire in 7 days.         |

***

### `Microsoft Teams Set User Presence Manual Location`

Integration name: **MICROSOFT\_TEAMS\_SET\_USER\_PRESENCE\_MANUAL\_LOCATION**

Tool to set the manual presence location (office/remote/timeOff) for a specific user. Use when updating work location status for a user in Microsoft Teams.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                                                                                                                                                    |
| ------------------ | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `placeId`          | string |          | —                                        | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location.                                                   |
| `user_id`          | string |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | The unique identifier of the user whose presence location should be set. Can be the user's ID or userPrincipalName.                                                                            |
| `workLocationType` | string |     ✅    | `"remote"`                               | The work location type to set for the user's presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

***

### `Microsoft Teams Share Team Schedule`

Integration name: **MICROSOFT\_TEAMS\_SHARE\_TEAM\_SCHEDULE**

Tool to share a Microsoft Teams schedule for a specified time range. Use when you need to make a team's schedule visible to members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                  | Description                                                                                                            |
| --------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `team_id`       | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | The unique identifier of the team whose schedule to share.                                                             |
| `notifyTeam`    | boolean |     ✅    | —                                        | Whether to notify the entire team that the schedule has been shared, or only employees with assigned shifts. Required. |
| `endDateTime`   | string  |     ✅    | —                                        | End date and time of the schedule period to share in ISO 8601 format (e.g., '2026-03-03T00:00:00.000Z'). Required.     |
| `startDateTime` | string  |     ✅    | —                                        | Start date and time of the schedule period to share in ISO 8601 format (e.g., '2026-02-24T00:00:00.000Z'). Required.   |

***

### `Microsoft Teams Teams Create Chat`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_CREATE\_CHAT**

Creates a new chat; if a 'oneOnOne' chat with the specified members already exists, its details are returned, while 'group' chats are always newly created. IMPORTANT: The authenticated user MUST be included as one of the members.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example      | Description                                                                                                                                                                                                                                                                                                                                                                                     |
| --------------- | ------ | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `topic`         | string |          | —            | Subject or title for the chat. REQUIRED for group chats. For 'oneOnOne' chats, this field is ignored and should be omitted. The following characters are NOT allowed and will be automatically removed: \~ # % & \* { } + / \ : < > ? \| ' ". Topics cannot start with underscore (\_) or period (.), and cannot end with a period.                                                             |
| `members`       | array  |     ✅    | —            | List of members. IMPORTANT: The authenticated user MUST be included as one of the members. Each member must be unique - do not include the same user ID or email multiple times. For 'oneOnOne' chats, exactly two members are required (the authenticated user and one other person). For 'group' chats, at least two members are required and at least one member must have the 'owner' role. |
| `chatType`      | string |     ✅    | `"oneOnOne"` | Type of chat. If 'oneOnOne' for members with an existing chat, that chat's details are returned.                                                                                                                                                                                                                                                                                                |
| `installedApps` | array  |          | —            | Optional. A collection of Teams apps to install in the chat at creation time. Supports both one-on-one and group chats. Apps can be installed with or without resource-specific consent (RSC) permissions.                                                                                                                                                                                      |

***

### `Microsoft Teams Teams List`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_LIST**

Retrieves Microsoft Teams accessible by the authenticated user, allowing filtering, property selection, and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                               | Description                                                                                                                                                                                                             |
| --------- | ------- | :------: | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `"50"`                                | Maximum number of teams to return per page (1-999). Used for pagination; see `next_link` in response.                                                                                                                   |
| `count`   | boolean |          | `true`                                | When true, includes the total count of items in the @odata.count property in the response. The count is only returned in the first page of results.                                                                     |
| `filter`  | string  |          | `"startsWith(displayName,'Project')"` | OData v4.0 filter string to refine results based on team properties (e.g., `startsWith(displayName,'A')`). Consult OData v4.0 documentation for syntax.                                                                 |
| `select`  | string  |          | `"id,displayName"`                    | Comma-separated team properties to retrieve (e.g., 'id,displayName,description'). If empty or omitted, standard properties are returned. Supported properties include `id`, `displayName`, `description`, `visibility`. |

***

### `Microsoft Teams Teams List Channel Messages`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_LIST\_CHANNEL\_MESSAGES**

Tool to list messages in a Teams channel when team\_id and channel\_id are known (no chat\_id required). Use this to enumerate channel message history and obtain message\_id for follow-on operations like listing replies or getting message details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                              | Description                                                                                                                                                 |
| ------------ | ------- | :------: | ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `20`                                                 | Maximum number of messages to return per page (1-50). Microsoft Graph enforces a maximum of 50 messages per request.                                        |
| `expand`     | string  |          | `"replies"`                                          | Optional expansion parameter. Only 'replies' is supported, which includes message replies (up to 1,000 per message; use <replies@odata.nextLink> for more). |
| `team_id`    | string  |     ✅    | `"fbe2bf47-16c8-47cf-b4a5-4b9b187c508b"`             | Unique identifier (GUID) of the Microsoft Teams team.                                                                                                       |
| `channel_id` | string  |     ✅    | `"19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"` | Unique identifier of the channel within the team.                                                                                                           |

***

### `Microsoft Teams Teams List Channels`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_LIST\_CHANNELS**

Retrieves channels for a specified Microsoft Teams team ID (must be valid and for an existing team), with options to include shared channels, filter results, and select properties.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                  | Description                                                                                                                                                                                                                     |
| ------------------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `filter`                  | string  |          | `"startswith(displayName,'Sales')"`      | OData v4 query string to filter channels (e.g., `startswith(displayName,'Sales')` or `membershipType eq 'private'`).                                                                                                            |
| `select`                  | string  |          | `"id,displayName,description"`           | Comma-separated channel properties to return (e.g., 'id,displayName,description'); empty for default properties. Common: `id`, `displayName`, `description`, `email`, `membershipType`, `webUrl`.                               |
| `team_id`                 | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"` | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). Team names are not accepted. Use MICROSOFT\_TEAMS\_LIST\_USER\_JOINED\_TEAMS to get team IDs. |
| `include_shared_channels` | boolean |          | —                                        | If true, include channels shared with the team (uses allChannels endpoint). If false, exclude shared channels from results by filtering on membershipType.                                                                      |

***

### `Microsoft Teams Teams List Chat Messages`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_LIST\_CHAT\_MESSAGES**

DEPRECATED: Use ListUserChatMessages instead. Retrieves messages (newest first) from an existing and accessible Microsoft Teams one-on-one chat, group chat, or channel thread, specified by `chat_id`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                 |
| --------- | ------- | :------: | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `"50"`                                                                                                    | Maximum number of messages to retrieve. Microsoft Graph enforces a maximum limit of 50 per request.                                                                                                                                                                                                                                                                                         |
| `filter`  | string  |          | `"lastModifiedDateTime gt 2022-09-22T00:00:00.000Z and lastModifiedDateTime lt 2022-09-24T00:00:00.000Z"` | OData filter expression for filtering messages by date range (do not include '$filter='). Supports filtering by 'lastModifiedDateTime' (with gt/lt operators) or 'createdDateTime' (with lt operator). You can only filter results if the request URL contains both $orderby and $filter query parameters configured for the same property; otherwise, the $filter query option is ignored. |
| `chat_id` | string  |     ✅    | `"19:2da4c29f6d7041eca70b638b43d45437@thread.v2"`                                                         | Unique Microsoft Graph chat identifier (GUID format). This is the chat ID returned by Graph API, not a channel thread ID. Use the Get All Chats action to retrieve valid chat IDs.                                                                                                                                                                                                          |
| `orderby` | string  |          | `"createdDateTime desc"`                                                                                  | Property to sort results by. Currently supports 'lastModifiedDateTime' (default) and 'createdDateTime' properties in descending order. Ascending order is not supported. Format: 'propertyName desc'.                                                                                                                                                                                       |

***

### `Microsoft Teams Teams Post Channel Message`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_POST\_CHANNEL\_MESSAGE**

Posts a new top-level message to a channel in Microsoft Teams (does NOT reply to an existing message). Despite the file name 'reply\_to\_channel\_chat', this action creates a brand-new message in the channel via POST /teams/{id}/channels/{id}/messages. To reply to an existing message thread, use the dedicated reply action instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example  | Description                                                                                                                                  |
| -------------- | ------ | :------: | -------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`      | string |     ✅    | —        | The content of the message to be sent. Can be plain text or HTML, determined by `content_type`.                                              |
| `subject`      | string |          | —        | The subject of the chat message, in plaintext. Optional field typically used for channel messages.                                           |
| `team_id`      | string |     ✅    | —        | The unique identifier of the Microsoft Teams team containing the channel.                                                                    |
| `mentions`     | array  |          | —        | List of entities mentioned in the chat message. Supported entities are: user, bot, team, and channel. Use with HTML content containing tags. |
| `channel_id`   | string |     ✅    | —        | The unique identifier of the channel within the specified team where the message will be posted.                                             |
| `importance`   | string |          | —        | The importance of the chat message. Possible values: 'normal', 'high', 'urgent'. Defaults to 'normal' if not specified.                      |
| `attachments`  | array  |          | —        | References to attached objects like files, tabs, meetings, etc. Each attachment is a chatMessageAttachment object.                           |
| `content_type` | string |          | `"text"` | The format of the message content. Defaults to 'text'.                                                                                       |

***

### `Microsoft Teams Teams Post Chat Message`

Integration name: **MICROSOFT\_TEAMS\_TEAMS\_POST\_CHAT\_MESSAGE**

Sends a non-empty message (text or HTML) to a specified, existing Microsoft Teams chat; content must be valid HTML if `content_type` is 'html'.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                                                   | Description                                                                                                      |
| ---------------- | ------ | :------: | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `chat_id`        | string |     ✅    | `"19:meeting_NTg0NTQ2YjctMDJkNi00M2U3LWFkNmQtN2U4MDVmYjE0MDc5@thread.v2"` | Unique identifier for the Microsoft Teams chat to receive the message.                                           |
| `content`        | string |     ✅    | `"Hello world!"`                                                          | Message content, either plain text or HTML (see `content_type`).                                                 |
| `subject`        | string |          | —                                                                         | The subject of the chat message, in plaintext.                                                                   |
| `mentions`       | array  |          | —                                                                         | List of entities mentioned in the chat message. Supported entities are: user, bot, team, channel, chat, and tag. |
| `attachments`    | array  |          | —                                                                         | References to attached objects like files, tabs, meetings, or cards.                                             |
| `content_type`   | string |          | `"text"`                                                                  | Content format: 'text' (plain) or 'html'.                                                                        |
| `hostedContents` | array  |          | —                                                                         | Content in a message hosted by Microsoft Teams - for example, inline images or code snippets.                    |

***

### `Microsoft Teams Unarchive Channel`

Integration name: **MICROSOFT\_TEAMS\_UNARCHIVE\_CHANNEL**

Tool to unarchive a channel in a Microsoft Teams team. Use when you need to restore an archived channel to active state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                      |
| ------------ | ------ | :------: | ---------------------------------------------------- | -------------------------------------------------------------------------------- |
| `team_id`    | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`             | The unique identifier (GUID) of the team that contains the channel to unarchive. |
| `channel_id` | string |     ✅    | `"19:079fd66c7bf04c07a21430a9a32c2130@thread.tacv2"` | The unique identifier of the channel to unarchive. Format: '19:@thread.tacv2'.   |

***

### `Microsoft Teams Unarchive Group Team Channel`

Integration name: **MICROSOFT\_TEAMS\_UNARCHIVE\_GROUP\_TEAM\_CHANNEL**

Tool to unarchive a channel in a Microsoft Teams group's team. Use when you need to restore an archived channel to active state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                              | Description                                                                                          |
| ------------ | ------ | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `group_id`   | string |     ✅    | `"5deae253-045e-4164-810b-bd4727daff1b"`             | The unique identifier (GUID) of the group that owns the team. This is the group ID, not the team ID. |
| `channel_id` | string |     ✅    | `"19:f7af3c1e730547c3b017e2ddecb5cb68@thread.tacv2"` | The unique identifier of the channel to unarchive. Format: '19:@thread.tacv2'.                       |

***

### `Microsoft Teams Unarchive Team`

Integration name: **MICROSOFT\_TEAMS\_UNARCHIVE\_TEAM**

Tool to unarchive a Microsoft Teams team. Use when you need to restore an archived team to active state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                            |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `team_id` | string |     ✅    | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"` | The unique identifier (GUID) of the team to unarchive. |

***

### `Microsoft Teams Unhide Chat For User`

Integration name: **MICROSOFT\_TEAMS\_UNHIDE\_CHAT\_FOR\_USER**

Tool to unhide a chat for a specific user. Use when you need to make a hidden chat visible again in the user's chat list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                              |
| --------- | ------ | :------: | ------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `user`    | object |     ✅    | —                                                 | TeamworkUserIdentity object containing the user information for whom to unhide the chat. |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat to unhide.                                             |

***

### `Microsoft Teams Unpin Message`

Integration name: **MICROSOFT\_TEAMS\_UNPIN\_MESSAGE**

Tool to unpin a message from a Microsoft Teams chat. Use when you need to remove a pinned message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                           | Description                                                                                                                                             |
| ------------------- | ------ | :------: | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`           | string |     ✅    | `"19:12f973dcc61b428aae3e1ab42adf199d@thread.v2"` | The unique identifier of the Microsoft Teams chat containing the pinned message.                                                                        |
| `if_match`          | string |          | —                                                 | Optional ETag value for conditional request. If provided, the unpin operation will only succeed if the current ETag matches this value.                 |
| `pinned_message_id` | string |     ✅    | `"1771836893396"`                                 | The unique identifier of the pinned message to unpin. This is a numeric timestamp string (milliseconds since epoch) that identifies the pinned message. |

***

### `Microsoft Teams Update Call`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CALL**

Tool to update the navigation property calls in Microsoft Teams communications. Use when you need to modify properties of an existing call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example              | Description                                                                                                                       |
| ----------------- | ------ | :------: | -------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `call_id`         | string |     ✅    | `"test-call-id-123"` | The unique identifier of the call to update.                                                                                      |
| `subject`         | string |          | —                    | The subject of the conversation.                                                                                                  |
| `tenantId`        | string |          | —                    | The tenant ID for the call.                                                                                                       |
| `odata_type`      | string |          | —                    | The OData type of the call entity. Must be `#microsoft.graph.call`.                                                               |
| `callChainId`     | string |          | —                    | A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in a P2P call. |
| `callbackUri`     | string |          | —                    | The callback URL on which callbacks will be delivered. Must be https.                                                             |
| `myParticipantId` | string |          | —                    | The ID of the participant that represents the bot or service application.                                                         |

***

### `Microsoft Teams Update Call Operation`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CALL\_OPERATION**

Tool to update the navigation property operations in communications. Use when you need to modify properties of an existing call operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                   | Description                                                                        |
| -------------------- | ------ | :------: | ------------------------- | ---------------------------------------------------------------------------------- |
| `status`             | string |          | —                         | The operation status. Possible values are: notStarted, running, completed, failed. |
| `call_id`            | string |     ✅    | `"test-call-id-123"`      | The unique identifier of the call.                                                 |
| `result_info`        | object |          | —                         | Information about the result of the operation.                                     |
| `client_context`     | string |          | `"test-context"`          | Unique client context string that can have a maximum of 256 characters.            |
| `comms_operation_id` | string |     ✅    | `"test-operation-id-456"` | The unique identifier of the commsOperation.                                       |

***

### `Microsoft Teams Update Call Participant`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CALL\_PARTICIPANT**

Tool to update a participant in a Microsoft Teams call. Use when you need to modify participant properties such as lobby status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example    | Description                                                                                                     |
| --------------- | ------- | :------: | ---------- | --------------------------------------------------------------------------------------------------------------- |
| `callId`        | string  |     ✅    | `"abc123"` | The unique identifier of the call.                                                                              |
| `isInLobby`     | boolean |          | —          | Whether the participant is in the lobby. Set to true to move participant to lobby or false to admit from lobby. |
| `participantId` | string  |     ✅    | `"xyz789"` | The unique identifier of the participant to update.                                                             |

***

### `Microsoft Teams Update Channel`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CHANNEL**

Tool to update channel properties in a Microsoft Teams group. Use when you need to modify channel description, display name, or favorite settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                | Type    | Required | Example                                              | Description                                                                                |
| ------------------------ | ------- | :------: | ---------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| `group_id`               | string  |     ✅    | `"ad9227ef-912f-4e58-9e39-6424a58dda66"`             | The unique identifier of the group (team) containing the channel to update.                |
| `channel_id`             | string  |     ✅    | `"19:df7448570b394ac4a01a24ed7d117ddf@thread.tacv2"` | The unique identifier of the channel to update.                                            |
| `description`            | string  |          | `"Updated description for the channel"`              | Updated description for the channel. Maximum length is 1024 characters.                    |
| `display_name`           | string  |          | `"Updated Channel Name"`                             | Updated display name for the channel. Maximum length is 50 characters.                     |
| `is_favorite_by_default` | boolean |          | —                                                    | Indicates whether the channel should be marked as recommended for all members of the team. |

***

### `Microsoft Teams Update Channel Message`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CHANNEL\_MESSAGE**

Tool to update a message in a channel. Use when you need to modify an existing channel message after confirming channel and message IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                  | Description                                                                                                    |
| ------------------ | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `model`            | string |          | —                                        | Payment model for metered API. Set to 'A' to use the metered payment model instead of evaluation mode.         |
| `content`          | string |          | `"Updated project details."`             | Updated message content, either plain text or HTML. Required for delegated permissions mode.                   |
| `subject`          | string |          | —                                        | Updated message subject in plaintext. Can be updated in delegated permissions mode.                            |
| `team_id`          | string |     ✅    | `"12345678-90ab-cdef-1234-567890abcdef"` | Unique identifier of the Microsoft Teams team.                                                                 |
| `channel_id`       | string |     ✅    | `"19:abcdef1234567890@thread.tacv2"`     | Unique identifier of the channel within the team.                                                              |
| `importance`       | string |          | —                                        | Message importance level. Possible values: normal, high, urgent. Can be updated in delegated permissions mode. |
| `message_id`       | string |     ✅    | `"1593478509446"`                        | Unique identifier of the channel message to update.                                                            |
| `content_type`     | string |          | `"text"`                                 | Format of the message content: 'text' or 'html'.                                                               |
| `policy_violation` | object |          | —                                        | Defines properties of a policy violation set by a DLP application.                                             |

***

### `Microsoft Teams Update Chat`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CHAT**

Tool to update the properties of a chat. Use when you need to modify chat settings such as the topic.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                           | Description                                                                                                                  |
| --------- | ------ | :------: | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `topic`   | string |          | `"Project Alpha Discussion - Updated"`            | The new topic/title for the chat. Only applicable for group chats. For one-on-one chats, this property cannot be updated.    |
| `chat_id` | string |     ✅    | `"19:faa4b91d49684e4280a96824f5c4dc2e@thread.v2"` | The unique identifier of the chat to update. This can be obtained from the chat's URL or from other chat-related operations. |

***

### `Microsoft Teams Update Chat Message`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CHAT\_MESSAGE**

Tool to update a specific message in a chat. Use when you need to correct or modify a sent chat message.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                   | Description                                                                                                                     |
| -------------- | ------ | :------: | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `model`        | string |          | `"A"`                                                                     | Query parameter for metered API usage. Set to 'A' to enable metered mode. If not specified, evaluation mode is used by default. |
| `chat_id`      | string |     ✅    | `"19:meeting_NTg0NTQ2YjctMDJkNi00M2U3LWFkNmQtN2U4MDVmYjE0MDc5@thread.v2"` | Unique identifier of the Microsoft Teams chat.                                                                                  |
| `content`      | string |     ✅    | `"Updated the details of the meeting."`                                   | Updated message content, either plain text or HTML.                                                                             |
| `message_id`   | string |     ✅    | `"1593478509446"`                                                         | Unique identifier of the chat message to update.                                                                                |
| `content_type` | string |          | `"text"`                                                                  | Format of the message content: 'text' or 'html'.                                                                                |

***

### `Microsoft Teams Update Content Sharing Session`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_CONTENT\_SHARING\_SESSION**

Tool to update a content sharing session in a Microsoft Teams call. Use when you need to modify the properties of an existing content sharing session.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type   | Required | Example                                    | Description                                                                                      |
| ---------------------------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------ |
| `id`                         | string |          | `"a7ebfb2d-871e-419c-87af-27290b22e8db"`   | Optional identifier for the content sharing session entity.                                      |
| `call_id`                    | string |     ✅    | `"57dab8b1-894c-409a-b240-bd8beae78896"`   | The unique identifier of the call.                                                               |
| `odata_type`                 | string |          | `"#microsoft.graph.contentSharingSession"` | The OData type of the content sharing session. Must be `#microsoft.graph.contentSharingSession`. |
| `content_sharing_session_id` | string |     ✅    | `"a7ebfb2d-871e-419c-87af-27290b22e8db"`   | The unique identifier of the content sharing session.                                            |

***

### `Microsoft Teams Update Day Note`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_DAY\_NOTE**

Tool to update an existing day note in a team's schedule. Use when you need to modify notes or reminders for a specific date in the team schedule.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                       | Description                                                                                                            |
| --------------- | ------ | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier (GUID) of the Microsoft Teams team containing the day note.                                      |
| `dayNote_id`    | string |     ✅    | `"NOTE_5bae75cd-df22-4aa2-b5e1-e4f70b775630"` | The unique identifier of the dayNote to update. Typically starts with 'NOTE\_' prefix.                                 |
| `dayNoteDate`   | string |          | `"2026-02-26"`                                | The date for which the day note applies, in YYYY-MM-DD format (e.g., '2026-02-26'). Provide only if updating the date. |
| `draftDayNote`  | object |          | —                                             | Represents the content and format of a day note.                                                                       |
| `sharedDayNote` | object |          | —                                             | Represents the content and format of a day note.                                                                       |

***

### `Microsoft Teams Update Online Meeting`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_ONLINE\_MEETING**

Tool to update the properties of an existing Microsoft Teams online meeting. Use when you need to modify meeting details such as subject, start time, or end time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                                                                                                                  | Description                                                                                                                   |
| ---------------------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `subject`              | string  |          | `"Updated Test Meeting"`                                                                                                                                 | The subject or title for the online meeting.                                                                                  |
| `user_id`              | string  |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`                                                                                                                 | The unique identifier (GUID) of the user who owns the online meeting.                                                         |
| `endDateTime`          | string  |          | `"2026-02-24T11:00:00Z"`                                                                                                                                 | The meeting end date and time in ISO 8601 format. When updating date/time, both startDateTime and endDateTime are required.   |
| `participants`         | object  |          | —                                                                                                                                                        | The participants to update in the online meeting. Only attendees can be updated.                                              |
| `startDateTime`        | string  |          | `"2026-02-24T10:00:00Z"`                                                                                                                                 | The meeting start date and time in ISO 8601 format. When updating date/time, both startDateTime and endDateTime are required. |
| `online_meeting_id`    | string  |     ✅    | `"MSo0M2YwYzE0ZC1iY2E4LTQyMWYtYjc2Mi1jM2Q4ZGQ3NWJlMWYqMCoqMTk6bWVldGluZ19ZMlF6TldFeU9EUXROamMwTXkwME5HTm1MV0UwTkdFdE5qUTNPV1ppTWpCbE5ETmtAdGhyZWFkLnYy"` | The unique identifier of the online meeting to update.                                                                        |
| `lobbyBypassSettings`  | object  |          | —                                                                                                                                                        | Specifies which participants can bypass the meeting lobby.                                                                    |
| `recordAutomatically`  | boolean |          | —                                                                                                                                                        | Indicates whether to record the meeting automatically.                                                                        |
| `watermarkProtection`  | object  |          | —                                                                                                                                                        | Specifies whether the client application should apply a watermark to content.                                                 |
| `isEntryExitAnnounced` | boolean |          | —                                                                                                                                                        | Indicates whether to announce when callers join or leave.                                                                     |

***

### `Microsoft Teams Update Open Shift`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_OPEN\_SHIFT**

Tool to update an existing open shift in a Microsoft Teams team schedule. Use when you need to modify open shift details such as times, theme, notes, or open slot count.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                          | Description                                                                                                                  |
| --------------------- | ------- | :------: | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| `teamId`              | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`         | The unique identifier of the team (GUID format).                                                                             |
| `openShiftId`         | string  |     ✅    | `"OPNSHFT_05cf38bd-3b58-4cba-a327-c92ed573b579"` | The unique identifier of the openShift to update. Use format 'OPNSHFT\_{guid}' for openShift IDs.                            |
| `draftOpenShift`      | object  |          | —                                                | Represents the draft version of an open shift that has not been shared with the team.                                        |
| `sharedOpenShift`     | object  |          | —                                                | Represents the shared version of an open shift that is visible to team members.                                              |
| `schedulingGroupId`   | string  |          | `"TAG_1b469c3f-7d24-411c-bb76-f8dddac60c7d"`     | The unique identifier of the scheduling group this open shift belongs to. Use format 'TAG\_{guid}' for scheduling group IDs. |
| `isStagedForDeletion` | boolean |          | —                                                | Indicates whether the open shift is staged for deletion. Set to true to mark for deletion.                                   |

***

### `Microsoft Teams Update Scheduling Group`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_SCHEDULING\_GROUP**

Tool to replace/update a scheduling group in a team's schedule. Use when you need to modify properties of an existing scheduling group such as display name, active status, code, or member list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                      | Description                                                                                                                                                                                                         |
| --------------------- | ------- | :------: | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`                | string  |          | `"MORNING1"`                                 | Code or identifier for the scheduling group. This can be used for external system integration or quick reference. Must contain only alphanumeric characters (letters and numbers, no special characters or spaces). |
| `team_id`             | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                                                                   |
| `user_ids`            | array   |          | `["43f0c14d-bca8-421f-b762-c3d8dd75be1f"]`   | List of user IDs to include as members of this scheduling group. Each ID should be a valid GUID/UUID. This replaces the existing list of members.                                                                   |
| `is_active`           | boolean |          | `true`                                       | Indicates whether the scheduling group is active and available for scheduling. Set to true to enable, false to disable.                                                                                             |
| `display_name`        | string  |          | `"Morning Shift"`                            | Display name of the scheduling group. This is the name that will appear when managing schedules and shifts.                                                                                                         |
| `scheduling_group_id` | string  |     ✅    | `"TAG_dc93d488-40de-443e-ac7d-ce86f22bef80"` | The unique identifier of the scheduling group to update. This can be a GUID or a tag-based ID (e.g., 'TAG\_dc93d488-40de-443e-ac7d-ce86f22bef80').                                                                  |

***

### `Microsoft Teams Update Tab`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TAB**

Tool to update the properties of a tab in a Microsoft Teams channel. Use when you need to modify tab display name, configuration, or web URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                          | Description                                                                       |
| --------------- | ------ | :------: | ---------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| `tab_id`        | string |     ✅    | `"a2320a8a-88ba-486f-8c61-3c31387010e0"`                         | The unique identifier of the tab to update.                                       |
| `team_id`       | string |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`                         | The unique identifier of the team containing the channel.                         |
| `web_url`       | string |          | —                                                                | The deep link URL of the tab instance.                                            |
| `channel_id`    | string |     ✅    | `"19:VUkpu1FFoEAvgBCOX2sP_qJOaokF6n44ApKt74y4L5M1@thread.tacv2"` | The unique identifier of the channel containing the tab.                          |
| `display_name`  | string |          | `"Updated Notes Tab"`                                            | The updated display name for the tab. This is what users will see in the channel. |
| `configuration` | object |          | —                                                                | Configuration settings for the tab.                                               |

***

### `Microsoft Teams Update Team`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TEAM**

Tool to update the properties of a team. Use when you need to modify team settings such as member, messaging, or fun settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                  | Description                                                                         |
| ------------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------- |
| `team_id`           | string |     ✅    | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"` | The unique identifier (GUID) of the team to update.                                 |
| `visibility`        | string |          | —                                        | The visibility of the team. Can be 'private' or 'public'.                           |
| `description`       | string |          | —                                        | An optional description for the team. Maximum length: 1024 characters.              |
| `displayName`       | string |          | —                                        | The name of the team.                                                               |
| `funSettings`       | object |          | —                                        | Settings that control fun features in the team.                                     |
| `classSettings`     | object |          | —                                        | Settings specific to teams of type Class (education teams).                         |
| `guestSettings`     | object |          | —                                        | Settings that control what guests can do in the team.                               |
| `classification`    | string |          | —                                        | An optional label that describes the data or business sensitivity of the team.      |
| `memberSettings`    | object |          | —                                        | Settings that control what members can do in the team.                              |
| `specialization`    | string |          | —                                        | Indicates whether the team is intended for a particular use case (education, etc.). |
| `messagingSettings` | object |          | —                                        | Settings that control messaging capabilities in the team.                           |

***

### `Microsoft Teams Update Team Member`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TEAM\_MEMBER**

Tool to update a team member's roles or properties in Microsoft Teams. Use when you need to change a member's role (e.g., promote to owner or demote to member).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type   | Required | Example                                                                                                                                                              | Description                                                                                                                               |
| --------------------------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `roles`                           | array  |          | `["owner"]`                                                                                                                                                          | The roles to assign to the member. Common values: 'owner', 'member', 'guest'. Pass an empty array to demote an owner to a regular member. |
| `team_id`                         | string |     ✅    | `"0209369b-0bb3-44e1-8292-b850df75a597"`                                                                                                                             | The unique identifier of the Microsoft Teams team.                                                                                        |
| `odata_type`                      | string |          | —                                                                                                                                                                    | The OData type identifier. Must be `#microsoft.graph.aadUserConversationMember` for Azure AD users.                                       |
| `display_name`                    | string |          | —                                                                                                                                                                    | Optional display name for the member.                                                                                                     |
| `conversation_member_id`          | string |     ✅    | `"MCMjMSMjYTZhNTVjNWYtMDc0Ny00ODA0LWExNjYtMmI1ZGZjOWFjZTJhIyMwMjA5MzY5Yi0wYmIzLTQ0ZTEtODI5Mi1iODUwZGY3NWE1OTcjIzQzZjBjMTRkLWJjYTgtNDIxZi1iNzYyLWMzZDhkZDc1YmUxZg=="` | The unique identifier of the conversation member to update.                                                                               |
| `visible_history_start_date_time` | string |          | `"2019-04-18T23:51:43.255Z"`                                                                                                                                         | Optional timestamp denoting how far back a conversation's history is shared with the member. ISO 8601 format.                             |

***

### `Microsoft Teams Update Team Schedule Shift`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TEAM\_SCHEDULE\_SHIFT**

Tool to update an existing shift in a Microsoft Teams team schedule. Use when you need to modify shift details like times, assigned user, or notes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                       | Description                                                                                                         |
| --------------------- | ------- | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `teamId`              | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | The unique identifier of the team (GUID format).                                                                    |
| `userId`              | string  |          | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`      | The unique identifier of the user assigned to this shift (GUID format).                                             |
| `shiftId`             | string  |     ✅    | `"SHFT_67bbbd0f-ad83-46a1-a94f-fe9d9f29fb84"` | The unique identifier of the shift to update (e.g., 'SHFT\_67bbbd0f-ad83-46a1-a94f-fe9d9f29fb84').                  |
| `draftShift`          | object  |          | —                                             | Represents the draft version of a shift that has not been shared with the team.                                     |
| `sharedShift`         | object  |          | —                                             | Represents the shared version of a shift that is visible to team members.                                           |
| `schedulingGroupId`   | string  |          | —                                             | The unique identifier of the scheduling group this shift belongs to. Set to null to remove from a scheduling group. |
| `isStagedForDeletion` | boolean |          | —                                             | Indicates whether the shift is staged for deletion. Set to true to mark for deletion.                               |

***

### `Microsoft Teams Update Time Off`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TIME\_OFF**

Tool to replace an existing timeOff entry in a team's schedule. Use when you need to update time off details including dates, reason, or status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                       | Description                                                                                                                                                            |
| --------------------- | ------- | :------: | --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId`              | string  |     ✅    | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`      | ID of the user assigned to this timeOff entry. Must be a valid user GUID (e.g., '43f0c14d-bca8-421f-b762-c3d8dd75be1f'). Required.                                     |
| `team_id`             | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`      | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                                           |
| `timeoff_id`          | string  |     ✅    | `"SHFT_d3b1de89-60b8-4e61-81b7-c55ab222c1ab"` | Unique identifier of the timeOff entry to replace. This is the ID of the timeOff resource in the team's schedule (e.g., 'SHFT\_d3b1de89-60b8-4e61-81b7-c55ab222c1ab'). |
| `draftTimeOff`        | object  |          | —                                             | Represents a version of the timeOff entry (shared or draft).                                                                                                           |
| `sharedTimeOff`       | object  |          | —                                             | Represents a version of the timeOff entry (shared or draft).                                                                                                           |
| `isStagedForDeletion` | boolean |          | —                                             | Indicates whether the timeOff is marked for deletion. This process is finalized when the schedule is shared. Optional.                                                 |

***

### `Microsoft Teams Update Time Off Reason`

Integration name: **MICROSOFT\_TEAMS\_UPDATE\_TIME\_OFF\_REASON**

Tool to update a time off reason in a team's schedule. Use when you need to modify the display name, icon, active status, or code of an existing time off reason.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                      | Description                                                                                                                                    |
| -------------------- | ------- | :------: | -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `code`               | string  |          | `"MED2026"`                                  | An alphanumeric code to represent an external identifier for this time off reason. Must be unique within the team. Maximum 100 characters.     |
| `team_id`            | string  |     ✅    | `"87b0560f-fc0d-4442-add8-b380ca926707"`     | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707').                   |
| `icon_type`          | string  |          | —                                            | Supported icon types for time off reasons.                                                                                                     |
| `is_active`          | boolean |          | —                                            | Whether the time off reason is active and can be used when creating or updating time off entries. Set to false to deactivate without deleting. |
| `display_name`       | string  |          | `"Medical Leave"`                            | The name of the time off reason. This is what will be displayed in the schedule.                                                               |
| `time_off_reason_id` | string  |     ✅    | `"TOR_027a2ccc-c0fe-46cd-98f7-f78203556140"` | Unique identifier of the time off reason to update. This is the ID of the timeOffReason resource in the team's schedule.                       |


# Miro

Your Toolhouse AI Worker can connect to Miro using 77 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](https://toolhouse.app/auth-connections?authkit_slugs=miro).

## Tools (77)

### `Miro Attach Tag To Item`

Integration name: **MIRO\_ATTACH\_TAG\_TO\_ITEM**

Tool to attach an existing tag to a specific item on a Miro board. Use when you need to associate a tag with an item after confirming the board, item, and tag IDs. Note that card and sticky note items can have up to 8 tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                           |
| ---------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------------------------------------- |
| `tag_id`   | string |     ✅    | `"3458764654995170028"` | Unique identifier of the tag to attach to the item.                                                   |
| `item_id`  | string |     ✅    | `"3458764654995933200"` | Unique identifier of the item to attach the tag to. Card and sticky note items can have up to 8 tags. |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier of the board containing the item.                                                   |

***

### `Miro Create App Card Item`

Integration name: **MIRO\_CREATE\_APP\_CARD\_ITEM**

Tool to add an app card item to a board. Use when you need to push a rich preview card with custom fields into a Miro board. Returns the created card; the card ID is nested under data.id in the response, not at the top level. Burst writes may trigger HTTP 429; honor the Retry-After header before retrying.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                          |
| ---------- | ------ | :------: | ------------ | ---------------------------------------------------- |
| `data`     | object |     ✅    | —            | Payload data for the app card                        |
| `style`    | object |          | —            | Styling options for an app card item.                |
| `parent`   | object |          | —            | Parent frame reference for nesting an app card item. |
| `board_id` | string |     ✅    | `"b1X2Yz3A"` | ID of the board to add the app card to               |
| `geometry` | object |          | —            | Geometrical dimensions for an app card item.         |
| `position` | object |          | —            | Board position for an app card item.                 |

***

### `Miro Create Board`

Integration name: **MIRO\_CREATE\_BOARD**

Tool to create a new board. Use when you need to set up a board with a specific name, description, and policies. Example: "Create a new board named Project Plan". If workspace board quota is reached, returns HTTP 400; use MIRO\_GET\_BOARDS to reuse an existing board instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                 | Description                                                                                                                                                                                                                                 |
| ------------- | ------ | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string |     ✅    | `"Project Roadmap"`                     | Name for the board, length between 1 and 60 characters.                                                                                                                                                                                     |
| `policy`      | object |          | —                                       | Defines permissions and sharing policies for the board. Accepts specific enum values only; invalid values return HTTP 400 with error code 2.0703. Valid `sharingPolicy` values include `private`, `view`, `comment`, `edit`, `team_access`. |
| `teamId`      | string |          | `"345876451234567890"`                  | Unique identifier (ID) of the team where the board will be created.                                                                                                                                                                         |
| `projectId`   | string |          | `"098765432109876543"`                  | Unique identifier (ID) of the project (space) to which the board belongs.                                                                                                                                                                   |
| `description` | string |          | `"Board for planning upcoming quarter"` | Description of the board, length between 0 and 300 characters.                                                                                                                                                                              |

***

### `Miro Create Card Item`

Integration name: **MIRO\_CREATE\_CARD\_ITEM**

Tool to create a card item on a Miro board. Use when you need to add task cards with titles, descriptions, due dates, and assignees.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                   |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------- |
| `data`     | object |          | —                | Core data for a card item.                                    |
| `style`    | object |          | —                | Styling options for a card item.                              |
| `parent`   | object |          | —                | Parent item reference for nesting a card.                     |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier of the board where the card will be created |
| `geometry` | object |          | —                | Geometrical dimensions for a card item.                       |
| `position` | object |          | —                | Board position for a card item.                               |

***

### `Miro Create Connector`

Integration name: **MIRO\_CREATE\_CONNECTOR**

Tool to create a connector (edge/arrow) that links two existing board items. Use after creating or locating the two endpoint items (shapes/cards/stickies) to establish visual relationships in flowcharts and diagrams. Both start and end items must be specified; connectors cannot be created with loose endpoints.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                          |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------ |
| `shape`     | string |     ✅    | `"straight"`     | Shape/style of the connector line.                                                   |
| `style`     | object |          | —                | Visual styling properties for the connector line and caption.                        |
| `endItem`   | object |     ✅    | —                | Defines the ending point of the connector. Must specify either snapTo or position.   |
| `board_id`  | string |     ✅    | `"uXjVN8aJ5Yk="` | Unique identifier of the board where the connector will be created.                  |
| `captions`  | array  |          | —                | Array of caption objects to display text along the connector.                        |
| `startItem` | object |     ✅    | —                | Defines the starting point of the connector. Must specify either snapTo or position. |

***

### `Miro Create Document Item`

Integration name: **MIRO\_CREATE\_DOCUMENT\_ITEM**

Tool to create a document item on a Miro board by providing a URL to the document. Use when you need to attach a document (PDF, DOC, etc.) to a board from a publicly accessible URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example         | Description                                                            |
| ---------- | ------ | :------: | --------------- | ---------------------------------------------------------------------- |
| `data`     | object |     ✅    | —               | Contains the document URL and optional title.                          |
| `parent`   | object |          | —               | Parent element reference for hierarchical positioning.                 |
| `board_id` | string |     ✅    | `"uXjVOxxxxxx"` | The unique identifier of the board where the document will be created. |
| `geometry` | object |          | —               | Geometric properties with fixed aspect ratio for the document item.    |
| `position` | object |          | —               | Positioning information for the document item on the board.            |

***

### `Miro Create Document Item Using File From Device`

Integration name: **MIRO\_CREATE\_DOCUMENT\_ITEM\_USING\_FILE\_FROM\_DEVICE**

Tool to create a document item on a Miro board using a URL to the document. Use when you need to add a document (PDF, DOC, etc.) to a board from a publicly accessible URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                              |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------ |
| `data`     | object |          | —                | Data containing document metadata like title.                            |
| `parent`   | object |          | —                | Parent frame information for the item.                                   |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the item.   |
| `geometry` | object |          | —                | Geometrical information about the item.                                  |
| `position` | object |          | —                | Position information for the document item on the board.                 |
| `resource` | object |     ✅    | —                | Document file to upload. Maximum file size: 6 MB. Supported format: PDF. |

***

### `Miro Create Embed Item`

Integration name: **MIRO\_CREATE\_EMBED\_ITEM**

Tool to create an embed item on a Miro board by providing a URL to embed content (YouTube videos, websites, etc.). Use when you need to add embedded content from external sources to a board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                            |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Contains information about the embed URL.                              |
| `parent`   | object |          | —                | Parent element reference for hierarchical positioning.                 |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the item. |
| `geometry` | object |          | —                | Geometrical information about the embed item.                          |
| `position` | object |          | —                | Positioning information for the embed item on the board.               |

***

### `Miro Create Frame Item`

Integration name: **MIRO\_CREATE\_FRAME\_ITEM**

Tool to add a frame item to a Miro board. Use frames to group and organize diagram regions (e.g., swimlanes, sections, slides).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                       |
| ---------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Contains frame-specific properties like title and format. This field is required. |
| `style`    | object |          | —                | Styling options for a frame item.                                                 |
| `parent`   | object |          | —                | Parent item reference for nesting a frame.                                        |
| `board_id` | string |     ✅    | `"uXjVOcKJl6Y="` | Unique identifier of the board where the frame will be added                      |
| `geometry` | object |          | —                | Geometrical dimensions for a frame item.                                          |
| `position` | object |          | —                | Board position for a frame item.                                                  |

***

### `Miro Create Frame Item2`

Integration name: **MIRO\_CREATE\_FRAME\_ITEM2**

DEPRECATED: Use MIRO\_CREATE\_FRAME\_ITEM instead. Tool to create a frame on a Miro board. Use when you need to group and organize content into sections or containers.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                               |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Contains frame item data, such as the title, frame type, or frame format. |
| `style`    | object |          | —                | Styling options for a frame item.                                         |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create a frame.     |
| `geometry` | object |          | —                | Geometrical dimensions for a frame item.                                  |
| `position` | object |          | —                | Board position for a frame item.                                          |

***

### `Miro Create Group`

Integration name: **MIRO\_CREATE\_GROUP**

Tool to create a group on a Miro board by grouping multiple items together. Use when you need to organize related board items (shapes, sticky notes, cards, etc.) into a single logical group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                          |
| ---------- | ------ | :------: | ---------------- | -------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Contains the data with item IDs to be grouped.                       |
| `board_id` | string |     ✅    | `"uXjVOfjmfkE="` | Unique identifier (ID) of the board where the group will be created. |

***

### `Miro Create Image Item Using Local File`

Integration name: **MIRO\_CREATE\_IMAGE\_ITEM\_USING\_LOCAL\_FILE**

Tool to create an image item on a Miro board by uploading a local image file. Use when you need to add an image from the user's device to a board, rather than referencing an external URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                  |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------------- |
| `data`     | object |          | —                | Core data for an image item.                                                 |
| `parent`   | object |          | —                | Parent item reference for nesting an image.                                  |
| `board_id` | string |     ✅    | `"uXjVJDefopU="` | Unique identifier (ID) of the board where you want to create the image item. |
| `geometry` | object |          | —                | Geometrical dimensions for an image item.                                    |
| `position` | object |          | —                | Board position for an image item.                                            |
| `resource` | object |     ✅    | —                | Image file to upload. Supported formats: PNG, JPG, JPEG, GIF, SVG, etc.      |

***

### `Miro Create Items In Bulk`

Integration name: **MIRO\_CREATE\_ITEMS\_IN\_BULK**

Tool to create multiple items on a Miro board in a single request. Use when you need to add 1-20 items (text, sticky notes, shapes, cards, frames, etc.) efficiently. Items are created atomically in one API call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                        |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------ |
| `items`    | array  |     ✅    | —                | List of items to create. You can create 1 to 20 items per request. |
| `board_id` | string |     ✅    | `"uXjVKv0eFoo="` | Unique identifier of the board where items will be created.        |

***

### `Miro Create Mindmap Node Experimental`

Integration name: **MIRO\_CREATE\_MINDMAP\_NODE\_EXPERIMENTAL**

Tool to create a mind map node on a Miro board. Use when building mind maps or organizing ideas visually in a hierarchical structure. This is an experimental endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                     |
| ---------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Core mind map node data including the node view with content.                   |
| `board_id` | string |     ✅    | `"uXjVJDefopU="` | Unique identifier (ID) of the board where you want to create the mind map node. |
| `geometry` | object |          | —                | Geometry for the mind map node.                                                 |
| `position` | object |          | —                | Position for the mind map node on the board.                                    |

***

### `Miro Create Shape Item`

Integration name: **MIRO\_CREATE\_SHAPE\_ITEM**

DEPRECATED: Use MIRO\_MIRO\_CREATE\_SHAPE\_ITEM2 instead. Tool to create a native Miro shape item (diagram node) on a board. Use when building diagrams, flowcharts, or architecture diagrams with shapes that can then be connected via MIRO\_CREATE\_CONNECTOR.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                     |
| ---------- | ------ | :------: | ---------------- | --------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Core shape data including content text and shape type.          |
| `style`    | object |          | —                | Styling options for a shape item.                               |
| `parent`   | object |          | —                | Parent item reference for nesting a shape.                      |
| `board_id` | string |     ✅    | `"uXjVKv0eFoo="` | Unique identifier of the board where the shape will be created. |
| `geometry` | object |          | —                | Geometrical dimensions for a shape item.                        |
| `position` | object |          | —                | Board position for a shape item.                                |

***

### `Miro Create Shape Item2`

Integration name: **MIRO\_CREATE\_SHAPE\_ITEM2**

Tool to create a shape item on a Miro board. Use when you need to add shapes (basic or flowchart) to a board with specific styling and positioning.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                            |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------- |
| `data`     | object |          | —                | Core data for a shape item.                                            |
| `style`    | object |          | —                | Styling options for a shape item.                                      |
| `parent`   | object |          | —                | Parent frame information for the shape item.                           |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the item. |
| `geometry` | object |          | —                | Geometrical information about the shape item.                          |
| `position` | object |          | —                | Position information for the shape item.                               |

***

### `Miro Create Sticky Note Item`

Integration name: **MIRO\_CREATE\_STICKY\_NOTE\_ITEM**

Tool to create a sticky note item on a Miro board. Use when you need to add a new sticky note with customizable content, color, shape, and position.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                                                                                                         |
| ---------- | ------ | :------: | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`     | object |          | —                | Contains sticky note item data, such as the content or shape of the sticky note.                                                                    |
| `style`    | object |          | —                | Contains information about the style of a sticky note item, such as the fill color or text alignment.                                               |
| `parent`   | object |          | —                | Contains information about the parent frame for the item.                                                                                           |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the item.                                                                              |
| `geometry` | object |          | —                | Contains geometrical information about the item. You can set either the width or height. You cannot set both the width and height at the same time. |
| `position` | object |          | —                | Contains information about the item's position on the board, such as its x coordinate, y coordinate, and the origin of the x and y coordinates.     |

***

### `Miro Create Tag`

Integration name: **MIRO\_CREATE\_TAG**

Tool to create a new tag on a Miro board. Use when you need to add a new tag with a specific title and color to categorize board items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example          | Description                                                                                       |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------- |
| `title`     | string |     ✅    | `"to do"`        | Text of the tag. Case-sensitive. Must be unique within the board.                                 |
| `boardId`   | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the tag.                             |
| `fillColor` | string |          | `"blue"`         | Fill color for the tag. Choose from predefined color options. Defaults to 'red' if not specified. |

***

### `Miro Create Text Item`

Integration name: **MIRO\_CREATE\_TEXT\_ITEM**

Tool to create a text item on a Miro board. Use when you need to add text content to a board, such as labels, notes, or annotations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                            |
| ---------- | ------ | :------: | ---------------- | ---------------------------------------------------------------------- |
| `data`     | object |     ✅    | —                | Contains text item data, such as the content.                          |
| `style`    | object |          | —                | Styling options for a text item.                                       |
| `parent`   | object |          | —                | Parent item reference for nesting a text item.                         |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board where you want to create the item. |
| `geometry` | object |          | —                | Geometrical dimensions for a text item.                                |
| `position` | object |          | —                | Board position for a text item.                                        |

***

### `Miro Delete App Card Item`

Integration name: **MIRO\_DELETE\_APP\_CARD\_ITEM**

Tool to delete an app card item from a board. Use when you need to remove an app card item created by your app after it is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                  |
| ---------- | ------ | :------: | ------------ | ------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"item456"`  | Unique identifier of the app card item to delete.            |
| `board_id` | string |     ✅    | `"board123"` | Unique identifier of the board containing the app card item. |

***

### `Miro Delete Card Item`

Integration name: **MIRO\_DELETE\_CARD\_ITEM**

Tool to delete a card item from a board. Use when you need to remove a card item from a Miro board after it is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444206061"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Delete Connector`

Integration name: **MIRO\_DELETE\_CONNECTOR**

Tool to delete a specific connector from a board. Use when you need to remove a connector (edge/arrow) between board items after confirming its board and connector IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                 | Description                                                                      |
| -------------- | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------- |
| `board_id`     | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the connector. |
| `connector_id` | string |     ✅    | `"3458764655444206087"` | Unique identifier (ID) of the connector that you want to delete.                 |

***

### `Miro Delete Document Item`

Integration name: **MIRO\_DELETE\_DOCUMENT\_ITEM**

Tool to delete a document item from a board. Use when you need to remove a document item (e.g., PDF or image) that is no longer relevant. Example: "Delete the document item with ID 'item456' from board 'board123'."

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                                  |
| ---------- | ------ | :------: | ------------ | ------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"item456"`  | Unique identifier of the document item to delete.            |
| `board_id` | string |     ✅    | `"board123"` | Unique identifier of the board containing the document item. |

***

### `Miro Delete Embed Item`

Integration name: **MIRO\_DELETE\_EMBED\_ITEM**

Tool to delete an embed item from a board. Use when you need to remove an embedded content item (e.g., YouTube video, website) that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444219535"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Delete Frame Item`

Integration name: **MIRO\_DELETE\_FRAME\_ITEM**

Tool to delete a frame item from a Miro board. Use when you need to remove a frame that groups or organizes content on the board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                  |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444206155"` | Unique identifier (ID) of the frame that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the frame. |

***

### `Miro Delete Group`

Integration name: **MIRO\_DELETE\_GROUP**

Tool to delete a group from a board. Use when you need to remove a group and optionally its items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                 | Description                                                                                |
| -------------- | ------- | :------: | ----------------------- | ------------------------------------------------------------------------------------------ |
| `board_id`     | string  |     ✅    | `"uXjVOfjmfkE="`        | Unique identifier (ID) of the board.                                                       |
| `group_id`     | string  |     ✅    | `"3858764584681774600"` | Unique identifier (ID) of the group.                                                       |
| `delete_items` | boolean |     ✅    | `false`                 | Indicates whether the items should be removed. Set to `true` to delete items in the group. |

***

### `Miro Delete Image Item`

Integration name: **MIRO\_DELETE\_IMAGE\_ITEM**

Tool to delete an image item from a board. Use when you need to remove an image that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764642917707441"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Delete Item`

Integration name: **MIRO\_DELETE\_ITEM**

Tool to delete a specific item from a board. Use when you need to remove an item (e.g., shape, sticky note) after confirming its board and item IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                         |
| ---------- | ------ | :------: | ------------ | --------------------------------------------------- |
| `item_id`  | string |     ✅    | `"item456"`  | Unique identifier of the item to delete.            |
| `board_id` | string |     ✅    | `"board123"` | Unique identifier of the board containing the item. |

***

### `Miro Delete Mindmap Node Experimental`

Integration name: **MIRO\_DELETE\_MINDMAP\_NODE\_EXPERIMENTAL**

Tool to delete a mind map node from a board. Use when you need to remove a mind map node after confirming its board and item IDs. This is an experimental endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655058733473"` | Unique identifier (ID) of the mind map node that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the mind map node. |

***

### `Miro Delete Shape Item`

Integration name: **MIRO\_DELETE\_SHAPE\_ITEM**

Tool to delete a shape item from a board. Use when you need to remove a specific shape that is no longer needed after confirming its board and item IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444219462"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Delete Sticky Note Item`

Integration name: **MIRO\_DELETE\_STICKY\_NOTE\_ITEM**

Tool to delete a sticky note item from a board. Use when you need to remove a sticky note that is no longer needed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444040865"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Delete Tag`

Integration name: **MIRO\_DELETE\_TAG**

Tool to delete a specific tag from a board. Use when you need to remove a tag after confirming its board and tag IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                  |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------------- |
| `tag_id`   | string |     ✅    | `"3458764654997615216"` | Unique identifier (ID) of the tag that you want to delete.                   |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board where you want to delete a specific tag. |

***

### `Miro Delete Text Item`

Integration name: **MIRO\_DELETE\_TEXT\_ITEM**

Tool to delete a text item from a board. Use when you need to remove a text item after confirming its board and item IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                 |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444206052"` | Unique identifier (ID) of the item that you want to delete.                 |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to delete the item. |

***

### `Miro Get All Groups`

Integration name: **MIRO\_GET\_ALL\_GROUPS**

Tool to retrieve all groups on a Miro board with cursor-based pagination. Use when you need to list all groups and their associated items on a board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example          | Description                                                                                                |
| ---------- | ------- | :------: | ---------------- | ---------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | `10`             | The maximum number of groups to return at one time. Default is 10, minimum is 10, maximum is 50.           |
| `cursor`   | string  |          | `"Y3Vyc29yOjE="` | Cursor for pagination. Use the cursor value from a previous response to retrieve the next page of results. |
| `board_id` | string  |     ✅    | `"uXjVOfjmfkE="` | Unique identifier (ID) of the board.                                                                       |

***

### `Miro Get App Card Item2`

Integration name: **MIRO\_GET\_APP\_CARD\_ITEM2**

Tool to retrieve a specific app card item by its ID from a Miro board. Use when you need to get the details of an existing app card item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444219403"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Board`

Integration name: **MIRO\_GET\_BOARD**

DEPRECATED: Use MIRO\_GET\_SPECIFIC\_BOARD instead. Tool to retrieve details of a specific board. Use when you have a board ID and need to fetch its metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                |
| ---------- | ------ | :------: | ------------ | ------------------------------------------ |
| `board_id` | string |     ✅    | `"board123"` | Unique identifier of the board to retrieve |

***

### `Miro Get Board Items`

Integration name: **MIRO\_GET\_BOARD\_ITEMS**

Tool to list items on a Miro board (shapes, stickies, cards, etc.) with pagination. Use when you need to page through board elements for analytics or reporting. Re-fetch before bulk updates to avoid stale item IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                         | Description                                                                                                                                                                      |
| ---------- | ------- | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`     | string  |          | `"sticky_note"`                 | Filter by item type. Note: 'connector' is not supported; use the separate Get Connectors action instead.                                                                         |
| `limit`    | integer |          | `50`                            | Maximum number of items to return per page (10-50)                                                                                                                               |
| `cursor`   | string  |          | `"eyJjdXJzb3IiOiIxMjM0NTY3In0"` | Cursor for paginating results; use the value from a prior response. Loop: pass the cursor from each response into the next call; stop when cursor is null (all items retrieved). |
| `board_id` | string  |     ✅    | `"b1X2Yz3A"`                    | Unique identifier of the board to retrieve items from                                                                                                                            |

***

### `Miro Get Board Members`

Integration name: **MIRO\_GET\_BOARD\_MEMBERS**

Tool to retrieve a list of members for a board. Use when you need to list all users with access to a board after confirming its ID. Results are scoped to the authenticated user's permissions; members or boards inaccessible to that user will not appear in the response.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example          | Description                                               |
| ---------- | ------- | :------: | ---------------- | --------------------------------------------------------- |
| `limit`    | integer |          | `50`             | Number of results per page (max 100).                     |
| `cursor`   | string  |          | `"Y3Vyc29yOjE="` | Cursor for pagination, used to retrieve subsequent pages. |
| `board_id` | string  |     ✅    | `"board_abc123"` | Unique identifier of the board.                           |

***

### `Miro Get Boards`

Integration name: **MIRO\_GET\_BOARDS**

DEPRECATED: Use MIRO\_MIRO\_GET\_BOARDS2 instead. Tool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords. Only boards accessible to the authenticated user are returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                | Description                                                                                          |
| ------------ | ------- | :------: | ---------------------- | ---------------------------------------------------------------------------------------------------- |
| `sort`       | string  |          | `"last_modified"`      | Sort order of the results.                                                                           |
| `limit`      | integer |          | `50`                   | Number of boards to return per page (1-50). Values above 50 cause a 400 error.                       |
| `owner`      | string  |          | `"user_abc123"`        | Filter boards by owner user ID.                                                                      |
| `query`      | string  |          | `"Roadmap"`            | Search query to filter boards by name.                                                               |
| `offset`     | integer |          | `0`                    | Offset for pagination. Increment by `limit` value until results are exhausted to retrieve all pages. |
| `team_id`    | string  |          | `"345876451234567890"` | Filter boards by team ID.                                                                            |
| `project_id` | string  |          | `"098765432109876543"` | Filter boards by project (space) ID.                                                                 |

***

### `Miro Get Boards2`

Integration name: **MIRO\_GET\_BOARDS2**

Tool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords with full pagination support.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                 | Description                                                                                                                                                                                                                                                                                                                                        |
| ------------ | ------- | :------: | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sort`       | string  |          | `"last_modified"`       | Sort order in which you want to view the result set. Options `last_created` and `alphabetically` are applicable only when you search for boards by team. Values: `default`, `last_modified`, `last_opened`, `last_created`, `alphabetically`. Default: `default` (If `team_id` is present, `last_created`. Otherwise, `last_opened`).              |
| `limit`      | integer |          | `20`                    | Maximum number of boards to retrieve (1-50). Default: 20                                                                                                                                                                                                                                                                                           |
| `owner`      | string  |          | `"3074457353169356300"` | Retrieves a list of boards that belong to a specific owner ID. You must pass the owner ID (for example, 3074457353169356300), not the owner name. You can use the 'owner' parameter with the `query` parameter to narrow down the board search results. Note that if you pass the `team_id` in the same request, the `owner` parameter is ignored. |
| `query`      | string  |          | `"beta"`                | Retrieves a list of boards that contain the query string provided in the board name or board description. You can use the `query` parameter with the owner parameter to narrow down the board search results.                                                                                                                                      |
| `offset`     | integer |          | `0`                     | Zero-based offset of the first item in the collection. Default: 0                                                                                                                                                                                                                                                                                  |
| `team_id`    | string  |          | `"345876451234567890"`  | The team\_id for which you want to retrieve the list of boards. If this parameter is sent in the request, the `query` and `owner` parameters are ignored.                                                                                                                                                                                          |
| `project_id` | string  |          | `"098765432109876543"`  | The `project_id` for which you want to retrieve the list of boards. If this parameter is sent in the request, the `query` and `owner` parameters are ignored.                                                                                                                                                                                      |

***

### `Miro Get Card Item`

Integration name: **MIRO\_GET\_CARD\_ITEM**

Tool to retrieve a specific card item from a Miro board. Use when you need to fetch details of an existing card item by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444219402"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Connector`

Integration name: **MIRO\_GET\_CONNECTOR**

Tool to retrieve a specific connector by its ID. Use when you need details about an existing connector on a board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                 | Description                                                                               |
| -------------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------------------------- |
| `board_id`     | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific connector. |
| `connector_id` | string |     ✅    | `"3458764575781967065"` | Unique identifier (ID) of the connector that you want to retrieve.                        |

***

### `Miro Get Connectors`

Integration name: **MIRO\_GET\_CONNECTORS**

Tool to retrieve a list of connectors on a board. Use after confirming the board ID and when you need to page through connector items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example      | Description                                                                                                                                                                                                      |
| ---------- | ------- | :------: | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | `10`         | Maximum number of results to return per call (10 to 50). Defaults to 10.                                                                                                                                         |
| `cursor`   | string  |          | `"foo"`      | Cursor for pagination to retrieve the next page of connectors. Pass the cursor returned by the previous response to fetch the next page; when the response returns a null cursor, all pages have been retrieved. |
| `board_id` | string  |     ✅    | `"board123"` | Unique identifier of the board to retrieve connectors from.                                                                                                                                                      |

***

### `Miro Get Document Item`

Integration name: **MIRO\_GET\_DOCUMENT\_ITEM**

Tool to retrieve a specific document item from a Miro board by its ID. Use when you need to get details about an existing document item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655059464823"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Embed Item`

Integration name: **MIRO\_GET\_EMBED\_ITEM**

Tool to retrieve a specific embed item from a board by its ID. Use when you need details of an existing embedded content item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444206019"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Frame Item`

Integration name: **MIRO\_GET\_FRAME\_ITEM**

Tool to retrieve a specific frame item from a Miro board. Use when you need to fetch details of an existing frame by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                           |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764655444219664"` | Unique identifier (ID) of the frame that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board that contains the frame that you want to retrieve |

***

### `Miro Get Group By Id`

Integration name: **MIRO\_GET\_GROUP\_BY\_ID**

Tool to retrieve a specific group by its ID. Use when you need to get details about a group on a Miro board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------ |
| `board_id` | string |     ✅    | `"uXjVOfjmfkE="`        | Unique identifier (ID) of the board. |
| `group_id` | string |     ✅    | `"3858764584681774600"` | Unique identifier (ID) of the group. |

***

### `Miro Get Image Item`

Integration name: **MIRO\_GET\_IMAGE\_ITEM**

Tool to retrieve a specific image item from a board. Use when you need to get details about an existing image item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764575781731716"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Item Tags`

Integration name: **MIRO\_GET\_ITEM\_TAGS**

Tool to retrieve tags attached to a specific item on a Miro board. Use when you need to get the tags associated with a particular item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                          |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------- |
| `item_id`  | string |     ✅    | `"3458764541654614172"` | Unique identifier of the item to retrieve tags from. |
| `board_id` | string |     ✅    | `"uXjVP4I8Wj8="`        | Unique identifier of the board containing the item.  |

***

### `Miro Get Mindmap Node Experimental`

Integration name: **MIRO\_GET\_MINDMAP\_NODE\_EXPERIMENTAL**

Tool to retrieve a specific mind map node from a board. Use when you need to get details about a mind map node by its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764654995948672"` | Unique identifier (ID) of the mind map node that you want to retrieve.               |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a mind map node. |

***

### `Miro Get Mindmap Nodes Experimental`

Integration name: **MIRO\_GET\_MINDMAP\_NODES\_EXPERIMENTAL**

Tool to retrieve mind map nodes from a Miro board. Use when you need to access the structure and content of mind maps on a board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                         | Description                                                                                                             |
| ---------- | ------ | :------: | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `limit`    | string |          | `"10"`                          | Maximum number of results returned.                                                                                     |
| `cursor`   | string |          | `"eyJjdXJzb3IiOiIxMjM0NTY3In0"` | Points to the next portion of the results set. Use the cursor value from a previous response to retrieve the next page. |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`                | Unique identifier (ID) of the board from which you want to retrieve mind map nodes.                                     |

***

### `Miro Get Oembed`

Integration name: **MIRO\_GET\_OEMBED**

Tool to retrieve oEmbed data for a Miro board. Use when you need to generate embeddable HTML code for a board or get board metadata in oEmbed format.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                                     | Description                                                                                                                                               |
| ----------- | ------- | :------: | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`       | string  |     ✅    | `"https://miro.com/app/board/uXjVJ_fzYUs="` | The URL pointing to the Miro board resource to return as oEmbed data. Must be a valid Miro board URL (e.g., <https://miro.com/app/board/uXjVJ\\_fzYUs=>). |
| `format`    | string  |          | `"json"`                                    | Specifies the return format of the response. Only 'json' is supported. Defaults to 'json' if not specified.                                               |
| `maxwidth`  | integer |          | `800`                                       | The maximum width available to the embed, in pixels. The oEmbed response will respect this constraint.                                                    |
| `referrer`  | string  |          | `"https://example.com/page"`                | The URL pointing to the source of the request. Used to track where the embed will be displayed.                                                           |
| `maxheight` | integer |          | `600`                                       | The maximum height available to the embed, in pixels. The oEmbed response will respect this constraint.                                                   |

***

### `Miro Get Shape Item`

Integration name: **MIRO\_GET\_SHAPE\_ITEM**

Tool to retrieve a specific shape item from a Miro board by its ID. Use when you need to get details of an existing shape item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444303695"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Specific Board`

Integration name: **MIRO\_GET\_SPECIFIC\_BOARD**

Tool to retrieve detailed information about a specific board by its ID. Use when you need to fetch complete metadata including team, permissions, owner, and modification details for a board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example          | Description                                                    |
| ---------- | ------ | :------: | ---------------- | -------------------------------------------------------------- |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="` | Unique identifier (ID) of the board that you want to retrieve. |

***

### `Miro Get Specific Board Member`

Integration name: **MIRO\_GET\_SPECIFIC\_BOARD\_MEMBER**

Tool to retrieve details of a specific board member. Use when you have a board ID and board member ID and need to get that member's role and information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                 | Description                                                                 |
| ----------------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------- |
| `board_id`        | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board to which the board member belongs.      |
| `board_member_id` | string |     ✅    | `"3458764569137445003"` | Unique identifier (ID) of the board member whose role you want to retrieve. |

***

### `Miro Get Specific Item`

Integration name: **MIRO\_GET\_SPECIFIC\_ITEM**

Tool to retrieve a specific item from a Miro board by its ID. Use when you need details about a particular board item (sticky note, shape, card, frame, etc.).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764575781966992"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Sticky Note Item`

Integration name: **MIRO\_GET\_STICKY\_NOTE\_ITEM**

Tool to retrieve a specific sticky note item from a board by its ID. Use when you need to get the details of an existing sticky note item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444303666"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro Get Tag`

Integration name: **MIRO\_GET\_TAG**

Tool to retrieve details of a specific tag on a board. Use when you have a board ID and tag ID and need its metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example           | Description                                           |
| ---------- | ------ | :------: | ----------------- | ----------------------------------------------------- |
| `tag_id`   | string |     ✅    | `"tag_123abcXYZ"` | Unique identifier of the tag to retrieve.             |
| `board_id` | string |     ✅    | `"board123"`      | Unique identifier of the board where the tag resides. |

***

### `Miro Get Text Item`

Integration name: **MIRO\_GET\_TEXT\_ITEM**

Tool to retrieve a specific text item from a Miro board by its ID. Use when you need to get the details of an existing text item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                          |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------ |
| `item_id`  | string |     ✅    | `"3458764655444303769"` | Unique identifier (ID) of the item that you want to retrieve.                        |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board from which you want to retrieve a specific item. |

***

### `Miro List Board Tags`

Integration name: **MIRO\_LIST\_BOARD\_TAGS**

Tool to list all tags on a Miro board. Use when you need to discover tag IDs, titles, or colors before performing tag operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                         | Description                                                         |
| ---------- | ------- | :------: | ------------------------------- | ------------------------------------------------------------------- |
| `limit`    | integer |          | `50`                            | Maximum number of tags to return per page (min 1).                  |
| `cursor`   | string  |          | `"eyJjdXJzb3IiOiIxMjM0NTY3In0"` | Cursor for paginating results; use the value from a prior response. |
| `board_id` | string  |     ✅    | `"uXjVKbZpNkg="`                | Unique identifier of the board to retrieve tags from.               |

***

### `Miro List Organizations`

Integration name: **MIRO\_LIST\_ORGANIZATIONS**

Retrieves the organization associated with the current access token. Note: Miro's API does not have an endpoint to list all organizations a user has access to. This action uses the /v1/oauth-token endpoint to return the single organization context associated with the authenticated token, along with team and user information. For Enterprise users who need to work with organizations, use organization-specific endpoints like MIRO\_GET\_ORGANIZATION\_MEMBERS which require an org\_id parameter.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Miro Share Board`

Integration name: **MIRO\_SHARE\_BOARD**

Tool to share a board by inviting users via email. Use when you need to grant access to a board by sending email invitations to new members. You can invite up to 20 users per call and assign them roles (viewer, commenter, editor, coowner, or owner).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                            | Description                                                                                                                                                                                                                                                                                                  |
| ---------- | ------ | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `role`     | string |          | `"viewer"`                                         | Role of the board members being invited. Options: viewer (view only), commenter (view and comment), editor (view, comment, and edit), coowner (full access except changing owner), or owner (full access including changing owner). Note: Inviting users with role 'owner' has the same effect as 'coowner'. |
| `emails`   | array  |     ✅    | `["user1@example.com","user2@example.com"]`        | Email addresses of the users you want to invite to the board. You can invite up to 20 members per call.                                                                                                                                                                                                      |
| `message`  | string |          | `"Join this board to collaborate on our project!"` | Optional message that will be sent in the invitation email to the invited users.                                                                                                                                                                                                                             |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`                                   | Unique identifier (ID) of the board to which you want to invite members.                                                                                                                                                                                                                                     |

***

### `Miro Update App Card Item2`

Integration name: **MIRO\_UPDATE\_APP\_CARD\_ITEM2**

Tool to update an app card item on a Miro board. Use when you need to modify properties of an existing app card such as title, description, status, style, position, or geometry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                            |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------- |
| `data`     | object |          | —                       | Core data for an app card item.                                        |
| `style`    | object |          | —                       | Styling information for an app card item.                              |
| `parent`   | object |          | —                       | Parent frame information for an app card item.                         |
| `item_id`  | string |     ✅    | `"3458764655444603322"` | Unique identifier (ID) of the item that you want to update.            |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board where you want to update the item. |
| `geometry` | object |          | —                       | Geometrical information about an app card item.                        |
| `position` | object |          | —                       | Position information for an app card item.                             |

***

### `Miro Update Board`

Integration name: **MIRO\_UPDATE\_BOARD**

Tool to update properties of a specific board. Use when you have a board ID and need to modify its name, description, or permissions policy. Use after confirming the board exists.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                       | Description                                                                                                                                                                                      |
| ------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`        | string |          | `"Project Roadmap Updated"`                   | New name for the board (1-60 characters)                                                                                                                                                         |
| `policy`      | object |          | —                                             | Defines permissions and sharing policies for the board Contains `sharingPolicy` subfield accepting specific enum values (e.g., `private`, `view`, `comment`, `edit`); invalid values return 400. |
| `teamId`      | string |          | `"345876451234567890"`                        | ID of the team where the board should be placed                                                                                                                                                  |
| `boardId`     | string |     ✅    | `"board123"`                                  | Unique identifier (ID) of the board to update                                                                                                                                                    |
| `projectId`   | string |          | `"098765432109876543"`                        | ID of the project (space) to which the board should be added                                                                                                                                     |
| `description` | string |          | `"Updated board description for Q3 planning"` | New description for the board (up to 300 characters)                                                                                                                                             |

***

### `Miro Update Board Member`

Integration name: **MIRO\_UPDATE\_BOARD\_MEMBER**

Tool to update the role of a specific board member. Use when you have a board ID and board member ID and need to change that member's permissions or role on the board.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                 | Description                                                                                                                                                                                                        |
| ----------------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `role`            | string |          | `"editor"`              | Role of the board member. Can be viewer (view only), commenter (view and comment), editor (view, comment, and edit), coowner (full access except changing owner), or owner (full access including changing owner). |
| `board_id`        | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board for which you want to update the role of the board member.                                                                                                                     |
| `board_member_id` | string |     ✅    | `"3458764569137445003"` | Unique identifier (ID) of the board member whose role you want to update.                                                                                                                                          |

***

### `Miro Update Card Item`

Integration name: **MIRO\_UPDATE\_CARD\_ITEM**

Tool to update a card item on a Miro board. Use when you need to modify properties of an existing card item such as title, description, due date, assignee, style, position, or geometry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                  |
| ---------- | ------ | :------: | ----------------------- | -------------------------------------------------------------------------------------------- |
| `data`     | object |          | —                       | Contains card item data to update, such as the title, description, due date, or assignee ID. |
| `style`    | object |          | —                       | Contains information about the style of a card item to update, such as the card theme.       |
| `parent`   | object |          | —                       | Contains information about the parent frame for the item.                                    |
| `item_id`  | string |     ✅    | `"3458764654995471486"` | Unique identifier (ID) of the item that you want to update.                                  |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board where you want to update the item.                       |
| `geometry` | object |          | —                       | Contains geometrical information to update about the item, such as its width or height.      |
| `position` | object |          | —                       | Contains position information to update for the item on the board.                           |

***

### `Miro Update Connector`

Integration name: **MIRO\_UPDATE\_CONNECTOR**

Tool to update an existing connector on a Miro board. Use when you need to modify connector properties such as shape, style, captions, or endpoint attachments. Only provided fields will be updated.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                 | Description                                                                       |
| -------------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------------- |
| `shape`        | string |          | `"curved"`              | The path type of the connector line, defines curvature. Default: curved.          |
| `style`        | object |          | —                       | Visual styling properties for the connector line and caption.                     |
| `endItem`      | object |          | —                       | Defines the starting or ending point of a connector.                              |
| `board_id`     | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board for which you want to update the connector.   |
| `captions`     | array  |          | —                       | Blocks of text you want to display on the connector. Maximum 20 captions allowed. |
| `startItem`    | object |          | —                       | Defines the starting or ending point of a connector.                              |
| `connector_id` | string |     ✅    | `"3458764575781967065"` | Unique identifier (ID) of the connector that you want to update.                  |

***

### `Miro Update Document Item`

Integration name: **MIRO\_UPDATE\_DOCUMENT\_ITEM**

Tool to update a document item on a Miro board. Use when you need to modify properties of an existing document item such as URL, title, position, or geometry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                               |
| ---------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------------------------- |
| `data`     | object |          | —                       | Data for document URL information.                                                        |
| `parent`   | object |          | —                       | Parent element reference for hierarchical positioning.                                    |
| `item_id`  | string |     ✅    | `"3458764655444616717"` | Unique identifier (ID) of the item that you want to update.                               |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the item.                    |
| `geometry` | object |          | —                       | Geometric properties for the document item. You can set either width or height, not both. |
| `position` | object |          | —                       | Positioning information for the document item on the board.                               |

***

### `Miro Update Embed Item`

Integration name: **MIRO\_UPDATE\_EMBED\_ITEM**

Tool to update an embed item on a board. Use when you need to modify properties of an existing embedded content item such as position, display mode, or URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                         |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `data`     | object |          | —                       | Data fields for updating the embed item.                                                                            |
| `parent`   | object |          | —                       | Contains information about the parent frame for the item.                                                           |
| `item_id`  | string |     ✅    | `"3458764654995471216"` | Unique identifier (ID) of the item that you want to update.                                                         |
| `board_id` | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board where you want to update the item.                                              |
| `geometry` | object |          | —                       | Contains geometrical information about the item. You can set either width or height, but not both at the same time. |
| `position` | object |          | —                       | Contains information about the item's position on the board.                                                        |

***

### `Miro Update Frame Item`

Integration name: **MIRO\_UPDATE\_FRAME\_ITEM**

Tool to update a frame item on a Miro board. Use when you need to modify properties of an existing frame such as title, position, size, or styling. Include only fields to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                             |
| ---------- | ------ | :------: | ----------------------- | ----------------------------------------------------------------------- |
| `data`     | object |          | —                       | Core data for updating a frame item.                                    |
| `style`    | object |          | —                       | Styling options for updating a frame item.                              |
| `item_id`  | string |     ✅    | `"3458764655444496605"` | Unique identifier (ID) of the frame that you want to update.            |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the frame. |
| `geometry` | object |          | —                       | Geometrical dimensions for updating a frame item.                       |
| `position` | object |          | —                       | Board position for updating a frame item.                               |

***

### `Miro Update Group`

Integration name: **MIRO\_UPDATE\_GROUP**

Tool to update a group on a Miro board with new items. Use when you need to change which items belong to an existing group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                  |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------ |
| `data`     | object |     ✅    | —                       | Contains the data with item IDs to be included in the group. |
| `board_id` | string |     ✅    | `"uXjVOfjmfkE="`        | Unique identifier (ID) of the board.                         |
| `group_id` | string |     ✅    | `"3858764584681774600"` | Unique identifier (ID) of the group to update.               |

***

### `Miro Update Image Item`

Integration name: **MIRO\_UPDATE\_IMAGE\_ITEM**

Tool to update an existing image item on a board. Use when you need to modify properties of an existing image item such as title, URL, position, or geometry.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                                    |
| ---------- | ------ | :------: | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `data`     | object |          | —                       | Data fields to update for the image item.                                                                                      |
| `parent`   | object |          | —                       | Contains information about the parent frame for the item.                                                                      |
| `item_id`  | string |     ✅    | `"3458764655444615954"` | Unique identifier (ID) of the item that you want to update.                                                                    |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the item.                                                         |
| `geometry` | object |          | —                       | Contains geometrical information about the item. You can set either the width or height, you cannot set both at the same time. |
| `position` | object |          | —                       | Contains information about the item's position on the board.                                                                   |

***

### `Miro Update Item Position Or Parent`

Integration name: **MIRO\_UPDATE\_ITEM\_POSITION\_OR\_PARENT**

Tool to update an item's position or parent frame on a Miro board. Use when you need to move an item to a new location or assign it to a different parent frame.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                            |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------- |
| `parent`   | object |          | —                       | Parent frame information for updating an item on the board.            |
| `item_id`  | string |     ✅    | `"3458764655444496928"` | Unique identifier (ID) of the item that you want to update.            |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the item. |
| `position` | object |          | —                       | Position information for updating an item on the board.                |

***

### `Miro Update Shape Item`

Integration name: **MIRO\_UPDATE\_SHAPE\_ITEM**

Tool to update an existing shape item on a Miro board. Use when you need to modify properties of a shape such as content, style, position, geometry, or parent. Include only the fields you want to change.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                               |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------- |
| `data`     | object |          | —                       | Core data for updating a shape item.                      |
| `style`    | object |          | —                       | Styling options for updating a shape item.                |
| `parent`   | object |          | —                       | Parent item reference for updating a shape's nesting.     |
| `item_id`  | string |     ✅    | `"3458764655444615983"` | Unique identifier of the shape item to update.            |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier of the board containing the shape item. |
| `geometry` | object |          | —                       | Geometrical dimensions for updating a shape item.         |
| `position` | object |          | —                       | Board position for updating a shape item.                 |

***

### `Miro Update Sticky Note Item`

Integration name: **MIRO\_UPDATE\_STICKY\_NOTE\_ITEM**

Tool to update a sticky note item on a Miro board. Use when you need to modify the content, style, position, geometry, or parent of an existing sticky note.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                                                                                                         |
| ---------- | ------ | :------: | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `data`     | object |          | —                       | Contains sticky note item data, such as the content or shape of the sticky note.                                                                    |
| `style`    | object |          | —                       | Contains information about the style of a sticky note item, such as the fill color or text alignment.                                               |
| `parent`   | object |          | —                       | Contains information about the parent frame for the item.                                                                                           |
| `item_id`  | string |     ✅    | `"3458764655444615971"` | Unique identifier (ID) of the item that you want to update.                                                                                         |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the item.                                                                              |
| `geometry` | object |          | —                       | Contains geometrical information about the item. You can set either the width or height. You cannot set both the width and height at the same time. |
| `position` | object |          | —                       | Contains information about the item's position on the board, such as its x coordinate, y coordinate.                                                |

***

### `Miro Update Tag`

Integration name: **MIRO\_UPDATE\_TAG**

Tool to update a tag on a board. Use when you need to modify a tag's title or color. At least one field (title or fillColor) should be provided to update.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                 | Description                                                                  |
| ----------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------------- |
| `title`     | string |          | `"done"`                | Text of the tag. Case-sensitive. Must be unique within the board.            |
| `tag_id`    | string |     ✅    | `"3458764654994292201"` | Unique identifier (ID) of the tag that you want to update.                   |
| `board_id`  | string |     ✅    | `"uXjVJ_fzYUs="`        | Unique identifier (ID) of the board where you want to update a specific tag. |
| `fillColor` | string |          | `"magenta"`             | Fill color for the tag. Choose from predefined color options.                |

***

### `Miro Update Text Item`

Integration name: **MIRO\_UPDATE\_TEXT\_ITEM**

Tool to update a text item on a Miro board. Use when you need to modify the content, style, position, or other properties of an existing text item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                 | Description                                                            |
| ---------- | ------ | :------: | ----------------------- | ---------------------------------------------------------------------- |
| `data`     | object |          | —                       | Contains text item data to update.                                     |
| `style`    | object |          | —                       | Contains information about the style of a text item to update.         |
| `parent`   | object |          | —                       | Contains information about the parent frame for the item.              |
| `item_id`  | string |     ✅    | `"3458764655444615965"` | Unique identifier (ID) of the item that you want to update.            |
| `board_id` | string |     ✅    | `"uXjVJDefopU="`        | Unique identifier (ID) of the board where you want to update the item. |
| `geometry` | object |          | —                       | Contains geometrical information about the item to update.             |
| `position` | object |          | —                       | Contains information about the item's position on the board to update. |

***


# Monday

Your Toolhouse AI Worker can connect to Monday using 125 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](https://toolhouse.app/auth-connections?authkit_slugs=monday).

## Tools (125)

### `Monday Account Trigger Statistics`

Integration name: **MONDAY\_ACCOUNT\_TRIGGER\_STATISTICS**

Tool to retrieve statistics about account-level triggers and automations. Use when you need to monitor trigger execution metrics including success rates, failure counts, and total execution numbers.

**Parameters**

*No parameters required.*

***

### `Monday Activate Users`

Integration name: **MONDAY\_ACTIVATE\_USERS**

Tool to activate or reactivate users in a Monday.com account. Use when you need to enable user accounts that were previously deactivated. Cannot be used to activate your own account. Requires account management permissions.

**Parameters**

| Parameter  | Type  | Required | Example               | Description                                                        |
| ---------- | ----- | :------: | --------------------- | ------------------------------------------------------------------ |
| `user_ids` | array |     ✅    | `[77854569,12345678]` | List of user IDs to activate. Maximum of 200 user IDs per request. |

***

### `Monday Add Subscribers To Board`

Integration name: **MONDAY\_ADD\_SUBSCRIBERS\_TO\_BOARD**

Tool to add users as subscribers to a Monday.com board. Use when granting subscriber or owner access to specific users on a board. Note: This mutation is deprecated - consider using add\_users\_to\_board instead.

**Parameters**

| Parameter  | Type    | Required | Example               | Description                                                                                                |
| ---------- | ------- | :------: | --------------------- | ---------------------------------------------------------------------------------------------------------- |
| `kind`     | string  |          | `"subscriber"`        | Role for the added users on the board. Possible values: 'owner' or 'subscriber'. Defaults to 'subscriber'. |
| `board_id` | integer |     ✅    | `5025528617`          | The board's unique identifier.                                                                             |
| `user_ids` | array   |     ✅    | `[77854569,97263478]` | Array of user unique identifiers to add as subscribers to the board.                                       |

***

### `Monday Add Subscribers To Object`

Integration name: **MONDAY\_ADD\_SUBSCRIBERS\_TO\_OBJECT**

Tool to add subscribers or owners to a monday.com object. Use when you need to grant users notification access or ownership permissions to a specific object.

**Parameters**

| Parameter  | Type    | Required | Example        | Description                                                                                                                                                    |
| ---------- | ------- | :------: | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`       | integer |     ✅    | `5025528574`   | The unique identifier of the object to add subscribers to.                                                                                                     |
| `kind`     | string  |          | `"subscriber"` | The role to assign to users. Defaults to 'subscriber' if not specified. 'owner' grants full control permissions, 'subscriber' grants notification access only. |
| `user_ids` | array   |     ✅    | `[77854569]`   | Array of user identifiers to add as subscribers.                                                                                                               |

***

### `Monday Add Teams To Board`

Integration name: **MONDAY\_ADD\_TEAMS\_TO\_BOARD**

Tool to add teams to a Monday.com board with specified permission levels. Use when you need to associate teams with a board as owners or subscribers.

**Parameters**

| Parameter  | Type    | Required | Example           | Description                                                                                                                            |
| ---------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| `kind`     | string  |          | `"subscriber"`    | Role for the added teams on the board. Possible values: 'owner' or 'subscriber'. If not specified, teams will be added as subscribers. |
| `board_id` | integer |     ✅    | `5025528617`      | Unique identifier of an existing Monday.com board.                                                                                     |
| `team_ids` | array   |     ✅    | `[111222,333444]` | List of unique identifiers for existing Monday.com teams. Pass -1 to subscribe all account members to the board.                       |

***

### `Monday Add Users To Board`

Integration name: **MONDAY\_ADD\_USERS\_TO\_BOARD**

Adds users to a Monday.com board with a specified role.

**Parameters**

| Parameter  | Type    | Required | Example              | Description                                               |
| ---------- | ------- | :------: | -------------------- | --------------------------------------------------------- |
| `kind`     | string  |          | `"subscriber"`       | Role for the added users on the board.                    |
| `board_id` | integer |     ✅    | `"1234567890"`       | Unique identifier of an existing Monday.com board.        |
| `user_ids` | array   |     ✅    | `"[111222, 333444]"` | List of unique identifiers for existing Monday.com users. |

***

### `Monday Add Users To Team`

Integration name: **MONDAY\_ADD\_USERS\_TO\_TEAM**

Tool to add users to a Monday.com team. Use when updating team membership by adding user(s).

**Parameters**

| Parameter  | Type    | Required | Example           | Description                                               |
| ---------- | ------- | :------: | ----------------- | --------------------------------------------------------- |
| `team_id`  | integer |     ✅    | `123456789`       | Unique identifier of an existing Monday.com team.         |
| `user_ids` | array   |     ✅    | `[111222,333444]` | List of unique identifiers for existing Monday.com users. |

***

### `Monday Add Users To Workspace`

Integration name: **MONDAY\_ADD\_USERS\_TO\_WORKSPACE**

Tool to add one or more users to a workspace. Use when inviting existing users to collaborate in a workspace.

**Parameters**

| Parameter      | Type    | Required | Example           | Description                                                                                                                                                                          |
| -------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `kind`         | string  |          | `"subscriber"`    | The role to assign to the users in the workspace. 'owner' grants full control over the workspace. 'subscriber' grants access to view and collaborate on boards within the workspace. |
| `user_ids`     | array   |     ✅    | `[111222,333444]` | List of numeric user IDs to add to the workspace. You can get user IDs from the list\_users action or from board subscribers.                                                        |
| `workspace_id` | integer |     ✅    | `1234567`         | The unique numeric ID of the workspace to add users to. You can get workspace IDs from the get\_workspaces action or from board details.                                             |

***

### `Monday Aggregate Data`

Integration name: **MONDAY\_AGGREGATE\_DATA**

Tool to aggregate data across Monday.com boards using groupings and aggregation functions like COUNT, SUM, MEAN, MIN, MAX. Use when you need to compute metrics, counts, or summaries from board data with optional filtering and grouping.

**Parameters**

| Parameter | Type   | Required | Example | Description                                                                               |
| --------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------- |
| `query`   | object |     ✅    | —       | Aggregation query configuration including data source, selections, grouping, and filters. |

***

### `Monday App Subscription`

Integration name: **MONDAY\_APP\_SUBSCRIPTION**

Tool to retrieve current app subscription data for the account. Use when you need to check subscription status, billing period, trial status, or pricing information. Must be called within app context using account authentication token.

**Parameters**

*No parameters required.*

***

### `Monday Archive Board`

Integration name: **MONDAY\_ARCHIVE\_BOARD**

Archives a specified, existing, and unarchived board in Monday.com; archived boards can typically be restored later.

**Parameters**

| Parameter  | Type    | Required | Example        | Description                                                                        |
| ---------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------------- |
| `board_id` | integer |     ✅    | `"1234567890"` | Identifier of the board to be archived; it must exist and not already be archived. |

***

### `Monday Archive Item`

Integration name: **MONDAY\_ARCHIVE\_ITEM**

Archives an existing Monday.com item, moving it from active board views to the archive where it can be potentially restored.

**Parameters**

| Parameter | Type    | Required | Example      | Description                                          |
| --------- | ------- | :------: | ------------ | ---------------------------------------------------- |
| `item_id` | integer |     ✅    | `1234567890` | Unique identifier of the Monday.com item to archive. |

***

### `Monday Archive Object`

Integration name: **MONDAY\_ARCHIVE\_OBJECT**

Archives a Monday.com object by changing its state to archived rather than permanently deleting it. Use when you need to remove objects from active use while preserving the ability to restore them later.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                                                                                                         |
| --------- | ------ | :------: | -------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"5025528574"` | The unique identifier of the Monday.com object to archive. Can be an ID for various object types like boards, items, or workspaces. |

***

### `Monday Archive Workspace`

Integration name: **MONDAY\_ARCHIVE\_WORKSPACE**

Tool to archive a Monday.com workspace. Use when you want to soft-remove a workspace from view.

**Parameters**

| Parameter      | Type   | Required | Example        | Description                                        |
| -------------- | ------ | :------: | -------------- | -------------------------------------------------- |
| `workspace_id` | string |     ✅    | `"1234567890"` | The unique identifier of the workspace to archive. |

***

### `Monday Audit Logs`

Integration name: **MONDAY\_AUDIT\_LOGS**

Tool to retrieve detailed security-related activity records for a Monday.com account. Use when you need to audit user actions, security events, or account activity. Requires Enterprise plan and account admin permissions with manage\_account\_security scope.

**Parameters**

| Parameter    | Type    | Required | Example                  | Description                                                          |
| ------------ | ------- | :------: | ------------------------ | -------------------------------------------------------------------- |
| `page`       | integer |          | `1`                      | Page number for pagination (starts at 1).                            |
| `limit`      | integer |          | `100`                    | Number of log entries to return per page.                            |
| `events`     | array   |          | `["login","logout"]`     | Array of specific event types to retrieve (e.g., 'login', 'logout'). |
| `user_id`    | string  |          | `"1234567890"`           | Filter audit logs for a specific user by their ID.                   |
| `end_time`   | string  |          | `"2025-12-31T23:59:59Z"` | Filter logs up to this date/time (ISO8601 format).                   |
| `ip_address` | string  |          | `"192.168.1.1"`          | Filter logs by specific IP address.                                  |
| `start_time` | string  |          | `"2025-01-01T00:00:00Z"` | Filter logs from this date/time onwards (ISO8601 format).            |

***

### `Monday Blocks`

Integration name: **MONDAY\_BLOCKS**

Tool to retrieve document block data from workdocs via the API. Returns block metadata including type, content, position, and creation info. Use when you need to fetch content blocks from Monday.com documents.

**Parameters**

| Parameter | Type    | Required | Example     | Description                                                                    |
| --------- | ------- | :------: | ----------- | ------------------------------------------------------------------------------ |
| `page`    | integer |          | `1`         | Page number for pagination, starting at 1. Defaults to 1.                      |
| `limit`   | integer |          | `10`        | Maximum number of blocks to return per document. Defaults to 25.               |
| `doc_ids` | array   |     ✅    | `[2184431]` | List of document IDs to retrieve blocks from. At least one doc ID is required. |

***

### `Monday Boards`

Integration name: **MONDAY\_BOARDS**

Tool to retrieve board data via the Monday.com API. Returns core metadata (id, name, state, kind, hierarchy type, workspace) about one or multiple boards with filtering options by state, board kind, hierarchy type, and workspace. For structural details, column configurations, or ownership info, use dedicated board enrichment tools.

**Parameters**

| Parameter        | Type    | Required | Example                       | Description                                                                                        |
| ---------------- | ------- | :------: | ----------------------------- | -------------------------------------------------------------------------------------------------- |
| `ids`            | array   |          | `["1234567890","9876543210"]` | List of specific board IDs to retrieve. Provide to filter by board IDs.                            |
| `page`           | integer |          | `1`                           | Page number for pagination; starts at 1.                                                           |
| `limit`          | integer |          | `25`                          | Maximum number of boards to return. Default is 25.                                                 |
| `state`          | string  |          | `"active"`                    | Filter boards by state. Valid values: 'active', 'archived', 'deleted', 'all'. Default is 'active'. |
| `order_by`       | string  |          | `"created_at"`                | Sort boards by 'created\_at' or 'used\_at' in descending order.                                    |
| `board_kind`     | string  |          | `"public"`                    | Filter boards by type. Valid values: 'private', 'public', 'share'.                                 |
| `workspace_ids`  | array   |          | `["ws_123","ws_456"]`         | List of workspace IDs to filter boards by workspace.                                               |
| `hierarchy_type` | array   |          | `["classic"]`                 | Filter boards by hierarchy type. Can include 'classic', 'multi\_level', or both.                   |

***

### `Monday Change Simple Column Value`

Integration name: **MONDAY\_CHANGE\_SIMPLE\_COLUMN\_VALUE**

Changes a specific column's value for a Monday.com item using a simple string, suitable for Text, Status, or Dropdown columns; can create new labels if `create_labels_if_missing` is true for Status/Dropdown columns.

**Parameters**

| Parameter                  | Type    | Required | Example        | Description                                                                                                                                                                                                         |
| -------------------------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `value`                    | string  |     ✅    | `"Done"`       | New string value. For Status columns: use either a label name (e.g., 'Done', 'Working on it') or an index number as string (e.g., '1'). For Dropdown columns: use the label name. For Text columns: use plain text. |
| `item_id`                  | integer |     ✅    | `"1122334455"` | The unique identifier of the item for which the column value will be updated.                                                                                                                                       |
| `board_id`                 | integer |     ✅    | `"1234567890"` | The unique identifier of the board where the item and column are located.                                                                                                                                           |
| `column_id`                | string  |     ✅    | `"status_1"`   | Identifier of the column to change; typically a Text, Status, or Dropdown column.                                                                                                                                   |
| `create_labels_if_missing` | boolean |          | `"true"`       | For Status/Dropdown columns: when true (default), the label will be matched or created if it doesn't exist. Set to false only when using index values or when you want strict label matching.                       |

***

### `Monday Columns`

Integration name: **MONDAY\_COLUMNS**

Tool to retrieve column metadata from boards via the GraphQL API. Returns array of column information including type, title, settings, and capabilities. Use when you need to inspect board structure or column configuration.

**Parameters**

| Parameter      | Type  | Required | Example              | Description                                                                                                                                                                                                                                                                                                                                                                                    |
| -------------- | ----- | :------: | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_ids`    | array |     ✅    | `[1234567890]`       | Array of board IDs to retrieve columns from. Must provide at least one board ID.                                                                                                                                                                                                                                                                                                               |
| `column_ids`   | array |          | `["status","date4"]` | Optional array of specific column IDs to filter. Column IDs are strings (1-20 characters, lowercase letters and underscores only).                                                                                                                                                                                                                                                             |
| `column_types` | array |          | `["status","date"]`  | Optional array of column types to filter. Available types: auto\_number, button, checkbox, color\_picker, board\_relation, country, creation\_log, date, dependency, dropdown, email, file, formula, hour, item\_id, last\_updated, link, location, long\_text, mirror, doc, name, numbers, people, phone, progress, rating, status, tag, text, timeline, timerange, vote, week, world\_clock. |

***

### `Monday Connection Board Ids`

Integration name: **MONDAY\_CONNECTION\_BOARD\_IDS**

Tool to retrieve board IDs associated with connection columns. Use when you need to discover which boards can be linked through connection columns. Queries boards and filters for connection columns (board\_relation type) to extract the configured board IDs from their settings.

**Parameters**

| Parameter   | Type    | Required | Example        | Description                                                                                          |
| ----------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------------------------------- |
| `limit`     | integer |          | `5`            | Maximum number of boards to retrieve. Defaults to 25 if not specified.                               |
| `board_ids` | array   |          | `[1234567890]` | List of specific board IDs to query. If not provided, queries all accessible boards up to the limit. |

***

### `Monday Connections`

Integration name: **MONDAY\_CONNECTIONS**

Tool to retrieve connection data for integrations with external services. Use when you need to inspect or manage integrations like Gmail, Slack, or other external service connections. Returns a list of connections with details about authentication, state, and associated accounts.

**Parameters**

| Parameter               | Type    | Required | Example       | Description                                                                                                                                |
| ----------------------- | ------- | :------: | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `page`                  | integer |          | `1`           | Page index for offset-based pagination (starts at 1). Use this for traditional page-by-page navigation.                                    |
| `order`                 | string  |          | `"createdAt"` | Ordering of returned connections. Use field name for ascending (e.g., 'createdAt') or prefix with '-' for descending (e.g., '-createdAt'). |
| `page_size`             | integer |          | `10`          | Records per page for offset-based pagination. Determines how many connections are returned per page.                                       |
| `pagination`            | object  |          | —             | Cursor-based pagination configuration.                                                                                                     |
| `connection_state`      | string  |          | `"active"`    | Filter by connection state (e.g., 'active', 'inactive'). Only connections matching this state will be returned.                            |
| `with_automations`      | boolean |          | `true`        | Include connections with automations attached. Set to true to only return connections that have automations.                               |
| `with_partial_scopes`   | boolean |          | `true`        | Include connections created with partial scopes. When true, connections with limited permissions are included.                             |
| `with_state_validation` | boolean |          | `true`        | Validate connection state before returning. When true, the API validates each connection's current state.                                  |

***

### `Monday Connect Project To Portfolio`

Integration name: **MONDAY\_CONNECT\_PROJECT\_TO\_PORTFOLIO**

Links an existing project board to a portfolio board for centralized management. Requires boards:write scope and Enterprise plan.

**Parameters**

| Parameter            | Type    | Required | Example      | Description                                                                       |
| -------------------- | ------- | :------: | ------------ | --------------------------------------------------------------------------------- |
| `project_board_id`   | integer |     ✅    | `5025507520` | The unique identifier of the project board to connect to the portfolio.           |
| `portfolio_board_id` | integer |     ✅    | `5025507515` | The unique identifier of the portfolio board to which the project will be linked. |

***

### `Monday Convert Board To Project`

Integration name: **MONDAY\_CONVERT\_BOARD\_TO\_PROJECT**

Converts a regular Monday.com board into a project board with advanced project management features. Use when upgrading a board to enable project-specific capabilities like timeline views, project status tracking, and owner assignments.

**Parameters**

| Parameter         | Type    | Required | Example      | Description                                                                                                                   |
| ----------------- | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| `board_id`        | integer |     ✅    | `5025507520` | The unique identifier of the board to convert to a project.                                                                   |
| `column_mappings` | object  |     ✅    | —            | Mapping configuration specifying which existing columns should be used for project-specific fields (status, timeline, owner). |

***

### `Monday Create Board`

Integration name: **MONDAY\_CREATE\_BOARD**

Creates a Monday.com board; `template_id` if used must be accessible, and `folder_id` must be in `workspace_id` if both are provided.

**Parameters**

| Parameter                    | Type    | Required | Example                                                          | Description                                                                                                                                                                                                                                                          |
| ---------------------------- | ------- | :------: | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `folder_id`                  | integer |          | `"123456"`                                                       | ID of the folder for the board. If `workspace_id` is absent, the board uses this folder's containing workspace. If `workspace_id` is present, this folder must be within the specified workspace.                                                                    |
| `board_kind`                 | string  |     ✅    | `"public"`                                                       | The kind of board to create, determining its visibility and access.                                                                                                                                                                                                  |
| `board_name`                 | string  |     ✅    | `"Project Phoenix Tasks"`                                        | The name for the new board.                                                                                                                                                                                                                                          |
| `description`                | string  |          | `"Central board for tracking all Project Phoenix deliverables."` | Description for the new board.                                                                                                                                                                                                                                       |
| `template_id`                | integer |          | `"111222333"`                                                    | ID of an accessible template to use for the new board.                                                                                                                                                                                                               |
| `workspace_id`               | integer |          | `789012`                                                         | Numeric ID of the workspace for the board. Use MONDAY\_GET\_WORKSPACES action to retrieve valid workspace IDs. This field is optional - if omitted, the board is created in the default workspace. If `folder_id` is given, this workspace must contain that folder. |
| `board_owner_ids`            | array   |          | `["1234567","7654321"]`                                          | User IDs to be assigned as owners of the board.                                                                                                                                                                                                                      |
| `board_subscriber_ids`       | array   |          | `["1122334","5566778"]`                                          | User IDs to be subscribed to the board.                                                                                                                                                                                                                              |
| `board_subscriber_teams_ids` | array   |          | `["98765","54321"]`                                              | Team IDs to be subscribed to the board.                                                                                                                                                                                                                              |

***

### `Monday Create Column`

Integration name: **MONDAY\_CREATE\_COLUMN**

Creates a new column with a specified type and title on a monday.com board.

**Parameters**

| Parameter         | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------- | ------- | :------: | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`           | string  |     ✅    | —          | Title for the new column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `board_id`        | integer |     ✅    | —          | Unique identifier of the board for the new column. Note: Subitems boards are not supported; use create\_subitem mutation instead.                                                                                                                                                                                                                                                                                                                                                               |
| `defaults`        | string  |          | —          | JSON string with default values or settings, often for 'status' or 'dropdown' types to define labels. Example: '''{"labels": \["To Do", "In Progress", "Done"]}'''                                                                                                                                                                                                                                                                                                                              |
| `column_type`     | string  |     ✅    | `"status"` | Type of the column. Must be a valid GraphQL enum token in snake\_case format (e.g., 'long\_text', not 'text\_long' or 'long-text'). Supported types include: status, text, long\_text, numbers, date, dropdown, people, timeline, link, email, phone, rating, checkbox, country, file, hour, week, item\_id, location, name, tags, vote, world\_clock, creation\_log, last\_updated, auto\_number, formula, connect\_boards, button, time\_tracking. Note: 'person' is not a valid column type. |
| `description`     | string  |          | —          | Description for the new column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `after_column_id` | string  |          | —          | ID of an existing column after which the new column will be inserted.                                                                                                                                                                                                                                                                                                                                                                                                                           |

***

### `Monday Create Custom Activity`

Integration name: **MONDAY\_CREATE\_CUSTOM\_ACTIVITY**

Tool to create a custom activity in the Monday.com Emails & Activities app. Use when you need to define a new activity type with specific color and icon for tracking interactions.

**Parameters**

| Parameter | Type   | Required | Example                      | Description                                                              |
| --------- | ------ | :------: | ---------------------------- | ------------------------------------------------------------------------ |
| `name`    | string |     ✅    | `"API Test Custom Activity"` | The custom activity's name. Must be non-empty.                           |
| `color`   | string |     ✅    | `"SLATE_BLUE"`               | The custom activity's color. Must be one of the predefined color values. |
| `icon_id` | string |     ✅    | `"TRIPOD"`                   | The custom activity's icon. Must be one of the predefined icon values.   |

***

### `Monday Create Dashboard`

Integration name: **MONDAY\_CREATE\_DASHBOARD**

Tool to create a Monday.com dashboard with associated boards. Use when you need to establish a new dashboard in a workspace with specific board visibility settings.

**Parameters**

| Parameter         | Type    | Required | Example                       | Description                                                                                                         |
| ----------------- | ------- | :------: | ----------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `kind`            | string  |          | `"PRIVATE"`                   | The dashboard's visibility. Valid values: PRIVATE (default) or PUBLIC.                                              |
| `name`            | string  |     ✅    | `"API Test Dashboard"`        | The dashboard's name. Maximum 255 characters.                                                                       |
| `board_ids`       | array   |     ✅    | `["5025528585","5025528582"]` | The unique identifier(s) of the board(s) to associate with the dashboard. Must provide at least one valid board ID. |
| `workspace_id`    | integer |     ✅    | `-1`                          | The unique identifier of the workspace to create the dashboard in. Use -1 for the main workspace.                   |
| `board_folder_id` | integer |          | `543210`                      | The unique identifier of the folder to create the dashboard in.                                                     |

***

### `Monday Create Doc`

Integration name: **MONDAY\_CREATE\_DOC**

Tool to create a new doc in Monday.com. Use when you need to add a doc to a workspace or into a doc column on an item.

**Parameters**

| Parameter      | Type    | Required | Example | Description                                                                                               |
| -------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- |
| `kind`         | string  |          | —       | Access level of the new doc in workspace. Choose one of 'private', 'public', or 'share'.                  |
| `name`         | string  |          | —       | Title of the new doc. Required with workspace\_id and kind for workspace location.                        |
| `item_id`      | integer |          | —       | ID of the item containing the doc column. Required with column\_id for board location.                    |
| `column_id`    | string  |          | —       | ID of the monday doc column on the item (e.g., 'monday\_doc'). Required with item\_id for board location. |
| `workspace_id` | integer |          | —       | ID of the workspace where the doc will be created. Required with name and kind for workspace location.    |

***

### `Monday Create Folder`

Integration name: **MONDAY\_CREATE\_FOLDER**

Tool to create a new folder in a Monday.com workspace to organize boards. Use when you need to structure boards within a workspace by grouping them into folders.

**Parameters**

| Parameter          | Type    | Required | Example                | Description                                                                                        |
| ------------------ | ------- | :------: | ---------------------- | -------------------------------------------------------------------------------------------------- |
| `name`             | string  |     ✅    | `"Marketing Projects"` | The folder's name.                                                                                 |
| `color`            | string  |          | `"DONE_GREEN"`         | The folder's color.                                                                                |
| `workspace_id`     | integer |     ✅    | `2054572`              | The unique identifier of the workspace to create the new folder in.                                |
| `parent_folder_id` | integer |          | `9876543210`           | The ID of the folder you want to nest the new one under. Use this to create subfolder hierarchies. |

***

### `Monday Create Group`

Integration name: **MONDAY\_CREATE\_GROUP**

Creates a new group with the given `group_name` on an existing Monday.com board, identified by its `board_id`.

**Parameters**

| Parameter    | Type   | Required | Example          | Description                                                                        |
| ------------ | ------ | :------: | ---------------- | ---------------------------------------------------------------------------------- |
| `board_id`   | string |     ✅    | `"1234567890"`   | The unique identifier of the Monday.com board where the new group will be created. |
| `group_name` | string |     ✅    | `"New Leads Q3"` | The desired name for the new group to be created on the board.                     |

***

### `Monday Create Item`

Integration name: **MONDAY\_CREATE\_ITEM**

Creates a new item on a Monday.com board, optionally assigning it to a group and setting column values.

**Parameters**

| Parameter       | Type   | Required | Example        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `board_id`      | string |     ✅    | `"1234567890"` | The board's unique identifier. Note: Subitems boards are not supported for this action; use create\_subitem mutation instead.                                                                                                                                                                                                                                                                                                                                                                                            |
| `group_id`      | string |          | —              | Optional group ID where the item will be created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `item_name`     | string |     ✅    | —              | Name of the new item. Maximum length is 256 characters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `column_values` | —      |          | —              | Column values for the new item. Accepts either a JSON string or an object/dict. Keys must be valid column IDs and values must match the column type. For date columns, use nested structure: {"date": {"date": "YYYY-MM-DD"}}. For people columns, use array of person IDs: {"person": {"personsAndTeams": \[{"id": 123, "kind": "person"}]}}. For status columns, use index or label: {"status": {"index": 0}} or {"status": {"label": "Done"}}. Example: {"date": {"date": "2023-12-01"}} or {"status": {"index": 0}}. |

***

### `Monday Create Item From Nl`

Integration name: **MONDAY\_CREATE\_ITEM\_FROM\_NL**

Creates a new item on a Monday.com board from a natural language description. Fetches the board's column schema at runtime, uses an LLM to generate the column values and extract the item name, and creates the item.

**Parameters**

| Parameter  | Type   | Required | Example        | Description                                                                                                                                                                     |
| ---------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id` | string |     ✅    | `"1234567890"` | The Monday.com board ID where the item will be created.                                                                                                                         |
| `group_id` | string |          | —              | Optional group ID where the item will be created within the board.                                                                                                              |
| `nl_query` | string |     ✅    | —              | Natural language description of the item to create. Must include an item name. Example: 'Create item: Fix login bug, status Working on it, priority High, due date 2025-03-15'. |

***

### `Monday Create Notification`

Integration name: **MONDAY\_CREATE\_NOTIFICATION**

Tool to send a notification to a user. Use when you need to alert a user about a board, item, or update. Call after obtaining the user and target IDs.

**Parameters**

| Parameter     | Type    | Required | Example                    | Description                                                                                                                   |
| ------------- | ------- | :------: | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `text`        | string  |     ✅    | `"You have a new comment"` | The notification text to display.                                                                                             |
| `user_id`     | integer |     ✅    | `123456`                   | The recipient user's unique identifier (ID).                                                                                  |
| `target_id`   | integer |     ✅    | `789012`                   | The target's unique identifier (ID). If target\_type is Post, use an update or reply ID; if Project, use an item or board ID. |
| `target_type` | string  |     ✅    | `"Post"`                   | The notification target type: 'Post' for updates/replies or 'Project' for items/boards.                                       |

***

### `Monday Create Object`

Integration name: **MONDAY\_CREATE\_OBJECT**

Tool to create any Monday.com object via GraphQL mutation. Use when you need to create workspaces, boards, items, columns, docs, updates, webhooks, or other Monday.com objects using custom GraphQL queries.

**Parameters**

| Parameter   | Type   | Required | Example                                                                           | Description                                                                                                                                                                                                                                                                                               |
| ----------- | ------ | :------: | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`     | string |     ✅    | `"mutation { create_workspace(name: \"My Workspace\", kind: open) { id name } }"` | GraphQL mutation query to create an object. Must start with 'mutation'. For read queries, use the appropriate query tool instead. Examples: 'mutation { create\_workspace(name: "My Workspace", kind: open) { id name } }' or 'mutation { create\_item(board\_id: 123, item\_name: "Task") { id name } }' |
| `variables` | object |          | `{"kind":"open","name":"My Workspace"}`                                           | Optional GraphQL variables object to pass with the query. Use this to parameterize your mutation instead of hardcoding values in the query string.                                                                                                                                                        |

***

### `Monday Create Tag`

Integration name: **MONDAY\_CREATE\_TAG**

Tool to create a new tag or return an existing tag. Use when you need to label items with color-coded tags on a public or private board.

**Parameters**

| Parameter  | Type    | Required | Example      | Description                                                 |
| ---------- | ------- | :------: | ------------ | ----------------------------------------------------------- |
| `board_id` | integer |          | `1234567890` | Optional board ID for a private tag; omit for a public tag. |
| `tag_name` | string  |     ✅    | `"urgent"`   | Name of the tag to create; must be non-empty.               |

***

### `Monday Create Timeline Item`

Integration name: **MONDAY\_CREATE\_TIMELINE\_ITEM**

Tool to create a new timeline item in the Emails & Activities app on a Monday.com item. Use when you need to establish a timeline event or activity on an item. Note: Timeline items created via this action won't trigger automations that run when a new E\&A timeline item is created.

**Parameters**

| Parameter            | Type    | Required | Example                                                   | Description                                                                                    |
| -------------------- | ------- | :------: | --------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `url`                | string  |          | `"https://example.com"`                                   | URL to add.                                                                                    |
| `phone`              | string  |          | `"+1-555-0100"`                                           | Phone number to add. This input isn't verified as a phone number.                              |
| `title`              | string  |     ✅    | `"Test Timeline Item"`                                    | The new timeline item's title.                                                                 |
| `content`            | string  |          | `"This is a test timeline item created through the API."` | The new timeline item's content.                                                               |
| `item_id`            | integer |     ✅    | `2521199566`                                              | The ID of the item to create the new timeline item on. Must be a valid item identifier.        |
| `summary`            | string  |          | `"Testing timeline item creation via API"`                | The new timeline item's summary. Maximum 255 characters.                                       |
| `location`           | string  |          | `"New York, NY"`                                          | Location data to add. This input isn't verified as a location.                                 |
| `timestamp`          | string  |     ✅    | `"2024-12-10T10:00:00Z"`                                  | The new timeline item's creation time. Must be in ISO8601 format (e.g., 2024-12-10T10:00:00Z). |
| `time_range`         | object  |          | —                                                         | Time range for a timeline item.                                                                |
| `custom_activity_id` | string  |     ✅    | `"c2a1b3fd-0bfc-4a93-bacc-dc78fe0ca643"`                  | The ID of the new timeline item's custom activity. Required identifier.                        |

***

### `Monday Create Update`

Integration name: **MONDAY\_CREATE\_UPDATE**

Tool to create a new update for an item or reply to an existing update. Use after determining the target item or update to comment on.

**Parameters**

| Parameter                | Type    | Required | Example                        | Description                                                                                   |
| ------------------------ | ------- | :------: | ------------------------------ | --------------------------------------------------------------------------------------------- |
| `body`                   | string  |     ✅    | `"This is an update message."` | The update's text content.                                                                    |
| `item_id`                | integer |          | —                              | ID of the item to post the update on.                                                         |
| `parent_id`              | integer |          | —                              | ID of the parent update to reply under.                                                       |
| `use_app_info`           | boolean |          | —                              | If true, attribute the update to the app rather than the current user (API version 2025-10+). |
| `mentions_list`          | array   |          | —                              | List of entities to mention in the update.                                                    |
| `original_creation_date` | string  |          | —                              | Original creation date in DD-MM-YYYY format (API version 2025-10+).                           |

***

### `Monday Create User`

Integration name: **MONDAY\_CREATE\_USER**

Tool to invite and create a new user. Use when you need to programmatically add new users to your Monday account.

**Parameters**

| Parameter   | Type   | Required | Example                                   | Description                                                                                                                                  |
| ----------- | ------ | :------: | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `emails`    | array  |     ✅    | `["alice@example.com","bob@example.com"]` | List of email addresses to invite and create.                                                                                                |
| `product`   | string |          | `"work_management"`                       | Product to invite the user to; allowed values: 'crm', 'dev', 'forms', 'knowledge', 'service', 'whiteboard', 'workflows', 'work\_management'. |
| `user_role` | string |          | `"MEMBER"`                                | Role to assign to the invited user; allowed values: 'ADMIN', 'GUEST', 'MEMBER', 'VIEW\_ONLY'.                                                |

***

### `Monday Create Workspace`

Integration name: **MONDAY\_CREATE\_WORKSPACE**

Tool to create a Monday.com workspace. Use when you need to programmatically add a workspace after planning your project structure.

**Parameters**

| Parameter            | Type   | Required | Example                                | Description                                                                      |
| -------------------- | ------ | :------: | -------------------------------------- | -------------------------------------------------------------------------------- |
| `kind`               | string |     ✅    | `"open"`                               | The visibility kind of the workspace; allowed values: 'open' or 'closed'.        |
| `name`               | string |     ✅    | `"Marketing Team"`                     | The name for the new workspace.                                                  |
| `description`        | string |          | `"Workspace for cross-team projects."` | Optional description for the new workspace.                                      |
| `account_product_id` | string |          | `"prod_1234567890"`                    | Optional account product ID under which to create the workspace (API v2025-07+). |

***

### `Monday Custom Activity`

Integration name: **MONDAY\_CUSTOM\_ACTIVITY**

Tool to retrieve custom activity data from the Emails & Activities app. Use when you need to list available custom activities with their metadata. Returns up to 50 activities per query.

**Parameters**

*No parameters required.*

***

### `Monday Deactivate Users`

Integration name: **MONDAY\_DEACTIVATE\_USERS**

Tool to deactivate users from a monday.com account. Use when you need to remove users from the account; only admins can perform this action, and users cannot deactivate themselves. Deactivating a user also deactivates their integrations and automations.

**Parameters**

| Parameter  | Type  | Required | Example                   | Description                                                                                                                                        |
| ---------- | ----- | :------: | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_ids` | array |     ✅    | `[1234567890,9876543210]` | Array of user identifiers to deactivate. Maximum 200 users per request. Note: Cannot deactivate yourself, and only admins can execute this action. |

***

### `Monday Delete Asset`

Integration name: **MONDAY\_DELETE\_ASSET**

Tool to remove uploaded files. Since monday.com doesn't provide a direct asset deletion API, this tool deletes the enclosing update or clears files from a File column. Both operations are permanent and irreversible; confirm with the user before invoking.

**Parameters**

| Parameter   | Type    | Required | Example        | Description                                                                             |
| ----------- | ------- | :------: | -------------- | --------------------------------------------------------------------------------------- |
| `target`    | string  |          | `"update"`     | Deletion strategy: 'update' to delete the update, or 'column' to clear a File column    |
| `item_id`   | integer |          | `5004573003`   | Item ID whose File column should be cleared (used when target is 'column').             |
| `asset_id`  | integer |     ✅    | `123456789`    | The unique identifier of the asset related to the removal operation.                    |
| `board_id`  | string  |          | `"5004572935"` | Board ID of the item (used when target is 'column').                                    |
| `column_id` | string  |          | `"files"`      | File column ID to clear (used when target is 'column'). For example: 'files'.           |
| `update_id` | integer |          | `62047676`     | ID of the update that contains the attachment to remove (used when target is 'update'). |

***

### `Monday Delete Board`

Integration name: **MONDAY\_DELETE\_BOARD**

Tool to permanently delete a board from your Monday.com account. Use when you need to remove a board permanently after verifying its ID. This action cannot be undone.

**Parameters**

| Parameter  | Type    | Required | Example      | Description                                       |
| ---------- | ------- | :------: | ------------ | ------------------------------------------------- |
| `board_id` | integer |     ✅    | `1234567890` | The unique identifier of the board to be deleted. |

***

### `Monday Delete Column`

Integration name: **MONDAY\_DELETE\_COLUMN**

Deletes a specified column from a Monday.com board; this action is destructive and cannot be undone via the API.

**Parameters**

| Parameter   | Type    | Required | Example      | Description                                                                 |
| ----------- | ------- | :------: | ------------ | --------------------------------------------------------------------------- |
| `board_id`  | integer |     ✅    | `1234567890` | The unique identifier of the board from which the column will be deleted.   |
| `column_id` | string  |     ✅    | `"status_1"` | The unique identifier of the column to be deleted from the specified board. |

***

### `Monday Delete Custom Activity`

Integration name: **MONDAY\_DELETE\_CUSTOM\_ACTIVITY**

Tool to delete a custom activity from the Emails & Activities app. Use when you need to remove a custom activity by its unique identifier.

**Parameters**

| Parameter | Type   | Required | Example                                  | Description                              |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------- |
| `id`      | string |     ✅    | `"c2a1b3fd-0bfc-4a93-bacc-dc78fe0ca643"` | The custom activity's unique identifier. |

***

### `Monday Delete Doc`

Integration name: **MONDAY\_DELETE\_DOC**

Tool to delete a Monday.com doc by its ID. Use when you need to remove a doc that is no longer needed.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                        |
| --------- | ------ | :------: | -------------- | -------------------------------------------------- |
| `doc_id`  | string |     ✅    | `"1234567890"` | Unique identifier of the Monday.com doc to delete. |

***

### `Monday Delete Folder`

Integration name: **MONDAY\_DELETE\_FOLDER**

Tool to permanently delete a folder and all its contents from a Monday.com workspace. Use when you need to remove a folder along with all nested subfolders and boards. This action is irreversible.

**Parameters**

| Parameter   | Type    | Required | Example   | Description                                                                                                                                             |
| ----------- | ------- | :------: | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `folder_id` | integer |     ✅    | `6438050` | The unique identifier of the folder to be deleted. This will permanently remove the folder and all its nested contents including subfolders and boards. |

***

### `Monday Delete Group`

Integration name: **MONDAY\_DELETE\_GROUP**

Permanently deletes an existing group (and its items) from an existing board in Monday.com.

**Parameters**

| Parameter  | Type    | Required | Example        | Description                                          |
| ---------- | ------- | :------: | -------------- | ---------------------------------------------------- |
| `board_id` | integer |     ✅    | `"1234567890"` | Unique identifier of the board containing the group. |
| `group_id` | string  |     ✅    | `"topics"`     | Unique identifier of the group to delete.            |

***

### `Monday Delete Item`

Integration name: **MONDAY\_DELETE\_ITEM**

Permanently deletes an existing Monday.com item; this action is irreversible via the API.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                                 |
| --------- | ------ | :------: | -------------- | ----------------------------------------------------------- |
| `item_id` | string |     ✅    | `"1234567890"` | The unique identifier of the Monday.com item to be deleted. |

***

### `Monday Delete Object`

Integration name: **MONDAY\_DELETE\_OBJECT**

Tool to permanently delete a Monday.com object with a 30-day recovery grace period. Use when you need to remove any object type from Monday.com by its unique identifier.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                                                                                                        |
| --------- | ------ | :------: | -------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"5025528574"` | The unique identifier of the Monday.com object to delete. Can be an ID for various object types like boards, items, or workspaces. |

***

### `Monday Delete Subscribers From Board`

Integration name: **MONDAY\_DELETE\_SUBSCRIBERS\_FROM\_BOARD**

Tool to remove subscribers from a Monday.com board. Use when revoking subscriber access for specific users on a board.

**Parameters**

| Parameter  | Type    | Required | Example               | Description                                                |
| ---------- | ------- | :------: | --------------------- | ---------------------------------------------------------- |
| `board_id` | integer |     ✅    | `5025528617`          | The board's unique identifier.                             |
| `user_ids` | array   |     ✅    | `[77854569,12345678]` | Array of user unique identifiers to remove as subscribers. |

***

### `Monday Delete Tag`

Integration name: **MONDAY\_DELETE\_TAG**

Tool to remove a tag from an item in Monday.com. Important: Monday.com's GraphQL API does not provide a mutation to delete a tag from the account. Tags are account-level entities shared across boards. This action can remove a tag from a specific item by updating its tags column to exclude the given tag\_id. To do so, provide item\_id and board\_id.

**Parameters**

| Parameter  | Type    | Required | Example      | Description                                                                                                                                                                                 |
| ---------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tag_id`   | integer |     ✅    | `123456789`  | The unique identifier of the tag to remove.                                                                                                                                                 |
| `item_id`  | integer |          | `1234567890` | The item ID to remove the tag from. If provided, the tag will be removed from this item's tags column. If omitted, the action will report that account-level tag deletion is not supported. |
| `board_id` | integer |          | `1234567890` | The board ID where the item lives. Required when item\_id is provided.                                                                                                                      |

***

### `Monday Delete Team`

Integration name: **MONDAY\_DELETE\_TEAM**

Tool to delete an existing team; use when you need to permanently remove a team by its ID after confirming it’s no longer needed.

**Parameters**

| Parameter | Type    | Required | Example      | Description                                      |
| --------- | ------- | :------: | ------------ | ------------------------------------------------ |
| `team_id` | integer |     ✅    | `1234567890` | The unique identifier of the team to be deleted. |

***

### `Monday Delete Teams From Board`

Integration name: **MONDAY\_DELETE\_TEAMS\_FROM\_BOARD**

Tool to remove teams from a board; use when you need to revoke team access to a specific board.

**Parameters**

| Parameter  | Type    | Required | Example           | Description                                                                                                             |
| ---------- | ------- | :------: | ----------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `board_id` | integer |     ✅    | `5025528617`      | The unique identifier of the board from which teams will be removed.                                                    |
| `team_ids` | array   |     ✅    | `[123456,789012]` | List of unique identifiers for the teams to remove from the board. Multiple teams can be removed in a single operation. |

***

### `Monday Delete Teams From Workspace`

Integration name: **MONDAY\_DELETE\_TEAMS\_FROM\_WORKSPACE**

Tool to remove teams from a workspace. Use when revoking workspace access for specific teams.

**Parameters**

| Parameter      | Type    | Required | Example           | Description                                                         |
| -------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------- |
| `team_ids`     | array   |     ✅    | `[123456,789012]` | The unique identifiers of the teams to remove from the workspace.   |
| `workspace_id` | integer |     ✅    | `2054572`         | The workspace's unique identifier from which teams will be removed. |

***

### `Monday Delete Timeline Item`

Integration name: **MONDAY\_DELETE\_TIMELINE\_ITEM**

Tool to delete a timeline item from the Emails & Activities app. Use when you need to remove an existing timeline event or activity from a Monday.com item. This action is irreversible.

**Parameters**

| Parameter | Type   | Required | Example                                  | Description                                                                        |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"250d6ceb-8b72-42f1-b8e7-6439354356ff"` | The unique identifier of the timeline item to delete. Must be a valid UUID string. |

***

### `Monday Delete Update`

Integration name: **MONDAY\_DELETE\_UPDATE**

Tool to delete an update by its ID. Use when an update is no longer relevant. Use after confirming deletion is irreversible.

**Parameters**

| Parameter   | Type    | Required | Example      | Description                                        |
| ----------- | ------- | :------: | ------------ | -------------------------------------------------- |
| `update_id` | integer |     ✅    | `1234567890` | The unique identifier of the update to be deleted. |

***

### `Monday Delete Workspace`

Integration name: **MONDAY\_DELETE\_WORKSPACE**

Tool to permanently delete a workspace by its ID. Use when a workspace is no longer needed. Use after confirming deletion is irreversible.

**Parameters**

| Parameter      | Type   | Required | Example        | Description                                                   |
| -------------- | ------ | :------: | -------------- | ------------------------------------------------------------- |
| `workspace_id` | string |     ✅    | `"1234567890"` | The unique identifier of the workspace to permanently delete. |

***

### `Monday Docs`

Integration name: **MONDAY\_DOCS**

Tool to retrieve Monday.com document data via the API. Use when you need to fetch documents with filtering by IDs, object IDs, workspace IDs, or with pagination support.

**Parameters**

| Parameter       | Type    | Required | Example               | Description                                                                                                                                                               |
| --------------- | ------- | :------: | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ids`           | array   |          | `["123456","789012"]` | List of document IDs to retrieve. These are the internal IDs shown in the top-left corner when developer mode is enabled.                                                 |
| `page`          | integer |          | `1`                   | Page number for pagination. Starts at 1. Use in combination with 'limit' to retrieve large result sets.                                                                   |
| `limit`         | integer |          | `5`                   | Maximum number of documents to retrieve per page. Must be between 1 and 100. Defaults to 25.                                                                              |
| `order_by`      | string  |          | `"created_at"`        | Field to order results by. 'created\_at' sorts by creation time, 'used\_at' sorts by last access time. Newest first by default. Not applied when 'ids' parameter is used. |
| `object_ids`    | array   |          | `["987654","321098"]` | List of object IDs (board or item IDs) associated with the documents. These are the IDs that appear in URLs and doc column values.                                        |
| `workspace_ids` | array   |          | `["112233","445566"]` | List of workspace IDs to filter documents. Only documents within these workspaces will be returned.                                                                       |

***

### `Monday Duplicate Board`

Integration name: **MONDAY\_DUPLICATE\_BOARD**

Tool to duplicate a Monday.com board with its structure and optionally items and updates. Use when you need to create a copy of an existing board. Duplication is asynchronous and may take time to complete for large boards.

**Parameters**

| Parameter          | Type    | Required | Example                            | Description                                                                                                        |
| ------------------ | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `board_id`         | integer |     ✅    | `1234567890`                       | The unique identifier of the board to duplicate. This board must exist.                                            |
| `folder_id`        | integer |          | `1122334455`                       | Destination folder ID within workspace. Required when moving to another workspace.                                 |
| `board_name`       | string  |          | `"My Duplicated Board"`            | Name for the new board. If omitted, a name will be auto-generated.                                                 |
| `workspace_id`     | integer |          | `5678901234`                       | Destination workspace ID. If omitted, the board will be duplicated to the original workspace.                      |
| `duplicate_type`   | string  |     ✅    | `"duplicate_board_with_structure"` | Specifies what to include in the duplicate: structure only, structure and items, or structure, items, and updates. |
| `keep_subscribers` | boolean |          | `true`                             | Whether to copy subscribers from the original board. Defaults to false.                                            |

***

### `Monday Duplicate Item`

Integration name: **MONDAY\_DUPLICATE\_ITEM**

Duplicates an item on a Monday.com board, optionally including its updates.

**Parameters**

| Parameter      | Type    | Required | Example        | Description                                                                                                                          |
| -------------- | ------- | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `item_id`      | integer |     ✅    | `"1122334455"` | The unique identifier of the item to be duplicated. This item must exist on the specified `board_id`.                                |
| `board_id`     | integer |     ✅    | `"1234567890"` | The unique identifier of the board containing the item to be duplicated. This board must exist.                                      |
| `with_updates` | boolean |          | `"true"`       | If true, item updates (e.g., comments, replies) are duplicated with the item; if false, the new item is created without any updates. |

***

### `Monday Edit Update`

Integration name: **MONDAY\_EDIT\_UPDATE**

Tool to modify the text content of an existing update on an item. Use when you need to correct or change a previously posted update.

**Parameters**

| Parameter | Type    | Required | Example                                                   | Description                     |
| --------- | ------- | :------: | --------------------------------------------------------- | ------------------------------- |
| `id`      | integer |     ✅    | `74019358`                                                | The update's unique identifier. |
| `body`    | string  |     ✅    | `"This update has been successfully edited via the API!"` | The update's new text content.  |

***

### `Monday Get Account Info`

Integration name: **MONDAY\_GET\_ACCOUNT\_INFO**

Retrieve account metadata and settings for the authenticated Monday.com account. Use this action to inspect account configuration such as: - Account name, slug, and tier - Active member count - Calendar preferences (first day of week, timeline weekends) - Active products and billing plan details Requires the 'account:read' OAuth scope.

**Parameters**

*No parameters required.*

***

### `Monday Get Activity Logs`

Integration name: **MONDAY\_GET\_ACTIVITY\_LOGS**

Tool to retrieve activity logs from a specific Monday.com board. Use when you need to track changes, user actions, or board history for auditing or analytics purposes.

**Parameters**

| Parameter    | Type    | Required | Example                       | Description                                                               |
| ------------ | ------- | :------: | ----------------------------- | ------------------------------------------------------------------------- |
| `to`         | string  |          | `"2025-12-31T23:59:59Z"`      | End timestamp for filtering activity logs (ISO8601 DateTime format).      |
| `from`       | string  |          | `"2025-01-01T00:00:00Z"`      | Start timestamp for filtering activity logs (ISO8601 DateTime format).    |
| `page`       | integer |          | `1`                           | Page number for pagination (starts at 1).                                 |
| `limit`      | integer |          | `5`                           | Number of activity logs to return. Default is 25.                         |
| `board_id`   | string  |     ✅    | `"18399328562"`               | The unique identifier of the board to fetch activity logs from. Required. |
| `item_ids`   | array   |          | `["1234567890","9876543210"]` | Filter events by specific item IDs.                                       |
| `user_ids`   | array   |          | `["12345","67890"]`           | Filter events by specific user IDs.                                       |
| `group_ids`  | array   |          | `["group_1","group_2"]`       | Filter events by specific group IDs.                                      |
| `column_ids` | array   |          | `["column_1","column_2"]`     | Filter events by specific column IDs.                                     |

***

### `Monday Get Api Version`

Integration name: **MONDAY\_GET\_API\_VERSION**

Tool to retrieve the Monday.com API version in use. Use when you need to check which API version is currently active for debugging or compatibility purposes.

**Parameters**

*No parameters required.*

***

### `Monday Get Assets`

Integration name: **MONDAY\_GET\_ASSETS**

Tool to retrieve file/asset metadata from monday.com by asset IDs. Returns file information including URL, name, size, extension, and thumbnails for images. Asset IDs originate from updates, update replies, or file-type columns.

**Parameters**

| Parameter | Type  | Required | Example                       | Description                                                                                                                                                                |
| --------- | ----- | :------: | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ids`     | array |     ✅    | `["1234567890","1234567891"]` | Array of asset IDs to retrieve. Must contain at least one ID. Asset IDs from file-type column values may be embedded in nested JSON strings and must be parsed before use. |

***

### `Monday Get Board Views`

Integration name: **MONDAY\_GET\_BOARD\_VIEWS**

Tool to retrieve board view data via GraphQL API. Returns array of board view metadata including type, settings, filters, and access levels. Must be nested within a boards query.

**Parameters**

| Parameter   | Type   | Required | Example          | Description                                                                                                                                 |
| ----------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_ids` | array  |     ✅    | `["1234567890"]` | List of board IDs to retrieve views from. Must contain at least one board ID.                                                               |
| `view_type` | string |          | `"TABLE"`        | Optional filter to retrieve specific view type. Valid types: 'TABLE', 'FORM', 'DASHBOARD', 'APP'. If not specified, all views are returned. |

***

### `Monday Get Favorites`

Integration name: **MONDAY\_GET\_FAVORITES**

Tool to retrieve all favorited items for the authenticated user. Use when you need to query items that have been marked as favorites.

**Parameters**

*No parameters required.*

***

### `Monday Get Folders`

Integration name: **MONDAY\_GET\_FOLDERS**

Tool to retrieve folder data from workspaces with filtering and pagination options. Use when you need to list folders from specific workspaces or filter by folder IDs.

**Parameters**

| Parameter       | Type    | Required | Example           | Description                                                                                   |
| --------------- | ------- | :------: | ----------------- | --------------------------------------------------------------------------------------------- |
| `ids`           | array   |          | `[123456,789012]` | Specific folder identifiers to retrieve. If not provided, all folders will be returned.       |
| `page`          | integer |          | `1`               | Page number for pagination, starts at 1.                                                      |
| `limit`         | integer |          | `25`              | Number of folders to return. Default is 25, maximum is 100.                                   |
| `workspace_ids` | array   |          | `[2054572]`       | Workspace identifiers to filter folders. Pass \[None] to get folders from the Main Workspace. |

***

### `Monday Get Form`

Integration name: **MONDAY\_GET\_FORM**

Tool to retrieve form metadata via the API using the form's unique token from the URL. Returns form configuration, questions, and settings.

**Parameters**

| Parameter    | Type   | Required | Example                              | Description                                                                                                                                                  |
| ------------ | ------ | :------: | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `form_token` | string |     ✅    | `"264bda12a0c8cce6f1d80e8575971506"` | The form's unique string token, located in the form's URL after '/forms/' and before the '?' parameter. Use this to identify and retrieve the specific form. |

***

### `Monday Get Items`

Integration name: **MONDAY\_GET\_ITEMS**

Tool to retrieve specific items by their IDs from Monday.com, returning metadata including name, timestamps, state, board, and group information. Use when you need to fetch detailed information about specific items.

**Parameters**

| Parameter           | Type    | Required | Example                         | Description                                                                   |
| ------------------- | ------- | :------: | ------------------------------- | ----------------------------------------------------------------------------- |
| `ids`               | array   |     ✅    | `["11278567962","11278567963"]` | Array of item IDs to retrieve. Maximum of 100 IDs at one time.                |
| `page`              | integer |          | `1`                             | Page number for pagination, starting at 1.                                    |
| `limit`             | integer |          | `25`                            | Number of items to return. Default is 25, maximum is 100.                     |
| `newest_first`      | boolean |          | —                               | When true, orders the results with recently created items first.              |
| `exclude_nonactive` | boolean |          | —                               | When true, filters out inactive, deleted, or orphaned items from the results. |

***

### `Monday Get Me`

Integration name: **MONDAY\_GET\_ME**

Tool to fetch the current authenticated user's profile and permissions. Use when you need to retrieve user metadata before performing other operations.

**Parameters**

| Parameter     | Type   | Required | Example     | Description                                                                          |
| ------------- | ------ | :------: | ----------- | ------------------------------------------------------------------------------------ |
| `api_version` | string |          | `"2025-04"` | Optional Monday API version header (e.g., '2025-04'). Overrides default if provided. |

***

### `Monday Get Mutation Complexity`

Integration name: **MONDAY\_GET\_MUTATION\_COMPLEXITY**

Tool to get complexity data of mutations in Monday.com. Use when you need to track API quota usage or monitor rate limits for mutation operations.

**Parameters**

| Parameter | Type   | Required | Example                                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                        |
| --------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`   | string |     ✅    | `"mutation { complexity { query before after reset_in_x_seconds } create_item(board_id: 123, item_name: \"Test\") { id } }"` | GraphQL mutation string that includes the complexity meta-field. The complexity field can be added to any mutation to track API quota usage. Format: mutation { complexity { query before after reset\_in\_x\_seconds } \<mutation\_operation> { fields } }. Example: mutation { complexity { query before after reset\_in\_x\_seconds } create\_item(board\_id: 123, item\_name: "Test") { id } } |

***

### `Monday Get Query Complexity`

Integration name: **MONDAY\_GET\_QUERY\_COMPLEXITY**

Tool to retrieve complexity data and cost metrics for Monday.com API operations. Use when you need to monitor API rate limits and complexity budget usage.

**Parameters**

*No parameters required.*

***

### `Monday Get Tags`

Integration name: **MONDAY\_GET\_TAGS**

Tool to retrieve tags from the account. Use when you need to list all tags or filter by specific IDs.

**Parameters**

| Parameter | Type  | Required | Example     | Description                                                                        |
| --------- | ----- | :------: | ----------- | ---------------------------------------------------------------------------------- |
| `ids`     | array |          | `[123,456]` | Optional list of tag IDs to filter; only tags matching these IDs will be returned. |

***

### `Monday Get Teams`

Integration name: **MONDAY\_GET\_TEAMS**

Tool to retrieve teams from Monday.com. Use when you need an overview of teams in your account.

**Parameters**

| Parameter | Type  | Required | Example      | Description                                                                 |
| --------- | ----- | :------: | ------------ | --------------------------------------------------------------------------- |
| `ids`     | array |          | `1234567890` | Optional list of team IDs to filter by. If omitted, all teams are returned. |

***

### `Monday Get Update Replies`

Integration name: **MONDAY\_GET\_UPDATE\_REPLIES**

Retrieves updates and their replies for a specific Monday.com item. Use this to fetch conversation threads and discussions attached to an item, including all replies to each update.

**Parameters**

| Parameter | Type    | Required | Example        | Description                                                         |
| --------- | ------- | :------: | -------------- | ------------------------------------------------------------------- |
| `page`    | integer |          | `1`            | Page number for pagination, starts at 1.                            |
| `limit`   | integer |          | `10`           | Number of updates to return per page. Maximum 100, default 25.      |
| `item_id` | string  |     ✅    | `"1234567890"` | The unique identifier of the item to fetch updates and replies for. |

***

### `Monday Get Updates`

Integration name: **MONDAY\_GET\_UPDATES**

Tool to retrieve updates for a specific item. Use when you need to fetch the conversation history tied to an item.

**Parameters**

| Parameter | Type    | Required | Example        | Description                                                 |
| --------- | ------- | :------: | -------------- | ----------------------------------------------------------- |
| `page`    | integer |          | `1`            | Page number for pagination (starts at 1).                   |
| `limit`   | integer |          | `10`           | Number of updates to return per page (max 100, default 25). |
| `item_id` | string  |     ✅    | `"1234567890"` | The unique identifier of the item to fetch updates for.     |

***

### `Monday Get Versions`

Integration name: **MONDAY\_GET\_VERSIONS**

Tool to retrieve data about available API versions. Use when you need to check which API versions are supported by Monday.com.

**Parameters**

*No parameters required.*

***

### `Monday Get View Schema By Type`

Integration name: **MONDAY\_GET\_VIEW\_SCHEMA\_BY\_TYPE**

Tool to retrieve type-specific board view configuration schemas via GraphQL API. Use when you need to understand the structure and available settings for creating or updating board views of a specific type.

**Parameters**

| Parameter       | Type   | Required | Example    | Description                                                                                                                           |
| --------------- | ------ | :------: | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `type`          | string |     ✅    | `"TABLE"`  | Specifies which view type's schema to retrieve. Determines the structure of configuration settings returned.                          |
| `mutation_type` | string |     ✅    | `"CREATE"` | Indicates whether the schema is for CREATE or UPDATE operations. Different mutation types may expose different configuration options. |

***

### `Monday Get Webhooks`

Integration name: **MONDAY\_GET\_WEBHOOKS**

Tool to retrieve webhooks for a board. Use when you need to list all webhooks on a board.

**Parameters**

| Parameter           | Type    | Required | Example      | Description                                               |
| ------------------- | ------- | :------: | ------------ | --------------------------------------------------------- |
| `board_id`          | integer |     ✅    | `1234567890` | The unique identifier of the board to fetch webhooks for. |
| `app_webhooks_only` | boolean |          | `true`       | Return only webhooks created by the calling app.          |

***

### `Monday Get Workspaces`

Integration name: **MONDAY\_GET\_WORKSPACES**

Tool to retrieve workspaces. Use when you need to list workspaces with optional filtering, pagination, or ordering after authentication.

**Parameters**

| Parameter  | Type    | Required | Example               | Description                                                                      |
| ---------- | ------- | :------: | --------------------- | -------------------------------------------------------------------------------- |
| `ids`      | array   |          | `["ws_123","ws_456"]` | List of specific workspace IDs to return. Provide to filter by workspace IDs.    |
| `kind`     | string  |          | `"open"`              | Filter by workspace kind. Valid values: 'open' or 'closed'.                      |
| `page`     | integer |          | `1`                   | Pagination page number; starts at 1.                                             |
| `limit`    | integer |          | `25`                  | Maximum number of workspaces to return. Default is 25.                           |
| `state`    | string  |          | `"active"`            | Filter by workspace state. Valid values: 'active', 'all', 'archived', 'deleted'. |
| `order_by` | string  |          | `"created_at"`        | Field to order by. Currently only 'created\_at' is supported.                    |

***

### `Monday Import Doc From Html`

Integration name: **MONDAY\_IMPORT\_DOC\_FROM\_HTML**

Tool to import HTML content into a new Monday.com doc, converting it to doc blocks. Use when you need to create a doc from HTML content.

**Parameters**

| Parameter      | Type    | Required | Example                                                                                                          | Description                                                                                                                              |
| -------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `html`         | string  |     ✅    | `"<h1>Test Document</h1><p>This is a test document created via API.</p><ul><li>Item 1</li><li>Item 2</li></ul>"` | The HTML content to convert into a new doc. Supports style/format text, emoji, quote, table, list, code, divider, and title/header text. |
| `kind`         | string  |          | —                                                                                                                | Document access level - private, public, or share. If omitted, defaults to workspace settings.                                           |
| `title`        | string  |          | `"API Test Doc"`                                                                                                 | The new document's title. If omitted, the title will be inferred from the provided HTML content.                                         |
| `folder_id`    | integer |          | `123456`                                                                                                         | The unique identifier of the folder to create the doc in. If omitted, the document will be created at the root level of the workspace.   |
| `workspace_id` | integer |     ✅    | `2054572`                                                                                                        | The unique identifier of the workspace to create the doc in.                                                                             |

***

### `Monday Items Page`

Integration name: **MONDAY\_ITEMS\_PAGE**

Tool to retrieve items from a Monday.com board (or group) with server-side filtering, full column\_values, and cursor-based pagination via items\_page and next\_items\_page queries. Use when you need paginated access to board items with detailed column data and optional filtering/sorting.

**Parameters**

| Parameter               | Type    | Required | Example                                                                  | Description                                                                                                                                                                                                     |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`                 | integer |          | `25`                                                                     | Number of items to return per page. Default is 25, maximum is 500 per Monday.com API limits.                                                                                                                    |
| `cursor`                | string  |          | `"MSw5NzI4MDA5MDAsaV9YcmxJb0p1VEdYc1VWeGlxeF9kLDg4MiwzNXw0MTQ1NzU1MTE5"` | Opaque pagination cursor from previous response. When provided, retrieves the next page using next\_items\_page query. Cursors are cached for 60 minutes. If provided, board\_id and query\_params are ignored. |
| `board_id`              | integer |          | `1234567890`                                                             | The board's unique identifier. Required for initial fetch (when cursor is not provided). Ignored if cursor is provided.                                                                                         |
| `group_id`              | string  |          | `"group_12345"`                                                          | Optional group ID to filter items within a specific group. Only used for initial fetch (when cursor is not provided). If provided, queries items within the group instead of the entire board.                  |
| `query_params`          | object  |          | —                                                                        | Query parameters for filtering and sorting items.                                                                                                                                                               |
| `include_column_values` | boolean |          | —                                                                        | Whether to include column\_values in the response. When false, only returns id and name for each item.                                                                                                          |

***

### `Monday Like Update`

Integration name: **MONDAY\_LIKE\_UPDATE**

Tool to like an update on an item. Use when you want to express approval or acknowledgment of an update.

**Parameters**

| Parameter   | Type    | Required | Example    | Description                                  |
| ----------- | ------- | :------: | ---------- | -------------------------------------------- |
| `update_id` | integer |     ✅    | `74019358` | The unique identifier of the update to like. |

***

### `Monday List Board Items`

Integration name: **MONDAY\_LIST\_BOARD\_ITEMS**

DEPRECATED: Use MONDAY\_ITEMS\_PAGE instead, which supports cursor-based pagination. This tool may silently omit items on larger boards. Results include archived and deleted items by default — filter by state to retrieve only active items.

**Parameters**

| Parameter  | Type    | Required | Example      | Description                                                                 |
| ---------- | ------- | :------: | ------------ | --------------------------------------------------------------------------- |
| `board_id` | integer |     ✅    | `1234567890` | The unique identifier of the Monday.com board from which to retrieve items. |

***

### `Monday List Boards`

Integration name: **MONDAY\_LIST\_BOARDS**

DEPRECATED: Use MONDAY\_BOARDS instead. Retrieves a list of boards from a Monday.com account, supporting pagination and filtering by state.

**Parameters**

| Parameter | Type    | Required | Example    | Description                                                                                                                                                                              |
| --------- | ------- | :------: | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page`    | integer |          | `"1"`      | Page number for pagination. Increment until an empty response is returned to exhaust results; limit of 50–100 reduces total calls.                                                       |
| `limit`   | integer |          | `"25"`     | Maximum number of boards to retrieve per page.                                                                                                                                           |
| `state`   | string  |          | `"active"` | Filters boards by their state. Valid states: 'active', 'archived', 'deleted', or 'all'. Default 'active' excludes archived and deleted boards; use 'all' for a complete board inventory. |

***

### `Monday List Columns`

Integration name: **MONDAY\_LIST\_COLUMNS**

DEPRECATED: Use MONDAY\_COLUMNS instead. Lists all columns and their properties for a specified Monday.com `board_id`; the board must exist.

**Parameters**

| Parameter  | Type   | Required | Example        | Description                                                                                                                                                     |
| ---------- | ------ | :------: | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id` | string |     ✅    | `"1234567890"` | The unique identifier of the board from which to retrieve the columns. Retrieve dynamically; do not hardcode, as board and column IDs are environment-specific. |

***

### `Monday List Groups`

Integration name: **MONDAY\_LIST\_GROUPS**

Tool to retrieve all groups of a specified board. Use when you need to list groups on a board after confirming its board ID. Response is nested under data → boards\[0] → groups; confirm boards\[0] exists before accessing groups.

**Parameters**

| Parameter   | Type    | Required | Example                         | Description                                                                                                                                                                                                                                                    |
| ----------- | ------- | :------: | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id`  | integer |     ✅    | `"1234567890"`                  | The unique identifier of the board from which to retrieve groups.                                                                                                                                                                                              |
| `group_ids` | array   |          | `["topics","another_group_id"]` | Optional list of specific group IDs to filter the results; provide to retrieve only these groups. Invalid or non-existent group IDs silently return an empty array rather than an error; always verify the returned groups array is non-empty before indexing. |

***

### `Monday List Items`

Integration name: **MONDAY\_LIST\_ITEMS**

Retrieves specified subitems from Monday.com using their IDs, returning raw JSON. Returned `column_values` fields (`text`, `value`) are frequently null or JSON-encoded strings (including numbers as quoted strings); null-check and JSON-decode before use.

**Parameters**

| Parameter  | Type  | Required | Example                      | Description                                                                                            |
| ---------- | ----- | :------: | ---------------------------- | ------------------------------------------------------------------------------------------------------ |
| `item_ids` | array |     ✅    | `["1234567890","987654321"]` | Subitem IDs to retrieve. For large sets, batch IDs into smaller requests to avoid response truncation. |

***

### `Monday List Items By Column Values`

Integration name: **MONDAY\_LIST\_ITEMS\_BY\_COLUMN\_VALUES**

Tool to search for items on a Monday.com board based on column values using the items\_page\_by\_column\_values query. Use when you need to find items matching specific column criteria (e.g., status="Done", name contains "Task 1"). For initial requests, provide columns; for pagination, use the cursor from the previous response.

**Parameters**

| Parameter  | Type    | Required | Example                                                                                                             | Description                                                                                                                                                                                        |
| ---------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`    | integer |          | `5`                                                                                                                 | Number of items to return per page. Default is 25, maximum is 500.                                                                                                                                 |
| `cursor`   | string  |          | `"MSw5NzI4MDA5MDAsaV9YcmxJb0p1VEdYc1VWeGlxeF9kLDg4MiwzNXw0MTQ1NzU1MTE5"`                                            | Opaque pagination cursor from previous response. Use instead of columns for paginated requests. When provided, columns parameter is ignored.                                                       |
| `columns`  | array   |          | `[{"column_id":"name","column_values":["Task 1"]},{"column_id":"status","column_values":["Working on it","Done"]}]` | Array of column filters to search by. Required for initial request (when cursor is not provided). Uses AND logic between filters and ANY\_OF logic within each filter. Cannot be used with cursor. |
| `board_id` | string  |     ✅    | `"1234567890"`                                                                                                      | The board's unique identifier. Required for all requests.                                                                                                                                          |

***

### `Monday List Subitems By Parent`

Integration name: **MONDAY\_LIST\_SUBITEMS\_BY\_PARENT**

Tool to retrieve subitems nested under parent items via GraphQL API. Use when you need to list subitems and their column values for specific parent items. Monday's API requires querying subitems through their parent items.

**Parameters**

| Parameter               | Type    | Required | Example          | Description                                                                             |
| ----------------------- | ------- | :------: | ---------------- | --------------------------------------------------------------------------------------- |
| `parent_item_ids`       | array   |     ✅    | `["1234567890"]` | Array of parent item IDs whose subitems should be retrieved. Required.                  |
| `include_column_values` | boolean |          | —                | Whether to include column\_values (id, text, value) for each subitem. Defaults to true. |
| `include_parent_fields` | boolean |          | —                | Whether to include parent item's id and name in the response. Defaults to true.         |

***

### `Monday List Team Members`

Integration name: **MONDAY\_LIST\_TEAM\_MEMBERS**

Tool to list members of a specified team. Use when you need to retrieve all users in a given Monday.com team after confirming its team ID.

**Parameters**

| Parameter      | Type   | Required | Example    | Description                                                     |
| -------------- | ------ | :------: | ---------- | --------------------------------------------------------------- |
| `team_ids`     | array  |          | `[123456]` | List of team IDs to filter. If omitted, all teams are returned. |
| `user_filters` | object |          | —          | Filters to apply when querying team users.                      |

***

### `Monday List Users`

Integration name: **MONDAY\_LIST\_USERS**

Retrieves a list of users from Monday.com. Paginate by starting at page=1, incrementing page on each request, and stopping when the returned user list is empty. An empty user list does not signify action failure.

**Parameters**

| Parameter | Type    | Required | Example | Description                                 |
| --------- | ------- | :------: | ------- | ------------------------------------------- |
| `page`    | integer |          | `"1"`   | Page number for results; starts at 1.       |
| `limit`   | integer |          | `"10"`  | Maximum number of users to return per page. |

***

### `Monday Move Item To Board`

Integration name: **MONDAY\_MOVE\_ITEM\_TO\_BOARD**

Moves a Monday.com item to a specified board and group; requires the item, target board, and target group to exist.

**Parameters**

| Parameter  | Type    | Required | Example             | Description                                                                                       |
| ---------- | ------- | :------: | ------------------- | ------------------------------------------------------------------------------------------------- |
| `item_id`  | integer |     ✅    | `"987654321"`       | The unique identifier of the item to be moved.                                                    |
| `board_id` | integer |     ✅    | `"1234567890"`      | The unique identifier of the target board to which the item will be moved.                        |
| `group_id` | string  |     ✅    | `"new_group_12345"` | The unique identifier of the target group on the destination board where the item will be placed. |

***

### `Monday Move Item To Group`

Integration name: **MONDAY\_MOVE\_ITEM\_TO\_GROUP**

Moves an item to a different group on the same Monday.com board; the item and group must exist.

**Parameters**

| Parameter  | Type    | Required | Example            | Description                                                             |
| ---------- | ------- | :------: | ------------------ | ----------------------------------------------------------------------- |
| `item_id`  | integer |     ✅    | `"1234567890"`     | The unique identifier of the item to be moved.                          |
| `group_id` | string  |     ✅    | `"new_group_7531"` | The unique identifier of the target group where the item will be moved. |

***

### `Monday Mute Board Settings`

Integration name: **MONDAY\_MUTE\_BOARD\_SETTINGS**

Tool to query a board's notification mute settings. Use when you need to check if notifications are muted for specific boards.

**Parameters**

| Parameter   | Type  | Required | Example          | Description                                                                                                         |
| ----------- | ----- | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------- |
| `board_ids` | array |     ✅    | `["5025528617"]` | The unique identifiers of the boards to retrieve mute settings for. This is a required non-null array of board IDs. |

***

### `Monday Pin To Top`

Integration name: **MONDAY\_PIN\_TO\_TOP**

Tool to pin an update to the top of an item. Use when you need to highlight an important update or keep it visible at the top.

**Parameters**

| Parameter   | Type    | Required | Example      | Description                                            |
| ----------- | ------- | :------: | ------------ | ------------------------------------------------------ |
| `item_id`   | integer |          | `1234567890` | The unique identifier of the item. Optional parameter. |
| `update_id` | integer |     ✅    | `74019358`   | The unique identifier of the update to pin to the top. |

***

### `Monday Publish Object`

Integration name: **MONDAY\_PUBLISH\_OBJECT**

Tool to publish a Monday.com object. Use when you need to make an object publicly visible or change its state to published.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                                                                                                                                        |
| --------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"5025528678"` | The unique identifier of the Monday.com object to publish. This is typically a board ID or document ID. The object will be made shareable/public after publishing. |

***

### `Monday Query Dashboards`

Integration name: **MONDAY\_QUERY\_DASHBOARDS**

Tool to query dashboards via Monday.com objects API. Use when you need to list all dashboards with their metadata, owners, and subscribers.

**Parameters**

| Parameter | Type    | Required | Example | Description                                                         |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------------- |
| `limit`   | integer |          | `25`    | Maximum number of dashboards to return. Limits the result set size. |

***

### `Monday Query Sprints`

Integration name: **MONDAY\_QUERY\_SPRINTS**

Tool to query sprint data for agile project management from Monday.com boards. Use when you need to retrieve sprint information including sprint title, ID, color, position, archived/deleted status, and associated items.

**Parameters**

| Parameter    | Type  | Required | Example                       | Description                                                                                                                     |
| ------------ | ----- | :------: | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `board_ids`  | array |     ✅    | `["1234567890"]`              | List of board IDs to query sprint groups from. Sprints are implemented as groups on sprint boards.                              |
| `sprint_ids` | array |          | `["sprint_123","sprint_456"]` | Optional list of specific sprint (group) IDs to filter the results. If not provided, all sprints on the board will be returned. |

***

### `Monday Remove Users From Team`

Integration name: **MONDAY\_REMOVE\_USERS\_FROM\_TEAM**

Tool to remove users from a Monday.com team. Use when updating team membership by removing user(s).

**Parameters**

| Parameter  | Type    | Required | Example           | Description                                        |
| ---------- | ------- | :------: | ----------------- | -------------------------------------------------- |
| `team_id`  | integer |     ✅    | `123456789`       | Unique identifier of the existing Monday.com team. |
| `user_ids` | array   |     ✅    | `[111222,333444]` | List of user IDs to remove from the team.          |

***

### `Monday Remove Users From Workspace`

Integration name: **MONDAY\_REMOVE\_USERS\_FROM\_WORKSPACE**

Tool to remove users from a workspace. Use when revoking access for specific users in a workspace.

**Parameters**

| Parameter      | Type    | Required | Example               | Description                                           |
| -------------- | ------- | :------: | --------------------- | ----------------------------------------------------- |
| `user_ids`     | array   |     ✅    | `[12345678,87654321]` | List of unique user IDs to remove from the workspace. |
| `workspace_id` | integer |     ✅    | `1234567`             | Unique identifier of the workspace.                   |

***

### `Monday Set Board Permission`

Integration name: **MONDAY\_SET\_BOARD\_PERMISSION**

Sets or updates a board's default role and permissions. Use when you need to configure default permissions for a board. Requires boards:write scope and can only be used by board owners on enterprise plans.

**Parameters**

| Parameter         | Type    | Required | Example      | Description                                                                                                                                  |
| ----------------- | ------- | :------: | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id`        | integer |     ✅    | `5025528617` | The board's unique identifier. The board must exist and you must be the board owner.                                                         |
| `basic_role_name` | string  |     ✅    | `"viewer"`   | The role to assign. 'contributor' allows editing content, 'editor' allows editing content and structure, 'viewer' provides read-only access. |

***

### `Monday Timeline`

Integration name: **MONDAY\_TIMELINE**

Tool to retrieve an item's Email & Activities (E\&A) timeline data from Monday.com. Use when you need to access CRM activity tracking and client communication history for a specific item. This returns a paginated list of timeline entries.

**Parameters**

| Parameter | Type    | Required | Example      | Description                                                                                            |
| --------- | ------- | :------: | ------------ | ------------------------------------------------------------------------------------------------------ |
| `id`      | integer |     ✅    | `2521212256` | The unique identifier of the item from which to retrieve timeline activities. Must be a valid item ID. |

***

### `Monday Timeline Item`

Integration name: **MONDAY\_TIMELINE\_ITEM**

Tool to retrieve a specific timeline item from the Emails & Activities app by ID. Use when you need to fetch metadata including content, user, title, type, and associated custom activity for a timeline item.

**Parameters**

| Parameter | Type   | Required | Example                                  | Description                                                                                                                        |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"1a74b729-7770-4366-bf07-c2c06d34ddec"` | The unique identifier of the timeline item to retrieve. Must be a valid UUID string obtained from create\_timeline\_item mutation. |

***

### `Monday Unlike Update`

Integration name: **MONDAY\_UNLIKE\_UPDATE**

Tool to remove a like from an update on an item. Use when you want to retract a previously expressed approval or acknowledgment of an update.

**Parameters**

| Parameter   | Type    | Required | Example    | Description                                    |
| ----------- | ------- | :------: | ---------- | ---------------------------------------------- |
| `update_id` | integer |     ✅    | `74019358` | The unique identifier of the update to unlike. |

***

### `Monday Unpin From Top`

Integration name: **MONDAY\_UNPIN\_FROM\_TOP**

Tool to unpin an update from the top of an item. Use when you want to remove a pinned update from the top position of an item's updates feed.

**Parameters**

| Parameter   | Type    | Required | Example      | Description                                                |
| ----------- | ------- | :------: | ------------ | ---------------------------------------------------------- |
| `item_id`   | integer |          | `9876543210` | The unique identifier of the item. Optional parameter.     |
| `update_id` | integer |     ✅    | `74019358`   | The unique identifier of the update to unpin from the top. |

***

### `Monday Unpublish Object`

Integration name: **MONDAY\_UNPUBLISH\_OBJECT**

Unpublish a Monday.com object (board, item, or workspace) to revert it from a published state. The operation will return success=true only if the object was previously published and can be unpublished. If the object is not in a publishable state or was never published, success=false is returned.

**Parameters**

| Parameter | Type   | Required | Example        | Description                                                                                                                                                                                       |
| --------- | ------ | :------: | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"9066850591"` | The unique identifier (numeric string) of the Monday.com object to unpublish. This can be a board ID, item ID, or workspace ID. Objects must be in a published state for unpublishing to succeed. |

***

### `Monday Update Board`

Integration name: **MONDAY\_UPDATE\_BOARD**

Updates a specified attribute of an existing board on Monday.com.

**Parameters**

| Parameter         | Type   | Required | Example         | Description                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------------- | ------ | :------: | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id`        | string |     ✅    | `"1234567890"`  | The unique identifier of the board to be updated.                                                                                                                                                                                                                                                                                                                                                             |
| `new_value`       | string |     ✅    | —               | The new value to assign to the specified board attribute.                                                                                                                                                                                                                                                                                                                                                     |
| `board_attribute` | string |     ✅    | `"description"` | The specific attribute of the board to update. This should be an enum value as defined by Monday.com's API and should not be enclosed in quotes in the final GraphQL mutation. Common updatable attributes include 'description' and 'communication'. Unsupported enum values may be silently ignored without returning an error, so verify the attribute name is valid before assuming the update succeeded. |

***

### `Monday Update Board Hierarchy`

Integration name: **MONDAY\_UPDATE\_BOARD\_HIERARCHY**

Updates a board's position, workspace, or product in Monday.com. Use when you need to move a board to a different workspace or folder, assign it to a product, or reposition it relative to other boards.

**Parameters**

| Parameter    | Type    | Required | Example      | Description                                                                                                                               |
| ------------ | ------- | :------: | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `board_id`   | integer |     ✅    | `5025528669` | The board's unique identifier.                                                                                                            |
| `attributes` | object  |     ✅    | —            | The board's attributes to update. At least one attribute (workspace\_id, folder\_id, account\_product\_id, or position) must be provided. |

***

### `Monday Update Column`

Integration name: **MONDAY\_UPDATE\_COLUMN**

Tool to update column title or description. Use when modifying a column’s metadata after creation.

**Parameters**

| Parameter         | Type    | Required | Example              | Description                                                             |
| ----------------- | ------- | :------: | -------------------- | ----------------------------------------------------------------------- |
| `value`           | string  |     ✅    | `"New Column Title"` | The new value for the specified column property.                        |
| `board_id`        | integer |     ✅    | `"1234567890"`       | The unique identifier of the board containing the column to be updated. |
| `column_id`       | string  |     ✅    | `"status_1"`         | The column's unique identifier (e.g., 'status\_1', 'text\_2').          |
| `column_property` | string  |     ✅    | `"title"`            | The metadata property to update. Must be 'description' or 'title'.      |

***

### `Monday Update Doc`

Integration name: **MONDAY\_UPDATE\_DOC**

Tool to update a doc's title or append markdown content. Use when renaming docs or adding Markdown blocks to existing docs.

**Parameters**

| Parameter        | Type   | Required | Example                    | Description                                                                                      |
| ---------------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------------------ |
| `title`          | string |          | `"Weekly Standup Notes"`   | The new title for the document.                                                                  |
| `doc_id`         | string |     ✅    | `"123456789"`              | The unique identifier of the Monday.com document to update.                                      |
| `markdown`       | string |          | `"# Summary\n- Point one"` | Markdown content to append to the document.                                                      |
| `after_block_id` | string |          | `"block_abc123"`           | Block ID after which to insert the markdown content. If omitted, content is appended at the end. |

***

### `Monday Update Email Domain`

Integration name: **MONDAY\_UPDATE\_EMAIL\_DOMAIN**

Tool to update users' email domains. Use when migrating users to a new email domain; requires admin privileges.

**Parameters**

| Parameter    | Type   | Required | Example               | Description                                                                    |
| ------------ | ------ | :------: | --------------------- | ------------------------------------------------------------------------------ |
| `user_ids`   | array  |     ✅    | `[97263478,12345678]` | List of unique identifiers for users whose email domains will be updated.      |
| `new_domain` | string |     ✅    | `"testdomain.com"`    | The new email domain to apply to the specified users (e.g., 'newcompany.com'). |

***

### `Monday Update Folder`

Integration name: **MONDAY\_UPDATE\_FOLDER**

Tool to update a Monday.com folder's properties including name, color, or parent folder. Use when you need to modify existing folder details or move folders between workspaces.

**Parameters**

| Parameter          | Type    | Required | Example                            | Description                                                                                                                                                                                                                                                                                                                                       |
| ------------------ | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`             | string  |          | `"Updated Test Folder - API Test"` | The new name for the folder.                                                                                                                                                                                                                                                                                                                      |
| `color`            | string  |          | `"AQUAMARINE"`                     | The folder's color. Available colors include: DONE\_GREEN, DARK\_RED, LIPSTICK, SALADISH, EGG\_YOK, WORKING\_ORANGE, DARK\_ORANGE, PEACH, SUNSET, STUCK\_RED, SOFIA\_PINK, PURPLE, DARK\_PURPLE, BERRY, ROYAL, BLUISH\_PURPLE, NAVY, BRIGHT\_BLUE, DARK\_BLUE, AQUAMARINE, CHILI\_BLUE, RIVER, WINTER, EXPLOSIVE, TESLA, LIPSTICK\_LIGHT, BUBBLE. |
| `folder_id`        | integer |     ✅    | `6436890`                          | The unique identifier of the folder to update.                                                                                                                                                                                                                                                                                                    |
| `workspace_id`     | integer |          | `9876543`                          | The unique identifier of the workspace to move the folder to. Use for cross-workspace transfers.                                                                                                                                                                                                                                                  |
| `parent_folder_id` | integer |          | `1234567`                          | The ID of the folder you want to nest the updated folder under. Use to move folder to a different parent.                                                                                                                                                                                                                                         |

***

### `Monday Update Group`

Integration name: **MONDAY\_UPDATE\_GROUP**

Tool to update an existing group on a board. Use when you need to modify a group's attribute (title, color, or position) after confirming the group ID.

**Parameters**

| Parameter         | Type    | Required | Example            | Description                                                                                                                                                                                            |
| ----------------- | ------- | :------: | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `board_id`        | integer |     ✅    | `"1234567890"`     | The unique identifier of the board containing the group.                                                                                                                                               |
| `group_id`        | string  |     ✅    | `"topics"`         | The unique identifier of the group to update (use the group ID or descriptive string).                                                                                                                 |
| `new_value`       | string  |     ✅    | `"New Group Name"` | The new value for the specified attribute. For title or color, provide the new string value. For relative\_position\_after/before, provide the target group ID.                                        |
| `group_attribute` | string  |     ✅    | `"title"`          | The attribute of the group to update. Must be one of: color, position, relative\_position\_after, relative\_position\_before, title. Do not enclose this enum value in quotes in the GraphQL mutation. |

***

### `Monday Update Item`

Integration name: **MONDAY\_UPDATE\_ITEM**

Tool to update an existing item's column value on Monday.com. Use when setting complex column types like Timeline or People.

**Parameters**

| Parameter                  | Type    | Required | Example       | Description                                                                                                                                                                                                                                               |
| -------------------------- | ------- | :------: | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `value`                    | —       |     ✅    | `{"index":1}` | New column value as a JSON-serializable object or string. This will be stringified for the GraphQL mutation. For text/number/name columns, send a plain string; for complex columns like status/timeline/people, send a JSON object (e.g., {"index": 1}). |
| `item_id`                  | string  |     ✅    | `"987654321"` | ID of the item to update.                                                                                                                                                                                                                                 |
| `board_id`                 | string  |     ✅    | `"123456789"` | ID of the board containing the item.                                                                                                                                                                                                                      |
| `column_id`                | string  |     ✅    | `"status_1"`  | The unique identifier of the column to change.                                                                                                                                                                                                            |
| `create_labels_if_missing` | boolean |          | `true`        | If true, creates missing labels for Status/Dropdown columns when the label does not exist. Requires permission to change board structure.                                                                                                                 |

***

### `Monday Update Multiple Users`

Integration name: **MONDAY\_UPDATE\_MULTIPLE\_USERS**

Tool to update one or multiple users' attributes on Monday.com. Use when you need to batch update user profiles such as name, email, title, or department.

**Parameters**

| Parameter      | Type  | Required | Example | Description                                                                                                                     |
| -------------- | ----- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `user_updates` | array |     ✅    | —       | Array of user update objects, each containing user\_id and the attributes to update. At least one user update must be provided. |

***

### `Monday Update Mute Board Settings`

Integration name: **MONDAY\_UPDATE\_MUTE\_BOARD\_SETTINGS**

Tool to update a board's notification mute settings. Use when you need to configure notification preferences for a specific board.

**Parameters**

| Parameter    | Type   | Required | Example                          | Description                                                                                                                                                                                                                                                                                                                                                                   |
| ------------ | ------ | :------: | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enabled`    | array  |          | `["IM_ASSIGNED","IM_MENTIONED"]` | Array of custom notification settings, only applicable when mute\_state is CUSTOM\_SETTINGS. AUTOMATION\_NOTIFY: alerts when automations trigger notify steps. IM\_ASSIGNED: alerts when user is assigned. IM\_MENTIONED: alerts when user is mentioned.                                                                                                                      |
| `board_id`   | string |     ✅    | `"5025528617"`                   | The unique identifier of the board to modify.                                                                                                                                                                                                                                                                                                                                 |
| `mute_state` | string |     ✅    | `"CUSTOM_SETTINGS"`              | Desired mute notification state. CURRENT\_USER\_MUTE\_ALL: suppress all notifications for current user. CUSTOM\_SETTINGS: allow notifications matching enabled custom settings. MENTIONS\_AND\_ASSIGNS\_ONLY: notify only for mentions or assignments. MUTE\_ALL: suppress notifications for all users (admin only). NOT\_MUTED: remove all muting restrictions (admin only). |

***

### `Monday Update Tag`

Integration name: **MONDAY\_UPDATE\_TAG**

Tool to return a tag's details or best-effort "rename" by creating or getting a tag with the requested name. The monday API does not support updating existing tag name/color.

**Parameters**

| Parameter | Type    | Required | Example     | Description                                                                                                                        |
| --------- | ------- | :------: | ----------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `name`    | string  |          | `"urgent"`  | New name for the tag. monday API does not support renaming a tag; we will create or get a tag with this name and return it.        |
| `color`   | string  |          | `"#FFAA00"` | New color for the tag as a hex code (e.g., '#FFAA00'). monday API does not support changing tag colors; this parameter is ignored. |
| `tag_id`  | integer |     ✅    | `123456`    | Unique identifier of the tag to update or fetch.                                                                                   |

***

### `Monday Update Team`

Integration name: **MONDAY\_UPDATE\_TEAM**

Tool to update a team's details in Monday.com. Use after identifying the team and desired changes.

**Parameters**

| Parameter        | Type    | Required | Example         | Description                                        |
| ---------------- | ------- | :------: | --------------- | -------------------------------------------------- |
| `name`           | string  |          | `"Engineering"` | New name for the team.                             |
| `team_id`        | string  |     ✅    | —               | The unique identifier of the team to be updated.   |
| `is_guest_team`  | boolean |          | `true`          | Whether the team should be marked as a guest team. |
| `parent_team_id` | string  |          | `"123456"`      | ID of the new parent team if changing hierarchy.   |
| `subscriber_ids` | array   |          | `["111","222"]` | List of user IDs to subscribe to the team.         |

***

### `Monday Update Users Role`

Integration name: **MONDAY\_UPDATE\_USERS\_ROLE**

Tool to update users' roles to custom or default roles. Use when changing user permissions; admin-only operation. Cannot update your own role.

**Parameters**

| Parameter  | Type    | Required | Example               | Description                                                                                                                                         |
| ---------- | ------- | :------: | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `role_id`  | integer |          | `123456`              | Custom role ID to assign (for enterprise customers only). Either new\_role or role\_id must be provided.                                            |
| `new_role` | string  |          | `"MEMBER"`            | Default role to assign. Use this for standard roles. Valid values: ADMIN, GUEST, MEMBER, VIEW\_ONLY. Either new\_role or role\_id must be provided. |
| `user_ids` | array   |     ✅    | `[97263478,12345678]` | List of unique identifiers for users whose roles will be updated. Maximum 200 user IDs per request.                                                 |

***

### `Monday Update Workspace`

Integration name: **MONDAY\_UPDATE\_WORKSPACE**

Tool to update a Monday.com workspace. Use when you need to modify the name, description, visibility, or product placement of an existing workspace.

**Parameters**

| Parameter            | Type    | Required | Example                                     | Description                                                         |
| -------------------- | ------- | :------: | ------------------------------------------- | ------------------------------------------------------------------- |
| `kind`               | string  |          | `"open"`                                    | The visibility kind for the workspace; 'open' or 'closed'.          |
| `name`               | string  |          | `"Marketing Team"`                          | The new name for the workspace.                                     |
| `description`        | string  |          | `"Workspace for the marketing department."` | The new description for the workspace.                              |
| `workspace_id`       | integer |     ✅    | `123456`                                    | The unique identifier of the workspace to be updated.               |
| `account_product_id` | string  |          | `"prod_1234567890"`                         | The account product ID to move the workspace under (API v2025-10+). |

***

### `Monday Upload Asset`

Integration name: **MONDAY\_UPLOAD\_ASSET**

Tool to upload a file to an update or file column. Use when you need to attach a file to an existing update or file column. File attachments are permanent and irreversible; confirm with the user before uploading.

**Parameters**

| Parameter   | Type    | Required | Example     | Description                                                                                                                                                                |
| ----------- | ------- | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`      | object  |     ✅    | —           | File to upload.                                                                                                                                                            |
| `target`    | string  |     ✅    | `"update"`  | Where to upload the file. Use 'update' to attach the file to an existing update/comment, or 'column' to upload to a file column on an item.                                |
| `item_id`   | integer |          | `987654321` | The numeric ID of the item containing the file column. Required when target is 'column'. You can get this ID from creating an item or listing board items.                 |
| `column_id` | string  |          | `"files"`   | The ID of the file column to upload to. Required when target is 'column'. File columns have type 'file' and can be found by listing board columns.                         |
| `update_id` | integer |          | `123456789` | The numeric ID of the update (comment) to attach the file to. Required when target is 'update'. You can get this ID from creating an update or listing updates on an item. |

***

### `Monday User Connections`

Integration name: **MONDAY\_USER\_CONNECTIONS**

Tool to query user-specific connection data from Monday.com. Use when you need to retrieve integration connections established by the authenticated user with external services.

**Parameters**

| Parameter               | Type    | Required | Example       | Description                                                                                                            |
| ----------------------- | ------- | :------: | ------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `page`                  | integer |          | `1`           | Page index for offset-based pagination, starting from 1. Use with page\_size for paginated results.                    |
| `order`                 | string  |          | `"createdAt"` | Ordering of returned connections. Use 'createdAt' for ascending or '-createdAt' for descending order by creation date. |
| `page_size`             | integer |          | `10`          | Number of records to return per page when using offset-based pagination. Use with page parameter.                      |
| `with_automations`      | boolean |          | `true`        | Include connections that have automations attached. Set to true to filter only connections with automations.           |
| `with_state_validation` | boolean |          | `true`        | Validate connection state before returning the result. Set to true to ensure connections are in valid state.           |


# Moneybird

Your Toolhouse AI Worker can connect to Moneybird using 21 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](https://toolhouse.app/auth-connections?authkit_slugs=moneybird).

## Tools (21)

### `Moneybird Add Note To Contact`

Integration name: **MONEYBIRD\_ADD\_NOTE\_TO\_CONTACT**

Tool to add a note or to-do to a contact. Use when you need to record a comment or assign a task to a contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                                                |
| ------------------- | ------- | :------: | ---------------------- | ---------------------------------------------------------- |
| `note`              | object  |     ✅    | —                      | Payload containing the note details                        |
| `contact_id`        | string  |     ✅    | `"453386282904585657"` | ID of the contact to which the note will be added          |
| `administration_id` | integer |     ✅    | `123`                  | Numeric administration ID, part of the Moneybird URL path. |

***

### `Moneybird Archive Contact`

Integration name: **MONEYBIRD\_ARCHIVE\_CONTACT**

Tool to archive a contact. Use when a contact is no longer needed and should be hidden permanently.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                     |
| ------------------- | ------- | :------: | -------------------- | ----------------------------------------------- |
| `contact_id`        | integer |     ✅    | `453386280870347900` | The unique identifier of the contact to archive |
| `administration_id` | integer |     ✅    | `123`                | The unique identifier of the administration     |

***

### `Moneybird Create Contact`

Integration name: **MONEYBIRD\_CREATE\_CONTACT**

Tool to create a new contact in Moneybird. Use after you have an administration ID and need to onboard a new company/person. Provide either company\_name or both firstname and lastname.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                  | Type    | Required | Example                                                   | Description                                                         |
| -------------------------- | ------- | :------: | --------------------------------------------------------- | ------------------------------------------------------------------- |
| `city`                     | string  |          | `"Amsterdam"`                                             | City name                                                           |
| `phone`                    | string  |          | `"+31-20-1234567"`                                        | Phone number                                                        |
| `country`                  | string  |          | `"NL"`                                                    | ISO 3166-1 alpha-2 country code, e.g., NL                           |
| `zipcode`                  | string  |          | `"1234AB"`                                                | Postal code                                                         |
| `address1`                 | string  |          | `"Hoofdstraat 1"`                                         | Street and number                                                   |
| `address2`                 | string  |          | `"Suite 5"`                                               | Additional address line                                             |
| `lastname`                 | string  |          | `"Doe"`                                                   | Last name; required if company\_name is blank                       |
| `sepa_bic`                 | string  |          | `"ABNANL2A"`                                              | Valid BIC; required if sepa\_active                                 |
| `firstname`                | string  |          | `"John"`                                                  | First name; required if company\_name is blank                      |
| `sepa_iban`                | string  |          | `"NL91ABNA0417164300"`                                    | Valid IBAN; required if sepa\_active                                |
| `tax_number`               | string  |          | `"NL123456789B01"`                                        | Tax/VAT number                                                      |
| `customer_id`              | string  |          | `"customer-123"`                                          | Unique customer identifier; autogenerated if empty                  |
| `sepa_active`              | boolean |          | `true`                                                    | Enable SEPA direct debit; when true, other SEPA fields are required |
| `bank_account`             | string  |          | `"NL91ABNA0417164300"`                                    | Bank account number                                                 |
| `company_name`             | string  |          | `"Acme B.V."`                                             | Company name; required if firstname and lastname are blank          |
| `si_identifier`            | string  |          | `"123456789"`                                             | SEPA identifier                                                     |
| `delivery_method`          | string  |          | `"Email"`                                                 | Delivery method                                                     |
| `sepa_mandate_id`          | string  |          | `"MAN123"`                                                | Mandate ID; required if sepa\_active                                |
| `administration_id`        | integer |     ✅    | `123`                                                     | ID of the administration                                            |
| `sepa_mandate_date`        | string  |          | `"2023-01-01"`                                            | Mandate date (YYYY-MM-DD); required if sepa\_active                 |
| `sepa_sequence_type`       | string  |          | `"RCUR"`                                                  | SEPA sequence type; required if sepa\_active                        |
| `si_identifier_type`       | string  |          | `"NL:KVK"`                                                | SEPA identifier type                                                |
| `chamber_of_commerce`      | string  |          | `"12345678"`                                              | Chamber of Commerce number                                          |
| `invoice_workflow_id`      | integer |          | `1`                                                       | Invoice workflow ID                                                 |
| `estimate_workflow_id`     | integer |          | `2`                                                       | Estimate workflow ID                                                |
| `send_invoices_to_email`   | string  |          | `"invoice@example.com"`                                   | Comma-separated emails to send invoices to                          |
| `sepa_iban_account_name`   | string  |          | `"John Doe"`                                              | Account holder name for SEPA                                        |
| `send_estimates_to_email`  | string  |          | `"estimate@example.com"`                                  | Comma-separated emails to send estimates to                         |
| `custom_fields_attributes` | object  |          | `{"0":{"id":"453386278647367526","value":"Field value"}}` | Custom fields as dict of {index:{id, value}}                        |

***

### `Moneybird Create Contact Person`

Integration name: **MONEYBIRD\_CREATE\_CONTACT\_PERSON**

Tool to create a new contact person. Use when you have the contact ID and need to add a person after confirming their firstname and lastname.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                                             |
| ------------------- | ------- | :------: | ------- | ----------------------------------------------------------------------- |
| `contact_id`        | integer |     ✅    | `12345` | ID of the contact under which the person will be created                |
| `contact_person`    | object  |     ✅    | —       | Container for all contact person fields                                 |
| `administration_id` | integer |     ✅    | `12345` | ID of the administration under which the contact person will be created |

***

### `Moneybird Create Sales Invoice`

Integration name: **MONEYBIRD\_CREATE\_SALES\_INVOICE**

Tool to create a new sales invoice. Use when you need to bill a contact with specified line items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                               |
| ------------------- | ------- | :------: | ------- | --------------------------------------------------------- |
| `sales_invoice`     | object  |     ✅    | —       | Sales invoice data to create                              |
| `administration_id` | integer |     ✅    | `123`   | Numeric administration ID, part of the Moneybird URL path |

***

### `Moneybird Delete Contact`

Integration name: **MONEYBIRD\_DELETE\_CONTACT**

Tool to delete a contact. Use after confirming that contact should be removed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                 |
| ------------------- | ------- | :------: | ------- | --------------------------- |
| `contact_id`        | integer |     ✅    | —       | ID of the contact to delete |
| `administration_id` | integer |     ✅    | —       | ID of the administration    |

***

### `Moneybird Delete Contact Note`

Integration name: **MONEYBIRD\_DELETE\_CONTACT\_NOTE**

Tool to delete a note from a contact. Use when a note is no longer needed and should be removed permanently.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                 |
| ------------------- | ------- | :------: | -------------------- | ------------------------------------------- |
| `note_id`           | integer |     ✅    | `453386283072357800` | The unique identifier of the note to delete |
| `contact_id`        | integer |     ✅    | `453386283035657660` | The unique identifier of the contact        |
| `administration_id` | integer |     ✅    | `123`                | The unique identifier of the administration |

***

### `Moneybird Delete Contact Person`

Integration name: **MONEYBIRD\_DELETE\_CONTACT\_PERSON**

Tool to delete a contact person from a contact. Use after confirming the administration\_id, contact\_id, and contact\_person\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                                     |
| ------------------- | ------- | :------: | -------------------- | --------------------------------------------------------------- |
| `contact_id`        | integer |     ✅    | `453386271583110600` | The ID of the contact from which to remove a person             |
| `administration_id` | integer |     ✅    | `123`                | The Moneybird administration ID under which the contact resides |
| `contact_person_id` | integer |     ✅    | `453386271587304900` | The ID of the contact person to delete                          |

***

### `Moneybird Filter Contacts`

Integration name: **MONEYBIRD\_FILTER\_CONTACTS**

Tool to filter contacts. Use when you need to retrieve contacts matching specific criteria like created\_after or first\_name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                  | Description                                                                                        |
| ------------------- | ------- | :------: | ------------------------ | -------------------------------------------------------------------------------------------------- |
| `per_page`          | integer |          | `20`                     | Number of contacts to return per page (1-100)                                                      |
| `last_name`         | string  |          | `"Jansen"`               | Filter contacts by last name (case-insensitive)                                                    |
| `first_name`        | string  |          | `"Piet"`                 | Filter contacts by first name (case-insensitive)                                                   |
| `created_after`     | string  |          | `"2025-05-06T07:27:49Z"` | Select contacts created after this ISO 8601 UTC datetime (exclusive), e.g., '2025-05-06T07:27:49Z' |
| `updated_after`     | string  |          | `"2025-05-07T07:27:54Z"` | Select contacts updated after this ISO 8601 UTC datetime (exclusive), e.g., '2025-05-07T07:27:54Z' |
| `include_archived`  | boolean |          | —                        | Include archived contacts in the results                                                           |
| `administration_id` | integer |     ✅    | `123`                    | Numeric administration ID for the Moneybird URL path.                                              |

***

### `Moneybird Get Additional Charges`

Integration name: **MONEYBIRD\_GET\_ADDITIONAL\_CHARGES**

Tool to get additional charges for a contact. Use when you need to view pending (or optionally billed) usage or recurring charges.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                                                                           |
| ------------------- | ------- | :------: | ---------------------- | ------------------------------------------------------------------------------------- |
| `contact_id`        | string  |     ✅    | `"453386282125493567"` | ID of the contact to retrieve additional charges for                                  |
| `include_billed`    | boolean |          | `true`                 | If true, includes additional charges that have already been billed. Default is false. |
| `administration_id` | integer |     ✅    | `123`                  | Numeric administration ID, as part of the Moneybird URL path.                         |

***

### `Moneybird Get Contact`

Integration name: **MONEYBIRD\_GET\_CONTACT**

Tool to retrieve all information about a specific contact by ID. Use when you need the full details of a contact, for example before generating invoices.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                                               |
| ------------------- | ------- | :------: | ---------------------- | --------------------------------------------------------- |
| `contact_id`        | string  |     ✅    | `"453386277543216836"` | ID of the contact to retrieve                             |
| `include_archived`  | boolean |          | `true`                 | Return archived contact when true (default false)         |
| `administration_id` | integer |     ✅    | `123`                  | Numeric administration ID, part of the Moneybird URL path |

***

### `Moneybird Get Contact By Customer Id`

Integration name: **MONEYBIRD\_GET\_CONTACT\_BY\_CUSTOMER\_ID**

Tool to retrieve full contact details by customer ID. Use when you need all fields of a contact given its customer\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example | Description                                      |
| ------------------- | ------- | :------: | ------- | ------------------------------------------------ |
| `customer_id`       | string  |     ✅    | `"1"`   | Unique customer identifier for the contact.      |
| `administration_id` | integer |     ✅    | `123`   | Numeric administration ID, used in the URL path. |

***

### `Moneybird Get Contact Person`

Integration name: **MONEYBIRD\_GET\_CONTACT\_PERSON**

Tool to get all information about a contact person. Use when you have the administration, contact, and contact person IDs and need full details before updating.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                        |
| ------------------- | ------- | :------: | -------------------- | -------------------------------------------------- |
| `contact_id`        | integer |     ✅    | `453386271583110600` | The ID of the contact to which the person belongs. |
| `administration_id` | integer |     ✅    | `123`                | Numeric administration ID, used in the URL path.   |
| `contact_person_id` | integer |     ✅    | `453386271587304900` | The ID of the contact person to retrieve.          |

***

### `Moneybird Get Sales Invoice`

Integration name: **MONEYBIRD\_GET\_SALES\_INVOICE**

Tool to get a single sales invoice by ID. Use when you need detailed invoice data for a known invoice ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                                               |
| ------------------- | ------- | :------: | ---------------------- | --------------------------------------------------------- |
| `invoice_id`        | string  |     ✅    | `"453386418454005463"` | ID of the sales invoice to retrieve                       |
| `administration_id` | integer |     ✅    | `123`                  | Numeric administration ID, part of the Moneybird URL path |

***

### `Moneybird List Administrations`

Integration name: **MONEYBIRD\_LIST\_ADMINISTRATIONS**

Tool to list all administrations accessible by the authenticated user. Use when you need to obtain administration\_id for subsequent operations like create\_contact.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Moneybird List Contacts Synchronization`

Integration name: **MONEYBIRD\_LIST\_CONTACTS\_SYNCHRONIZATION**

Tool to list all contact IDs and versions for synchronization. Use when you need to detect which contacts have changed and update local data accordingly.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example             | Description                                                            |
| ------------------- | ------- | :------: | ------------------- | ---------------------------------------------------------------------- |
| `filter`            | string  |          | `"first_name:henk"` | Optional filter expression to narrow results, e.g., 'first\_name:henk' |
| `include_archived`  | boolean |          | —                   | If true, include archived contacts in the synchronization list         |
| `administration_id` | integer |     ✅    | `123`               | The unique identifier of the administration                            |

***

### `Moneybird List Sales Invoices`

Integration name: **MONEYBIRD\_LIST\_SALES\_INVOICES**

Tool to list all sales invoices in an administration. Use when you need an overview of invoices for a given administration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example        | Description                                                                                                                  |
| ------------------- | ------- | :------: | -------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `page`              | integer |          | —              | Page number for pagination (must be >= 1).                                                                                   |
| `filter`            | string  |          | `"state=sent"` | Filter expression to limit invoices. See Moneybird docs for supported filters, e.g., 'state=sent' or 'period=current\_year'. |
| `per_page`          | integer |          | —              | Number of invoices per page (max 100).                                                                                       |
| `administration_id` | integer |     ✅    | `123`          | Numeric administration ID, part of the Moneybird URL path                                                                    |

***

### `Moneybird Request Contact Payments Mandate Url`

Integration name: **MONEYBIRD\_REQUEST\_CONTACT\_PAYMENTS\_MANDATE\_URL**

Tool to request a URL for setting up a Payments mandate. Use when you need to generate a direct-debit authorization link for a contact (valid for 14 days).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example              | Description                                                                    |
| ------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------ |
| `contact_id`        | integer |     ✅    | `453386284017124900` | ID of the contact for which to generate a payments mandate URL                 |
| `identity_id`       | integer |          | `17466028447673`     | Optional identity ID when multiple identities exist; must be a valid identity. |
| `administration_id` | integer |     ✅    | `123`                | Numeric administration ID, as part of the Moneybird URL path.                  |

***

### `Moneybird Update Contact`

Integration name: **MONEYBIRD\_UPDATE\_CONTACT**

Tool to update a contact. Use when you need to modify existing contact details by ID. Only provided fields will be changed.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                                               |
| ------------------- | ------- | :------: | ---------------------- | --------------------------------------------------------- |
| `contact`           | object  |     ✅    | —                      | Key-value map of contact fields to update                 |
| `contact_id`        | string  |     ✅    | `"453386279404439494"` | ID of the contact to update                               |
| `administration_id` | integer |     ✅    | `123`                  | Numeric administration ID, part of the Moneybird URL path |

***

### `Moneybird Update Contact Person`

Integration name: **MONEYBIRD\_UPDATE\_CONTACT\_PERSON**

Tool to update a contact person. Use after selecting a specific contact person when you need to change their details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                  | Description                                                |
| ------------------- | ------- | :------: | ------------------------ | ---------------------------------------------------------- |
| `email`             | string  |          | `"john.doe@example.com"` | Email address of the contact person.                       |
| `phone`             | string  |          | `"123-456-7890"`         | Phone number of the contact person.                        |
| `lastname`          | string  |          | `"Doe"`                  | Last name of the contact person.                           |
| `firstname`         | string  |          | `"John"`                 | First name of the contact person.                          |
| `contact_id`        | string  |     ✅    | `"453386271583110602"`   | ID of the contact containing the person to update.         |
| `department`        | string  |          | `"Sales"`                | Department of the contact person.                          |
| `administration_id` | integer |     ✅    | `123`                    | Numeric administration ID, part of the Moneybird URL path. |
| `contact_person_id` | string  |     ✅    | `"453386271587304908"`   | ID of the contact person to update.                        |

***

### `Moneybird Update Sales Invoice`

Integration name: **MONEYBIRD\_UPDATE\_SALES\_INVOICE**

Tool to update an existing sales invoice by ID. Use when modifying invoice header or line items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                | Description                             |
| ------------------- | ------- | :------: | ---------------------- | --------------------------------------- |
| `sales_invoice`     | object  |     ✅    | —                      | Fields to update on the invoice         |
| `sales_invoice_id`  | string  |     ✅    | `"453386418454005463"` | ID of the sales invoice to update       |
| `administration_id` | integer |     ✅    | `123`                  | Administration ID in Moneybird URL path |


# Mural

Your Toolhouse AI Worker can connect to Mural using 22 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](https://toolhouse.app/auth-connections?authkit_slugs=mural).

## Tools (22)

### `Mural Authorization Request`

Integration name: **MURAL\_AUTHORIZATION\_REQUEST**

Tool to initiate the OAuth 2.0 authorization process. Use when you need to redirect a user to Mural to obtain an authorization code.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                | Description                                                                                                               |
| --------------- | ------ | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `scope`         | array  |     ✅    | `["room:read","room:write"]`           | List of permission scopes to request. Provided as a list of strings; they will be joined with spaces in the URL.          |
| `state`         | string |          | `"xyz123"`                             | Optional opaque value sent and returned in the callback to prevent CSRF and correlate requests.                           |
| `client_id`     | string |     ✅    | `"my_client_id"`                       | The client identifier for your Mural app (provided when registering your app).                                            |
| `redirect_uri`  | string |     ✅    | `"https://example.com/oauth/callback"` | The callback URL where users are redirected after granting access. Must match one of your app's registered redirect URLs. |
| `response_type` | string |          | —                                      | Grant type for authorization code flow; must be 'code'.                                                                   |

### `Mural Create Sticky Note`

Integration name: **MURAL\_CREATE\_STICKY\_NOTE**

Create one or more sticky note widgets on a mural. Each sticky note must be a properly structured object with required x and y coordinates. Pass the 'stickies' parameter as a direct array of objects - NOT strings, NOT nested objects. Example usage: { "muralId": "mural-id-here", "stickies": \[ {"x": 100, "y": 200, "text": "First note"}, {"x": 300, "y": 400, "text": "Second note", "shape": "circle"} ] }

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example | Description                                                                                                                                                         |
| ---------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `muralId`  | string |     ✅    | —       | Unique identifier of the mural                                                                                                                                      |
| `stickies` | array  |     ✅    | —       | Array of sticky note objects to create. Each object must have 'x' and 'y' coordinates. Pass objects directly, not strings or nested structures. Maximum 1000 items. |

### `Mural Get Current User`

Integration name: **MURAL\_GET\_CURRENT\_USER**

Tool to retrieve information about the currently authenticated user. Use when you need current user details after authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

### `Mural Get Files For Mural`

Integration name: **MURAL\_GET\_FILES\_FOR\_MURAL**

Tool to retrieve a list of file widgets in a mural. Use after confirming the mural ID when listing file attachments.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example      | Description                             |
| --------- | ------- | :------: | ------------ | --------------------------------------- |
| `next`    | string  |          | `"token123"` | Pagination token for next page of items |
| `limit`   | integer |          | `50`         | Maximum number of results to return     |
| `muralId` | string  |     ✅    | `"m12345"`   | Unique identifier of the mural          |

### `Mural Get Mural Widgets`

Integration name: **MURAL\_GET\_MURAL\_WIDGETS**

Tool to retrieve all widgets within a specified mural. Widgets include sticky notes, text boxes, shapes, images, areas, arrows, icons, files, and comments. Use this after obtaining a valid mural ID from workspace murals or other mural-related actions. Supports filtering by widget type, parent container, and pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example            | Description                                                                                                 |
| ---------- | ------- | :------: | ------------------ | ----------------------------------------------------------------------------------------------------------- |
| `next`     | string  |          | `"abc123"`         | Pagination token from previous response to retrieve the next page of results.                               |
| `type`     | array   |          | `["area","arrow"]` | List of widget types to filter by (e.g., \['area', 'sticky note']). When omitted, returns all widget types. |
| `limit`    | integer |          | `50`               | Maximum number of widgets to return per page (must be ≥1). Use with 'next' for pagination.                  |
| `muralId`  | string  |     ✅    | `"mural123"`       | Unique identifier of the mural.                                                                             |
| `parentId` | string  |          | `"parent456"`      | Filter to return only widgets contained within the specified parent widget ID (typically an area widget).   |

### `Mural Get Room`

Integration name: **MURAL\_GET\_ROOM**

Tool to retrieve information about a specific room by its ID. Use when you need details about a particular room that the authenticated user has read access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example           | Description                               |
| --------- | ------ | :------: | ----------------- | ----------------------------------------- |
| `roomId`  | string |     ✅    | `"1747989311942"` | Unique identifier of the room to retrieve |

### `Mural Get Workspace`

Integration name: **MURAL\_GET\_WORKSPACE**

Tool to retrieve information about a specific workspace by its ID. Use when you need details about a particular workspace that the authenticated user has read access to.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                    |
| ------------- | ------ | :------: | ----------------- | ---------------------------------------------- |
| `workspaceId` | string |     ✅    | `"workspace1234"` | Unique identifier of the workspace to retrieve |

### `Mural Get Workspaces`

Integration name: **MURAL\_GET\_WORKSPACES**

Tool to retrieve all workspaces the authenticated user is a member of. Use to list available workspaces before accessing rooms or murals.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                  |
| --------- | ------- | :------: | --------------- | ------------------------------------------------------------ |
| `next`    | string  |          | `"abc123token"` | Pagination token for retrieving the next page of results     |
| `limit`   | integer |          | `50`            | Maximum number of workspaces to return per page (must be ≥1) |

### `Mural List Folders`

Integration name: **MURAL\_LIST\_FOLDERS**

Tool to list all folders within a room that the authenticated user has access to. Use after MURAL\_LIST\_ROOMS to navigate folders within a specific room.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                               |
| --------- | ------- | :------: | -------------------- | --------------------------------------------------------- |
| `next`    | string  |          | `"abc123token"`      | Pagination token for retrieving the next page of results  |
| `limit`   | integer |          | `50`                 | Maximum number of folders to return per page (must be ≥1) |
| `roomId`  | string  |     ✅    | `"1747989311942180"` | Unique identifier of the room to list folders from        |

### `Mural List Open Rooms`

Integration name: **MURAL\_LIST\_OPEN\_ROOMS**

Tool to list all discoverable open rooms within a workspace. Use when you need to access publicly available rooms in a workspace that don't require specific membership.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                                |
| ------------- | ------- | :------: | ---------------- | ---------------------------------------------------------- |
| `next`        | string  |          | `"abc123token"`  | Pagination token for retrieving the next page of results   |
| `limit`       | integer |          | `50`             | Maximum number of rooms to return per page (must be ≥1)    |
| `workspaceId` | string  |     ✅    | `"workspace123"` | Unique identifier of the workspace to list open rooms from |

### `Mural List Recent Murals`

Integration name: **MURAL\_LIST\_RECENT\_MURALS**

Tool to list recently opened active murals for the authenticated user in a workspace. Use after MURAL\_LIST\_WORKSPACES to view recent murals before opening or editing them.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                                   |
| ------------- | ------- | :------: | ---------------- | ------------------------------------------------------------- |
| `next`        | string  |          | `"abc123token"`  | Pagination token for retrieving the next page of results      |
| `limit`       | integer |          | `50`             | Maximum number of murals to return per page (must be ≥1)      |
| `workspaceId` | string  |     ✅    | `"workspace123"` | Unique identifier of the workspace to list recent murals from |

### `Mural List Recent Templates`

Integration name: **MURAL\_LIST\_RECENT\_TEMPLATES**

Tool to retrieve recent templates used by a user for a workspace. Use when you need to access recently used templates for creating new murals.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                                                |
| ---------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------- |
| `next`           | string  |          | `"abc123token"`   | Pagination token for retrieving the next page of results                   |
| `limit`          | integer |          | `50`              | Maximum number of templates to return per page (must be ≥1)                |
| `workspaceId`    | string  |     ✅    | `"workspace1234"` | Unique identifier of the workspace to list recent templates from           |
| `withoutDefault` | boolean |          | `true`            | If true, the list of returned templates will not include default templates |

### `Mural List Room Murals`

Integration name: **MURAL\_LIST\_ROOM\_MURALS**

Tool to list all murals for a room that the authenticated user has read access to. Use after getting a room ID to retrieve murals within that room.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                              | Description                                              |
| ---------- | ------- | :------: | ------------------------------------ | -------------------------------------------------------- |
| `next`     | string  |          | `"abc123token"`                      | Token to get the next page of items                      |
| `limit`    | integer |          | `50`                                 | Maximum number of results to be returned by the endpoint |
| `roomId`   | integer |     ✅    | `1610033618903`                      | Unique identifier of the room to list murals from        |
| `sortBy`   | string  |          | `"lastCreated"`                      | Sort order options for murals.                           |
| `status`   | string  |          | `"active"`                           | Status filter for murals.                                |
| `folderId` | string  |          | `"29abcfdd-b9ba-4ced-aa27-00694889"` | When set, filter murals by their corresponding folder    |

### `Mural List Rooms`

Integration name: **MURAL\_LIST\_ROOMS**

Tool to list all rooms within a workspace. Use after MURAL\_LIST\_WORKSPACES to navigate rooms and before MURAL\_CREATE\_MURAL, since murals are created within rooms.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                              |
| ------------- | ------- | :------: | ---------------- | -------------------------------------------------------- |
| `next`        | string  |          | `"abc123token"`  | Pagination token for retrieving the next page of results |
| `limit`       | integer |          | `50`             | Maximum number of rooms to return per page (must be ≥1)  |
| `workspaceId` | string  |     ✅    | `"workspace123"` | Unique identifier of the workspace to list rooms from    |

### `Mural List Room Users`

Integration name: **MURAL\_LIST\_ROOM\_USERS**

Tool to list all members and guests for a room. Returns users that the authenticated user has access to view. Use after LIST\_ROOMS to get room membership details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example              | Description                                              |
| --------- | ------- | :------: | -------------------- | -------------------------------------------------------- |
| `next`    | string  |          | `"abc123token"`      | Pagination token for retrieving the next page of results |
| `limit`   | integer |          | `50`                 | Maximum number of users to return per page (must be ≥1)  |
| `roomId`  | string  |     ✅    | `"1747989311942180"` | Unique identifier of the room to list users from         |

### `Mural List Tags`

Integration name: **MURAL\_LIST\_TAGS**

Tool to retrieve all tags in a mural. Use when you need to list or view tags associated with a specific mural.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                         | Description                  |
| --------- | ------ | :------: | ------------------------------- | ---------------------------- |
| `muralId` | string |     ✅    | `"workspace1234.1606743986126"` | Unique identifier of a mural |

### `Mural List Templates`

Integration name: **MURAL\_LIST\_TEMPLATES**

Tool to retrieve all default templates available in Mural. Use when you need to browse or select from standard Mural templates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example         | Description                                                 |
| --------- | ------- | :------: | --------------- | ----------------------------------------------------------- |
| `next`    | string  |          | `"abc123token"` | Pagination token for retrieving the next page of results    |
| `limit`   | integer |          | `50`            | Maximum number of templates to return per page (must be ≥1) |

### `Mural List Workspace Murals`

Integration name: **MURAL\_LIST\_WORKSPACE\_MURALS**

Tool to list all murals in a workspace that the authenticated user owns or is a member of. Use after getting a workspace ID to browse available murals.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example           | Description                                              |
| ------------- | ------- | :------: | ----------------- | -------------------------------------------------------- |
| `next`        | string  |          | `"abc123token"`   | Pagination token for retrieving the next page of results |
| `limit`       | integer |          | `50`              | Maximum number of murals to return per page (must be ≥1) |
| `sortBy`      | string  |          | `"lastCreated"`   | Sort order for murals.                                   |
| `status`      | string  |          | `"active"`        | Status filter for murals.                                |
| `workspaceId` | string  |     ✅    | `"workspace1234"` | Unique identifier of the workspace to list murals from   |

### `Mural List Workspace Templates`

Integration name: **MURAL\_LIST\_WORKSPACE\_TEMPLATES**

Tool to get default and custom templates for a workspace. Use when you need to list available templates after authentication.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example           | Description                                                                |
| ---------------- | ------- | :------: | ----------------- | -------------------------------------------------------------------------- |
| `next`           | string  |          | `"token123"`      | Pagination token for retrieving the next page of results                   |
| `limit`          | integer |          | `50`              | Maximum number of templates to return per page (must be ≥1)                |
| `workspaceId`    | string  |     ✅    | `"workspace1234"` | Unique identifier of the workspace to list templates from                  |
| `withoutDefault` | boolean |          | `true`            | If true, the list of returned templates will not include default templates |

### `Mural Search Murals`

Integration name: **MURAL\_SEARCH\_MURALS**

Tool to search for murals within a workspace. Returns all murals that the authenticated user owns or is a member of for the specified workspace. Use when searching for specific murals by query text.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example           | Description                                                                                       |
| ------------- | ------- | :------: | ----------------- | ------------------------------------------------------------------------------------------------- |
| `q`           | string  |     ✅    | `"Item"`          | The text this search query is for                                                                 |
| `next`        | string  |          | `"abc123token"`   | Token to get the next page of items                                                               |
| `limit`       | integer |          | `50`              | Maximum number of results to be returned by the endpoint (must be ≥1)                             |
| `roomId`      | integer |          | `1610033618903`   | Unique identifier of a room. When provided, restrict the results to murals in the specified room. |
| `workspaceId` | string  |     ✅    | `"workspace1234"` | Unique identifier of the workspace to search murals in                                            |

### `Mural Search Rooms`

Integration name: **MURAL\_SEARCH\_ROOMS**

Tool to search for rooms within a workspace by name or description. Returns all rooms that the authenticated user owns or is a member of matching the query. Use when you need to find specific rooms by search text.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                                  |
| ------------- | ------- | :------: | ---------------- | ------------------------------------------------------------ |
| `q`           | string  |     ✅    | `"room"`         | The search query text to filter rooms by name or description |
| `next`        | string  |          | `"abc123token"`  | Pagination token for retrieving the next page of results     |
| `limit`       | integer |          | `50`             | Maximum number of rooms to return per page (must be ≥1)      |
| `workspaceId` | string  |     ✅    | `"workspace123"` | Unique identifier of the workspace to search rooms from      |

### `Mural Search Templates`

Integration name: **MURAL\_SEARCH\_TEMPLATES**

Tool to search templates within a workspace that the authenticated user owns or has access to. Use when you need to find specific templates by name or keyword.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example          | Description                                                 |
| ------------- | ------- | :------: | ---------------- | ----------------------------------------------------------- |
| `q`           | string  |     ✅    | `"template"`     | The text search query for finding templates                 |
| `next`        | string  |          | `"abc123token"`  | Pagination token for retrieving the next page of results    |
| `limit`       | integer |          | `50`             | Maximum number of templates to return per page (must be ≥1) |
| `workspaceId` | string  |     ✅    | `"workspace123"` | Unique identifier of the workspace to search templates in   |


# Notion

Your Toolhouse AI Worker can connect to Notion using 48 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](https://toolhouse.app/auth-connections?authkit_slugs=notion).

## Tools (48)

### `Notion Add Multiple Page Content`

Integration name: **NOTION\_ADD\_MULTIPLE\_PAGE\_CONTENT**

Bulk-add content blocks to Notion. Text >2000 chars auto-splits. Parses markdown formatting. ⚠️ PARENT BLOCK TYPES: Content is added AS CHILDREN of parent\_block\_id. - To add content AFTER a heading, use PAGE ID as parent + heading ID in 'after' param. - Headings CANNOT have children unless is\_toggleable=True. Simplified format: {'content': 'text', 'block\_property': 'paragraph'} Full format for code: {'type': 'code', 'code': {'rich\_text': \[...], 'language': 'python'}} Array format also supported (auto-normalized): \[{"parent\_block\_id": "..."}, {block1}, {block2}] => proper request structure

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                                                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ----------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`           | string |          | `"4b5f6e87-123a-456b-789c-9de8f7a9e4c0"`                                                                                                                                                                                                                     | Block ID to insert content AFTER (as siblings). Use this to add content after a heading: set parent\_block\_id to the PAGE ID and 'after' to the HEADING block ID. The new blocks appear immediately after this block at the same nesting level. If omitted, blocks are appended to the end of the parent's children list.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `content_blocks`  | array  |     ✅    | `[{"content":"# Project Status Report","block_property":"heading_1"},{"content":"System is **running smoothly** with *excellent* performance.","block_property":"paragraph"},{"block_property":"divider"},{"content":"Task item","block_property":"to_do"}]` | ⚠️ CRITICAL: Notion API enforces 2000 char limit per text.content field. Content >2000 chars auto-splits. List of blocks to add (max 100). Each item can be in EITHER format: A) Unwrapped (recommended): {'content': 'text', 'block\_property': 'paragraph'} B) Wrapped: {'content\_block': {'content': 'text', 'block\_property': 'paragraph'}} Block content formats: 1) Simplified: {'content': 'text (REQUIRED for text blocks)', 'block\_property': 'type'} 2) Full Notion: {'type': 'code', 'code': {...}} for complex blocks. Auto-features: Markdown parsing (**bold** *italic* ~~strike~~ `code` [link](broken://pages/d51a52149f1728e308f48760690db466a730a1fe)). Valid block\_property values: paragraph, heading\_1-3, callout, to\_do, toggle, quote, bulleted/numbered\_list\_item, divider. NOTE: 'code' and 'table' blocks require full Notion format with nested children/properties. 'divider' blocks don't require content. ⚠️ UNSUPPORTED: child\_database (use NOTION\_CREATE\_DATABASE), child\_page (use NOTION\_CREATE\_NOTION\_PAGE), link\_preview (read-only). |
| `parent_block_id` | string |     ✅    | `"4b5f6e87-123a-456b-789c-9de8f7a9e4c1"`                                                                                                                                                                                                                     | The UUID of the parent page or block where content will be added AS CHILDREN (nested inside). ⚠️ COMMON MISTAKE: To add content AFTER a block (as siblings), use the page ID as parent\_block\_id and specify the block ID in the 'after' parameter. Using a heading block ID here will fail because headings cannot have children unless they are toggleable. CONTAINER BLOCKS that support children: pages, paragraph, toggle, callout, quote, bulleted\_list\_item, numbered\_list\_item, to\_do, column, column\_list, table, synced\_block, and heading\_1/2/3 ONLY if is\_toggleable=True. NON-CONTAINER blocks that CANNOT have children: heading\_1/2/3 (unless toggleable), divider, image, video, file, embed, bookmark, equation, breadcrumb, table\_of\_contents, code, and child\_database (databases don't support block children - use database entry actions instead). Accepts 32 hex chars with/without hyphens. Example: '4b5f6e87-123a-456b-789c-9de8f7a9e4c1'. Get valid IDs from create\_page, search\_pages, or other Notion actions.                                |

***

### `Notion Add Page Content`

Integration name: **NOTION\_ADD\_PAGE\_CONTENT**

DEPRECATED: Use 'add\_multiple\_page\_content' for better performance. Adds a single content block to a Notion page/block. CRITICAL: Notion API enforces a HARD LIMIT of 2000 characters per text.content field. Content exceeding 2000 chars is AUTOMATICALLY SPLIT into multiple sequential blocks. REQUIRED 'content' field for text blocks: paragraph, heading\_1-3, callout, to\_do, toggle, quote, list items. Parent blocks MUST be: Page, Toggle, To-do, Bulleted/Numbered List Item, Callout, or Quote. Common errors: - "content.length should be ≤ 2000": Text exceeds API limit (should be auto-handled) - "Content is required for paragraph blocks": Missing 'content' field for text blocks - "object\_not\_found": Invalid parent\_block\_id or no integration access For bulk operations, use 'add\_multiple\_page\_content' instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------- | ------ | :------: | ------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`           | string |          | `"4b5f6e87-123a-456b-789c-9de8f7a9e4c0"`                                                         | Identifier of an existing block. The new content block will be appended immediately after this block. If omitted or null, the new block is appended to the end of the parent's children list.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `content_block`   | —      |     ✅    | `{"content":"This is a paragraph added via API (max 2000 chars).","block_property":"paragraph"}` | ⚠️ CRITICAL: Notion API enforces a HARD LIMIT of 2000 characters per text.content field in rich\_text arrays. Content exceeding 2000 chars will be AUTOMATICALLY split into multiple blocks. SHORTCUT: You can pass a plain 'content' string at the top level (alongside page\_id) and it will be auto-wrapped as a paragraph block. OPTION 1 - Simplified format: Provide {'content': 'text', 'block\_property': 'type'}. The 'content' field is MANDATORY for: paragraph, heading\_1, heading\_2, heading\_3, callout, to\_do, toggle, quote, bulleted\_list\_item, numbered\_list\_item. Maximum 2000 chars per content field. OPTION 2 - Full Notion block format: Provide complete block structure with 'type' and properties. Must include 'object': 'block' and proper rich\_text arrays. For file/image/video blocks: use 'link' instead of 'content'. Common errors: Missing 'content' for text blocks, exceeding 2000 chars, invalid block structure. |
| `parent_block_id` | string |     ✅    | `"4b5f6e87-123a-456b-789c-9de8f7a9e4c1"`                                                         | Identifier of the parent page or block to which the new content block will be added. Parent must be one of: Page, Toggle, To-do, Bulleted/Numbered List Item, Callout, or Quote. Ensure your integration has access to this block. Use other Notion actions to obtain valid IDs. Alternative field names 'page\_id' or 'block\_id' are also accepted and will be normalized. Must not be empty.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Notion Append Block Children`

Integration name: **NOTION\_APPEND\_BLOCK\_CHILDREN**

DEPRECATED: Use NOTION\_APPEND\_TEXT\_BLOCKS, NOTION\_APPEND\_TASK\_BLOCKS, NOTION\_APPEND\_CODE\_BLOCKS, NOTION\_APPEND\_MEDIA\_BLOCKS, NOTION\_APPEND\_LAYOUT\_BLOCKS, or NOTION\_APPEND\_TABLE\_BLOCKS instead. Appends raw Notion API blocks to parent. Text limited to 2000 chars per text.content field. Each block MUST have 'object':'block' and 'type'. Use rich\_text arrays for text blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ---------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`    | string |          | `"9bc30ad4-9373-46a5-84ab-0a7845ee52e6"`                                                                                 | Optional UUID of an existing child block. New blocks will be inserted after this block. Must be a valid child block ID of the parent block. If omitted, blocks are appended at the end. Do not use placeholder values like '\<block\_id>' or invalid IDs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                                 | The unique identifier (UUID) of the parent block or page to append children to. Must be a valid Notion block/page ID in UUID format (with or without hyphens). Use NOTION\_FETCH\_DATA to find valid page IDs. Do not use placeholder values.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `children` | array  |     ✅    | `[{"type":"heading_2","object":"block","heading_2":{"rich_text":[{"text":{"content":"Section Title"},"type":"text"}]}}]` | Array of block objects (max 100 per request). 2000 char limit per text.content field. Each block MUST include: - 'object': 'block' (REQUIRED) - 'type': block type (REQUIRED) - Property matching type name with 'rich\_text' array for text blocks Pass an actual array of objects, NOT a JSON string. Text blocks (paragraph, heading\_1-3, etc.) MUST use 'rich\_text' array structure: {'rich\_text': \[{'type': 'text', 'text': {'content': 'your text here (max 2000 chars)'}}]} TABLE BLOCKS: Table blocks support up to 2 levels of nesting. The 'table' property MUST contain: - 'table\_width': number of columns (integer >= 1) - 'has\_column\_header': boolean - 'has\_row\_header': boolean - 'children': array with at least 1 table\_row block Each table\_row MUST have 'cells' array with length = table\_width. Each cell is an array of rich\_text. Example: {'type': 'table', 'object': 'block', 'table': {'table\_width': 2, 'has\_column\_header': false, 'has\_row\_header': false, 'children': \[{'type': 'table\_row', 'object': 'block', 'table\_row': {'cells': \[\[{'type': 'text', 'text': {'content': 'Cell 1'}}], \[{'type': 'text', 'text': {'content': 'Cell 2'}}]]}}]}} Common errors: - Using 'text' instead of 'rich\_text' (WRONG: heading\_2: {'text': ...}) - Missing 'object': 'block' field - Malformed rich\_text array structure - Table without 'children' array or with empty 'children' - Table\_row cells array length != table\_width - Nesting block objects directly in table cells (cells contain rich\_text arrays, not blocks) |

***

### `Notion Append Code Blocks`

Integration name: **NOTION\_APPEND\_CODE\_BLOCKS**

Append code and technical blocks (code, quote, equation) to a Notion page. Use for: - Code snippets and programming examples (code) - Citations and highlighted quotes (quote) - Mathematical formulas and equations (equation) Supported block types: - code: Code with syntax highlighting (70+ languages including Python, JavaScript, Go, Rust, etc.) - quote: Block quotes for citations - equation: LaTeX/KaTeX mathematical expressions ⚠️ Code content is limited to 2000 characters per text.content field. For longer code, split into multiple code blocks. For other block types, use specialized actions: - append\_text\_blocks: paragraphs, headings, lists - append\_task\_blocks: to-do, toggle, callout - append\_media\_blocks: image, video, audio, files - append\_layout\_blocks: divider, columns, TOC - append\_table\_blocks: tables

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                            |
| ---------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`    | string |          | —                                                                                                                                           | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                                                |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                                                    | The UUID of the parent block or page to append children to.                                                                                                                                                                                                                                                                                                                                                            |
| `children` | array  |     ✅    | `[{"code":{"language":"python","rich_text":[{"text":{"content":"print('Hello, World!')"},"type":"text"}]},"type":"code","object":"block"}]` | Array of code/technical block objects to append. Supported types: - code: Code snippet with syntax highlighting (supports 70+ languages) - quote: Block quote for citations or highlighted text - equation: Mathematical equation using LaTeX/KaTeX syntax ⚠️ Code content limited to 2000 characters per rich\_text text.content field. For longer code, split into multiple code blocks. Max 100 blocks per request. |

***

### `Notion Append Layout Blocks`

Integration name: **NOTION\_APPEND\_LAYOUT\_BLOCKS**

Append layout blocks (divider, TOC, breadcrumb, columns) to a Notion page. Supported types: - divider: Horizontal line separator - table\_of\_contents: Auto-generated from headings - breadcrumb: Page hierarchy navigation - column\_list: Multi-column layout (requires 2+ columns, each with 1+ child block) For multi-column layouts, create column\_list with column children in one request. Each column must contain at least 1 child block. For other blocks, use: append\_text\_blocks, append\_task\_blocks, append\_code\_blocks, append\_media\_blocks, or append\_table\_blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------- | ------ | :------: | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`    | string |          | —                                                    | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`             | The UUID of the parent block or page to append children to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `children` | array  |     ✅    | `[{"type":"divider","object":"block","divider":{}}]` | Array of layout/structural block objects to append. Supported types: - divider: Horizontal line separator - table\_of\_contents: Auto-generated TOC from headings - breadcrumb: Navigation breadcrumb (auto-generated) - column\_list: Container with at least 2 columns, each column must have at least 1 child block - column: Individual column (must be child of column\_list) Note: column\_list blocks must include their column children in the same request. Each column must contain at least one child block. Max 100 blocks per request. |

***

### `Notion Append Media Blocks`

Integration name: **NOTION\_APPEND\_MEDIA\_BLOCKS**

Append media blocks (image, video, audio, file, pdf, embed, bookmark) to a Notion page. Use for: - Images and screenshots (image) - YouTube/Vimeo videos or direct video URLs (video) - Audio files and podcasts (audio) - File downloads (file) - PDF documents (pdf) - Embedded content from Twitter, Figma, CodePen, etc. (embed) - Link previews with metadata (bookmark) All media blocks require external URLs. For other block types, use specialized actions: - append\_text\_blocks: paragraphs, headings, lists - append\_task\_blocks: to-do, toggle, callout - append\_code\_blocks: code, quote, equation - append\_layout\_blocks: divider, columns, TOC - append\_table\_blocks: tables

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ---------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`    | string |          | —                                                                                                                    | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                                                                                    |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                             | The UUID of the parent block or page to append children to.                                                                                                                                                                                                                                                                                                                                                                                                |
| `children` | array  |     ✅    | `[{"type":"image","image":{"type":"external","external":{"url":"https://example.com/image.png"}},"object":"block"}]` | Array of media block objects to append. Supported types: - image: Image from external URL - video: Video from YouTube, Vimeo, or direct URL - audio: Audio file from external URL - file: Generic file download link - pdf: PDF document (rendered inline) - embed: Embed from supported services (Twitter, Figma, CodePen, etc.) - bookmark: Link preview with title and description All media types require an external URL. Max 100 blocks per request. |

***

### `Notion Append Table Blocks`

Integration name: **NOTION\_APPEND\_TABLE\_BLOCKS**

Append table blocks to a Notion page. Use for structured tabular data like spreadsheets, comparison charts, and status trackers. Example: { "table\_width": 3, "has\_column\_header": true, "rows": \[ {"cells": \[\[{"type": "text", "text": {"content": "Col1"}}], \[...], \[...]]} ] } ⚠️ Cell content limited to 2000 chars per text.content field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                                                                                                                                                                                                                                                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ---------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`    | string |          | —                                                                                                                                                                                                                                                                                                                                                                | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `tables`   | array  |     ✅    | `[{"rows":[{"cells":[[{"text":{"content":"Name"},"type":"text"}],[{"text":{"content":"Role"},"type":"text"}],[{"text":{"content":"Status"},"type":"text"}]]},{"cells":[[{"text":{"content":"Alice"},"type":"text"}],[{"text":{"content":"Engineer"},"type":"text"}],[{"text":{"content":"Active"},"type":"text"}]]}],"table_width":3,"has_column_header":true}]` | Array of tables to append. Each table includes: - table\_width: Number of columns (1-100) - has\_column\_header: Style first row as header (optional, default false) - has\_row\_header: Style first column as header (optional, default false) - rows: Array of row objects (at least one required) Each row contains a 'cells' array where each cell is an array of rich text objects. The number of cells in each row MUST match table\_width. ⚠️ Cell content limited to 2000 characters per rich\_text text.content field. Max 100 tables per request. |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                                                                                                                                                                                                                                                                         | The UUID of the parent block or page to append children to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Notion Append Task Blocks`

Integration name: **NOTION\_APPEND\_TASK\_BLOCKS**

Append task blocks (to-do, toggle, callout) to a Notion page or block. Supported block types: - to\_do: Checkbox items (checkable/uncheckable) - toggle: Collapsible sections - callout: Highlighted boxes with emoji icons All three types support nested children (up to 2 levels of nesting). block\_id must be a page or block that supports children (e.g., page, toggle, paragraph, list items, quote, callout, to\_do). Blocks like divider, breadcrumb, equation do NOT support children. Limits: 2000 chars per text.content, max 100 blocks per request. For other blocks: append\_text\_blocks, append\_code\_blocks, append\_media\_blocks, append\_layout\_blocks, append\_table\_blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                      |
| ---------- | ------ | :------: | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `after`    | string |          | —                                                                                                                                         | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                          |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                                                  | The UUID of the parent page or block to append children to. Must be a page\_id or a block type that supports children (e.g., toggle, paragraph, bulleted\_list\_item, numbered\_list\_item, quote, callout, to\_do). Some block types like divider, breadcrumb, equation do NOT support children.                                                                                                |
| `children` | array  |     ✅    | `[{"type":"to_do","to_do":{"checked":false,"rich_text":[{"text":{"content":"Complete documentation"},"type":"text"}]},"object":"block"}]` | Array of task/interactive block objects to append. Supported types: - to\_do: Checkbox task item (can be checked/unchecked) - toggle: Collapsible section (click to expand/collapse) - callout: Highlighted box with emoji icon (for important notes) ⚠️ Text content limited to 2000 characters per rich\_text text.content field. Max 100 blocks per request. Max 2 levels of nesting allowed. |

***

### `Notion Append Text Blocks`

Integration name: **NOTION\_APPEND\_TEXT\_BLOCKS**

Append text blocks (paragraphs, headings, lists) to a Notion page. This is the most commonly used action for adding content to Notion. Use for: documentation, notes, articles, outlines, lists. Supported block types: - paragraph: Regular text - heading\_1, heading\_2, heading\_3: Section headers - bulleted\_list\_item: Bullet points - numbered\_list\_item: Numbered lists ⚠️ Text content is limited to 2000 characters per text.content field. For other block types, use specialized actions: - append\_task\_blocks: to-do, toggle, callout - append\_code\_blocks: code, quote, equation - append\_media\_blocks: image, video, audio, files - append\_layout\_blocks: divider, columns, TOC - append\_table\_blocks: tables

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                            |
| ---------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `after`    | string |          | `"9bc30ad4-9373-46a5-84ab-0a7845ee52e6"`                                                                                 | Optional UUID of an existing child block. New blocks will be inserted after this block.                                                                                                                                                                                                                                                                                                |
| `block_id` | string |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                                 | The UUID of the parent block or page to append children to.                                                                                                                                                                                                                                                                                                                            |
| `children` | array  |     ✅    | `[{"type":"heading_2","object":"block","heading_2":{"rich_text":[{"text":{"content":"Section Title"},"type":"text"}]}}]` | Array of text block objects to append (also accepts 'blocks' as parameter name). Supported types: - paragraph: Regular text paragraph - heading\_1, heading\_2, heading\_3: Section headings - bulleted\_list\_item: Bullet point - numbered\_list\_item: Numbered list item ⚠️ Text content limited to 2000 characters per rich\_text text.content field. Max 100 blocks per request. |

***

### `Notion Archive Notion Page`

Integration name: **NOTION\_ARCHIVE\_NOTION\_PAGE**

Archives (moves to trash) or unarchives (restores from trash) a specified Notion page. Limitation: Workspace-level pages (top-level pages with no parent page or database) cannot be archived via the API and must be archived manually in the Notion UI.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| --------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `archive` | boolean |          | —                                        | Set to `true` to move the page to trash (archive), or `false` to restore it from trash (unarchive). Defaults to `true`.                                                                                                                                                                                                                                                                                                                                                                                           |
| `page_id` | string  |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | The unique identifier (UUID) of the Notion page to be archived or unarchived. Must be a page ID, not a database ID. Note: Workspace-level pages (pages that sit at the root of your workspace with no parent page or database) cannot be archived via the API - only pages nested under other pages or databases can be archived programmatically. Page IDs can be obtained using NOTION\_SEARCH\_NOTION\_PAGE with filter\_value='page' or from the 'id' field of page objects returned by other Notion actions. |

***

### `Notion Create Comment`

Integration name: **NOTION\_CREATE\_COMMENT**

Adds a comment to a Notion page (via `parent_page_id`) OR to an existing discussion thread (via `discussion_id`); cannot create new discussion threads on specific blocks (inline comments).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ---------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `comment`        | object |     ✅    | `{"content":"Looks good to me!"}`        | Content of the comment as a NotionRichText object or a JSON string. Simplest form: {'content': 'Looks good!'} or {'text': 'Looks good!'} (both 'content' and 'text' are accepted as the field name). Can also be passed as a JSON string: '{"content": "Looks good!"}'. Optional styling fields: bold, italic, etc. The 'link' field is for external URLs only (e.g., '<https://example.com>'), NOT for page IDs. Do NOT wrap this in a list or use Notion API block JSON. |
| `discussion_id`  | string |          | `"yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"` | The ID of an existing discussion thread to which the comment will be added. This is required if `parent_page_id` is not provided. Must be a valid UUID (32 hex characters with or without hyphens).                                                                                                                                                                                                                                                                        |
| `parent_page_id` | string |          | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"` | The ID of the Notion page where the comment will be added. This is required if `discussion_id` is not provided. Must be a valid UUID (32 hex characters with or without hyphens). Page IDs can be obtained using other Notion actions that fetch page details or list pages.                                                                                                                                                                                               |

***

### `Notion Create Database`

Integration name: **NOTION\_CREATE\_DATABASE**

Creates a new Notion database as a subpage under a specified parent page with a defined properties schema. IMPORTANT NOTES: - The parent page MUST be shared with your integration, otherwise you'll get a 404 error - If you encounter conflict errors (409), retry the request as Notion may experience temporary save conflicts - For relation properties, you MUST provide the database\_id of the related database - Parent ID must be a valid UUID format (with or without hyphens), not a template variable Use this action exclusively for creating new databases.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------ | ------ | :------: | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`      | string |     ✅    | `"Project Roadmap"`                                                                                | The desired title for the new database. This text will be automatically converted into Notion's rich text format when the database is created.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `parent_id`  | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"`                                                           | **CRITICAL: MUST BE A PAGE ID, NOT A DATABASE ID.** Databases can only be created as children of pages, not as children of other databases. Using a database ID will result in an API error: 'Can't create databases parented by a database.' HOW TO IDENTIFY PAGE vs DATABASE: Use NOTION\_SEARCH\_NOTION\_PAGE with filter\_value='page' to find pages (object='page') - only these IDs can be used here. Database IDs (object='database') are NOT valid as parent\_id for this action. FORMAT: Valid 32-character UUID with hyphens (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or without hyphens (32 alphanumeric characters). Additional text after the UUID (e.g., 'uuid: Page Title') is automatically cleaned. The page must be shared with your integration, otherwise you'll receive a 404 error.                             |
| `properties` | array  |          | `"[{\"name\": \"Task Name\", \"type\": \"title\"}, {\"name\": \"Due Date\", \"type\": \"date\"}]"` | Optional list defining the schema (columns) for the new database. Each item is an object with 'name' and 'type'. If not provided, Notion creates a default database with a single 'Name' column of type 'title'. When provided, the list must include at least one property of type 'title'. Common supported property types include: 'title', 'rich\_text', 'number', 'select', 'multi\_select', 'status', 'date', 'people', 'files', 'checkbox', 'url', 'email', 'phone\_number'. Other types like 'formula', 'relation', 'rollup', 'created\_time', 'created\_by', 'last\_edited\_time', 'last\_edited\_by' might also be supported. IMPORTANT: For 'relation' type properties, you MUST also provide the 'database\_id' field with the UUID of the related database. The related database must be shared with your integration. |

***

### `Notion Create File Upload`

Integration name: **NOTION\_CREATE\_FILE\_UPLOAD**

Tool to create a Notion FileUpload object and retrieve an upload URL. Use when you need to automate attaching local or external files directly into Notion without external hosting.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ----------------- | ------- | :------: | --------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`            | string  |          | `"single_part"`                   | Upload mode: 'single\_part' for direct upload (default, up to 20 MB), 'multi\_part' for chunked uploads (requires paid Notion workspace), or 'external\_url' to import from a public URL. Note: Free workspaces are limited to 5 MB files and cannot use multi\_part mode.                                                                                                                                                                                                                                                                                                               |
| `filename`        | string  |          | `"image.png"`                     | Human-readable file name with extension. Required for external\_url; for multi\_part, supply to infer extension or pair with content\_type; optional for single-part. Supported extensions: Audio (.aac, .adts, .mid, .midi, .mp3, .mpga, .m4a, .m4b, .mp4, .oga, .ogg, .wav, .wma); Document (.pdf, .txt, .json, .doc, .dot, .docx, .dotx, .xls, .xlt, .xla, .xlsx, .xltx, .ppt, .pot, .pps, .ppa, .pptx, .potx); Image (.gif, .heic, .jpeg, .jpg, .png, .svg, .tif, .tiff, .webp, .ico); Video (.amv, .asf, .wmv, .avi, .f4v, .flv, .gifv, .m4v, .mp4, .mkv, .webm, .mov, .qt, .mpeg). |
| `content_type`    | string  |          | `"image/png"`                     | MIME type of the file. Required in multi\_part if filename lacks extension; optional for single-part.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `external_url`    | string  |          | `"https://example.com/image.jpg"` | Public HTTPS URL to import. Required when mode='external\_url'. Must expose Content-Type and Content-Length.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `number_of_parts` | integer |          | `3`                               | Total parts for a multi-part upload; required when mode='multi\_part'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |

***

### `Notion Create Notion Page`

Integration name: **NOTION\_CREATE\_NOTION\_PAGE**

Creates a new page in a Notion workspace under a specified parent page or database. Supports creating pages with markdown content using the native markdown parameter, or as an empty page that can be populated later. PREREQUISITES: - Parent page/database must exist and be accessible in your Notion workspace - Use search\_pages or list\_databases first to obtain valid parent IDs LIMITATIONS: - Cannot create root-level pages (must have a parent) - May encounter conflicts if creating pages too quickly - Title-based parent search is less reliable than using UUIDs - The markdown parameter is mutually exclusive with children/content parameters

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------- | ------ | :------: | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `icon`      | string |          | `"😻"`                                          | An emoji to be used as the icon for the new page. Must be a single emoji character. If the title starts with this emoji, it will be stripped from the title text to prevent duplication.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `cover`     | string |          | `"https://www.example.com/images/cover.png"`    | The URL of an image to be used as the cover for the new page. The URL must be publicly accessible.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `title`     | string |     ✅    | `"My new report"`                               | The title of the new page to be created. If an icon emoji is provided and the title starts with the same emoji, it will be automatically removed from the title to avoid duplication.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `markdown`  | string |          | `"# Meeting Notes\n\nDiscussed roadmap for Q1"` | Page content as Notion-flavored Markdown. When provided, the page will be created from this markdown string. If properties.title is omitted, the first # h1 heading will be extracted as the page title. This parameter is mutually exclusive with children and content parameters.                                                                                                                                                                                                                                                                                                                                                                                       |
| `parent_id` | string |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"`        | CRITICAL: Must be either: 1) A valid Notion UUID in dashed format (8-4-4-4-12 hex characters like '59833787-2cf9-4fdf-8782-e53db20768a5') or dashless format (32 hex characters like '598337872cf94fdf8782e53db20768a5') of an existing Notion page or database. 2) The exact title of an existing page/database (less reliable - UUID strongly preferred). IMPORTANT: Always use search\_pages or list\_databases actions FIRST to obtain valid parent IDs. Common errors: Using malformed UUIDs, non-existent IDs, or IDs from different workspaces. Note: Root-level pages cannot be created - you must specify a parent. Also accepts 'parent\_page\_id' as an alias. |

***

### `Notion Delete Block`

Integration name: **NOTION\_DELETE\_BLOCK**

Archives a Notion block, page, or database using its ID, which sets its 'archived' property to true (like moving to "Trash" in the UI) and allows it to be restored later. Note: This operation will fail if the block has an archived parent or ancestor in the hierarchy. You must unarchive the ancestor before archiving/deleting its descendants. IMPORTANT LIMITATION: Workspace-level pages (top-level pages that are direct children of the workspace, not contained within other pages or databases) cannot be archived via the Notion API. This is a documented Notion API restriction. Only pages that are children of other pages or databases can be deleted through this action.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ---------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `block_id` | string |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"` | Identifier of the block, page, or database to be deleted (archived). Must be a valid Notion block/page/database ID in UUID format (with or without hyphens). IMPORTANT: Workspace-level pages (top-level pages not contained within other pages or databases) cannot be archived via the API - only pages that are children of other pages or databases can be deleted. To find page IDs and their titles, consider using an action like `NOTION_FETCH_DATA`. |

***

### `Notion Duplicate Page`

Integration name: **NOTION\_DUPLICATE\_PAGE**

Duplicates a Notion page, including all its content, properties, and nested blocks, under a specified parent page or workspace.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                      |
| ----------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`     | string |          | `"My Duplicated Page"`                   | An optional new title for the duplicated page. If not provided, the title of the original page will be used, prefixed with 'Copy of'.                                                                                                                                                                                                                            |
| `page_id`   | string |     ✅    | `"2e22de6b-770e-4166-be30-1490f6ffd7c1"` | The unique identifier (UUID v4) of the Notion page to be duplicated. Ensure this page exists and is accessible.                                                                                                                                                                                                                                                  |
| `parent_id` | string |     ✅    | `"7e22de6b-770e-4166-be30-1490f6ffd7c1"` | The unique identifier (UUID v4) of the Notion page or database that will serve as the parent for the duplicated page. If a database ID is provided, the new page is created as a row in that database with properties preserved. If a page ID is provided, the new page is created as a child page with only the title. This ID cannot be the same as `page_id`. |

***

### `Notion Fetch All Block Contents`

Integration name: **NOTION\_FETCH\_ALL\_BLOCK\_CONTENTS**

Tool to fetch all child blocks for a given Notion block. Use when you need a complete listing of a block's children beyond a single page; supports optional recursive expansion of nested blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                            | Description                                                                                                                                                                                                                                                                                                                                         |
| ------------ | ------- | :------: | ------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `block_id`   | string  |          | `"c02fc1d3-db8b-45c5-a222-27595b15aea7"`                           | Identifier (UUID) of the parent Notion block or page whose children to list. Pages are blocks in Notion. Accepts UUIDs with or without hyphens (e.g., 'c02fc1d3-db8b-45c5-a222-27595b15aea7' or 'c02fc1d3db8b45c5a22227595b15aea7'). Either block\_id or page\_url must be provided. The block must be shared with your integration.                |
| `page_url`   | string  |          | `"https://www.notion.so/My-Page-c02fc1d3db8b45c5a22227595b15aea7"` | Notion page URL from which to extract the page/block ID. Either block\_id or page\_url must be provided. NOTE: Database view URLs (those containing '?v=' parameter) are NOT supported. Database views are filtered views of a database and do not have block children. To access database content, use the NOTION\_QUERY\_DATABASE action instead. |
| `max_depth`  | integer |          | `5`                                                                | Maximum recursion depth when recursive=true. Prevents excessive nesting traversal. Defaults to 10. Set higher for deeply nested structures, lower for faster results.                                                                                                                                                                               |
| `page_size`  | integer |          | `25`                                                               | Maximum number of child blocks to return per request. Defaults to 100, with a maximum of 100 as per Notion API limits.                                                                                                                                                                                                                              |
| `recursive`  | boolean |          | —                                                                  | If true, fetches nested children for blocks with 'has\_children' set to true, appending all descendants to the output list. Subject to max\_depth and max\_blocks limits.                                                                                                                                                                           |
| `max_blocks` | integer |          | `1000`                                                             | Maximum total blocks to return when recursive=true. Prevents runaway fetches on extremely large block trees. Defaults to 5000. When limit is reached, blocks fetched so far are returned with a warning in the response.                                                                                                                            |

***

### `Notion Fetch Block Contents`

Integration name: **NOTION\_FETCH\_BLOCK\_CONTENTS**

Retrieves a paginated list of direct, first-level child block objects along with contents for a given parent Notion block or page ID; use block IDs from the response for subsequent calls to access deeply nested content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| -------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `block_id`     | string  |     ✅    | `"c02fc1d3-db8b-45c5-a222-27595b15aea7"` | UUID of the parent Notion block or page whose children are to be fetched. Accepts both hyphenated (e.g., 'c02fc1d3-db8b-45c5-a222-27595b15aea7') and non-hyphenated (e.g., 'c02fc1d3db8b45c5a22227595b15aea7') UUID formats. Notion's API does not support special identifiers like 'root' or 'top-level' - you must always provide an actual page or block UUID. To discover valid page/block IDs, first use 'NOTION\_SEARCH\_NOTION\_PAGE' to find pages or 'NOTION\_QUERY\_DATABASE' to query databases. |
| `page_size`    | integer |          | `"25"`                                   | The maximum number of child blocks to return in a single response. The actual number of results may be lower if there are fewer child blocks available or if the end of the list is reached. Maximum allowed value is 100. If unspecified, Notion's default page size will be used.                                                                                                                                                                                                                         |
| `start_cursor` | string  |          | `"a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6"` | Pagination cursor from next\_cursor in a previous API response. When paginating through results, pass the next\_cursor value from the previous response here to fetch the next page. Must be a valid UUID format or cursor string returned by Notion's API. If omitted, returns the first page of results.                                                                                                                                                                                                  |

***

### `Notion Fetch Block Metadata`

Integration name: **NOTION\_FETCH\_BLOCK\_METADATA**

Fetches metadata for a Notion block (including pages, which are special blocks) using its UUID. Returns block type, properties, and basic info but not child content. Prerequisites: 1) Block/page must be shared with your integration, 2) Use valid block\_id from API responses (not URLs). For child blocks, use fetch\_block\_contents instead. Common 404 errors mean the block isn't accessible to your integration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ---------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `block_id` | string |     ✅    | `"c02fc1d3-db8b-45c5-a222-27595b15aea7"` | The unique UUID identifier for the Notion block to be retrieved. Must be a valid 32-character UUID (with or without hyphens). Pages in Notion are also blocks, so page IDs work here too. Important: The block/page must be shared with your integration. To find valid block IDs, use actions like search\_pages, list\_databases, or fetch\_block\_contents. Common error: Ensure you're using the actual block\_id from API responses, not URLs or other identifiers. |

***

### `Notion Fetch Comments`

Integration name: **NOTION\_FETCH\_COMMENTS**

Fetches unresolved comments for a specified Notion block or page ID. The block/page must be shared with your Notion integration and the integration must have 'Read comments' capability enabled, otherwise a 404 error will be returned.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                            |
| -------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id`      | string  |          | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"` | Identifier for a Notion page from which to fetch comments. This is an alias for block\_id since pages are blocks in Notion. Provide either page\_id or block\_id, but not both. IMPORTANT: The page must be shared with your Notion integration - if not shared, you will receive a 404 error. To find IDs, use the `NOTION_SEARCH_NOTION_PAGE` action.                |
| `block_id`     | string  |          | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"` | Identifier for a Notion block from which to fetch comments. In Notion, pages are technically blocks, so you can pass a page ID here as well. Provide either block\_id or page\_id, but not both. IMPORTANT: The block/page must be shared with your Notion integration - if not shared, you will receive a 404 error. To find IDs, use the `NOTION_FETCH_DATA` action. |
| `page_size`    | integer |          | —                                        | The number of comments to return in a single response page. Must be between 1 and 100, inclusive. Default is 100.                                                                                                                                                                                                                                                      |
| `start_cursor` | string  |          | —                                        | A pagination cursor. If provided, the response will contain the page of results starting after this cursor. If omitted, the first page of results is returned.                                                                                                                                                                                                         |

***

### `Notion Fetch Data`

Integration name: **NOTION\_FETCH\_DATA**

Fetches Notion items (pages and/or databases) from the Notion workspace, use this to get minimal data about the items in the workspace with a query or list all items in the workspace with minimal data

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example              | Description                                                                                                                                                                                                                                                                                                        |
| ---------------------- | ------- | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `query`                | string  |          | `"Quarterly Report"` | An optional search query to filter pages and/or databases by their title or content. If not provided (None or empty string), all accessible items matching the selected type (pages, databases, or both) are returned.                                                                                             |
| `page_size`            | integer |          | —                    | The maximum number of items per page (1-100). IMPORTANT: Notion API enforces a hard maximum of 100 items per request - values above 100 will be automatically capped to 100. To retrieve more than 100 items, use pagination by passing the returned 'next\_cursor' value in subsequent requests. Defaults to 100. |
| `fetch_type`           | string  |     ✅    | —                    | Specifies what type of Notion data to fetch. Use 'pages' to fetch only pages, 'databases' to fetch only databases, or 'all' to fetch both pages and databases.                                                                                                                                                     |
| `start_cursor`         | string  |          | —                    | Pagination cursor to fetch the next page of results. Pass the 'next\_cursor' value from a previous response to retrieve the next page. When null or not provided, the first page is returned.                                                                                                                      |
| `original_page_size`   | integer |          | —                    | The original page size value before it was capped.                                                                                                                                                                                                                                                                 |
| `page_size_was_capped` | boolean |          | —                    | Indicates whether the page size was capped to the maximum allowed value.                                                                                                                                                                                                                                           |

***

### `Notion Fetch Database`

Integration name: **NOTION\_FETCH\_DATABASE**

Fetches a Notion database's structural metadata (properties, title, etc.) via its `database_id`, not the data entries; `database_id` must reference an existing database.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `database_id` | string |     ✅    | `"2ec43c10-7ecd-8159-a8f4-ff16630df66c"` | Required. The unique identifier of the Notion database in UUID format (e.g., '2ec43c10-7ecd-8159-a8f4-ff16630df66c') or unhyphenated 32-char hex (e.g., '2ec43c107ecd8159a8f4ff16630df66c'). Must be a DATABASE ID, not a page ID. Linked databases are NOT supported - use the original source database ID. To find database IDs: use NOTION\_SEARCH\_NOTION\_PAGE with filter\_value='database', or extract from database URLs (notion.so/{database\_id}). |

***

### `Notion Fetch Row`

Integration name: **NOTION\_FETCH\_ROW**

Retrieves a Notion database row's properties and metadata; use fetch\_block\_contents for page content blocks.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                    |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id` | string |     ✅    | `"6c6a9b6c-12a4-4c3e-98e2-3c7a1e4f2d2a"` | The UUID of the Notion page (which represents a row in a database) to retrieve. Must be a page ID, not a database ID. Each row in a Notion database is a page. Use actions like NOTION\_FETCH\_DATA or NOTION\_QUERY\_DATABASE to get page IDs from databases. |

***

### `Notion Get About Me`

Integration name: **NOTION\_GET\_ABOUT\_ME**

DEPRECATED: Use GetAboutUser instead. Retrieves the User object for the bot associated with the current Notion integration token, typically to obtain the bot's user ID for other API operations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Notion Get About User`

Integration name: **NOTION\_GET\_ABOUT\_USER**

Retrieves detailed information about a specific Notion user, such as their name, avatar, and email, based on their unique user ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                     |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `user_id` | string |     ✅    | `"d40e73cb-a769-4109-b8ad-14f9f4db1219"` | The unique identifier of the Notion user whose details are to be retrieved. This ID is used to fetch specific user information. |

***

### `Notion Get Page Markdown`

Integration name: **NOTION\_GET\_PAGE\_MARKDOWN**

Retrieve a Notion page's full content rendered as Notion-flavored Markdown in a single API call. Use when you need the readable content of a page without recursive block-children fetching.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| -------------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id`            | string  |     ✅    | `"6c6a9b6c-12a4-4c3e-98e2-3c7a1e4f2d2a"` | The UUID of the Notion page to retrieve as markdown. Accepts both hyphenated (8-4-4-4-12) and unhyphenated (32 characters) UUID formats. This endpoint retrieves the full page content rendered as Notion-flavored Markdown in a single API call, avoiding the need for recursive block-children fetching. IMPORTANT: Only page IDs are accepted - database IDs will be rejected. To retrieve database content, use the 'Fetch Database' or 'Query Database' actions instead. |
| `include_transcript` | boolean |          | —                                        | Set to true to include meeting note transcripts in the markdown response. Defaults to false if not specified.                                                                                                                                                                                                                                                                                                                                                                 |

***

### `Notion Get Page Property Action`

Integration name: **NOTION\_GET\_PAGE\_PROPERTY\_ACTION**

Call this to get a specific property from a Notion page when you have a valid `page_id` and `property_id`; handles pagination for properties returning multiple items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                            |
| -------------- | ------- | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_id`      | string  |     ✅    | `"067dd719-a912-471e-a9a3-ac10710e78b4"` | Identifier of the Notion page (e.g., '067dd719-a912-471e-a9a3-ac10710e78b4') from which to retrieve the property. Use the 'NOTION\_FETCH\_DATA' action or similar to discover available page IDs and their titles.                                                                                                                                                     |
| `page_size`    | integer |          | —                                        | For paginated property types (e.g., 'relation', 'rollup', 'rich\_text' if content is extensive), this specifies the number of items to return per request. If omitted, Notion's default page size for the property is used.                                                                                                                                            |
| `property_id`  | string  |     ✅    | `"title"`                                | Identifier or name of the property to retrieve. For 'title' properties, the ID is always 'title'. For other properties, this can be the property's name as displayed in Notion (e.g., 'Status', 'Assignee') or its unique programmatic ID (e.g., 'N%3A%5B%7C', 'prop\_id\_example'). Property IDs/names can be found by inspecting the page object or database schema. |
| `start_cursor` | string  |          | —                                        | For paginated properties, if a previous request's response indicated `has_more: true`, provide the `next_cursor` value here to fetch the subsequent set of items. Omit if fetching the first page.                                                                                                                                                                     |

***

### `Notion Insert Row Database`

Integration name: **NOTION\_INSERT\_ROW\_DATABASE**

Creates a new page (row) in a specified Notion database. Prerequisites: - Database must be shared with your integration - Property names AND types must match schema exactly (case-sensitive) - Use NOTION\_FETCH\_DATA with fetch\_type='databases' first to get exact property names and types - Each database has ONE 'title' property; other text fields are 'rich\_text' - Database must NOT have multiple data sources (synced databases are not supported) Common Errors: - 404: Database not shared with integration - 400 "not a property": Wrong property name - 400 "expected to be X": Wrong property type - 400 "multiple\_data\_sources": Database uses multiple data sources (not supported) Note: Rich text content in child\_blocks is automatically truncated to 2000 characters per Notion API limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| -------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `icon`         | string |          | `"😻"`                                                                                                                                                       | Emoji to be used as the page icon. Must be a single emoji character.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `cover`        | string |          | `"https://google.com/image.png"`                                                                                                                             | URL of an external image to set as the page cover. The URL must point to a publicly accessible image.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `properties`   | array  |          | `"[{\"name\": \"Task Name\", \"type\": \"title\", \"value\": \"Finalize Q3 report\"}, {\"name\": \"Priority\", \"type\": \"select\", \"value\": \"High\"}]"` | Property values for the new page. Accepts a LIST of objects or a JSON-encoded string. Each object must include: `name` (exact property name, case-sensitive), `type` (property data type), and `value` (string-formatted value). Property names AND types are CASE-SENSITIVE and must match your Notion database schema exactly. Each database has exactly ONE 'title' type property; all other text properties use 'rich\_text'. Use NOTION\_FETCH\_DATA with fetch\_type='databases' to find exact property names and types. CORRECT FORMAT (list of property objects): \[ {"name": "Task Name", "type": "title", "value": "Finalize Q3 report"}, {"name": "Priority", "type": "select", "value": "High"}, {"name": "Tags", "type": "multi\_select", "value": "Work,Personal"}, {"name": "Due Date", "type": "date", "value": "2024-06-01T12:00:00.000-04:00"}, {"name": "Completed", "type": "checkbox", "value": "False"} ] INCORRECT FORMAT (dict - causes validation error): {"Task Name": "value", "Priority": "High"} 'status' vs 'select' TYPE CONFUSION: - Dropdown lists use type='select' - even if the property is NAMED 'Status'. - The 'status' type is a special Notion property with workflow groups ('To-do', 'In progress', 'Complete'). - Use NOTION\_FETCH\_DATA to verify the actual type in your database schema. PROPERTY TYPE ERRORS: - 'X is not a property that exists': Check schema - wrong property name or wrong type. - 'X is expected to be Y': Wrong type specified - use the type shown in the error. Value formatting rules by type: - `title` / `rich_text`: Plain text string (max 2000 chars). - `number`: String of a number (e.g., "23.4"). - `select`: Single option name. Commas NOT allowed - use 'multi\_select' for multiple values. - `multi_select`: Comma-separated option names (e.g., "Work,Personal"). Options must exist in schema. - `date`: ISO 8601. Single: "2024-06-01T12:00:00.000-04:00". Range: "start/end" separated by "/". - `people`: Comma-separated Notion user IDs. - `relation`: Comma-separated page UUIDs (NOT text/titles). Use NOTION\_QUERY\_DATABASE to get page IDs. - `checkbox`: "True" or "False". - `url`: Valid URL string. - `files`: Comma-separated URLs. - `email`: Valid email string. - `phone_number`: Phone number string. Only use if database property type is 'Phone'. |
| `database_id`  | string |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"`                                                                                                                     | Identifier (UUID) of the Notion database where the new page (row) will be inserted. Can be provided with or without hyphens (e.g., '59833787-2cf9-4fdf-8782-e53db20768a5' or '598337872cf94fdf8782e53db20768a5'). This ID must correspond to an existing database that has been explicitly shared with your integration. IMPORTANT: The database must be shared with your integration in Notion settings, otherwise you will get a 404 error. NOTE: Databases with multiple data sources (synced databases or combined views) are not supported by this integration. Use the `NOTION_FETCH_DATA` action to find available database IDs that are already shared with your integration.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `child_blocks` | array  |          | —                                                                                                                                                            | A list of `NotionRichText` objects defining content blocks (e.g., paragraphs, headings, media) to append to the new page's body. Accepts either a list of objects OR a JSON-encoded string representing a list. If omitted, the page body will be empty. **Supported block types:** paragraph, heading\_1, heading\_2, heading\_3, callout, to\_do, toggle, quote, bulleted\_list\_item, numbered\_list\_item, divider, image, video, file. **Media blocks (image, video, file):** Require the `link` field with an external URL. The Notion API does not support uploading files directly - you must provide publicly accessible URLs. **Note:** Notion API limits children to 100 blocks per request. If more than 100 blocks are provided, the action will automatically create the page with the first 100 blocks and then append remaining blocks in subsequent API calls.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### `Notion Insert Row From Nl`

Integration name: **NOTION\_INSERT\_ROW\_FROM\_NL**

Creates a new row (page) in a Notion database from a natural language description. Fetches the database schema at runtime, uses an LLM to generate the correctly-formatted property payload, and creates the page.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                                                                |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `icon`        | string |          | `"📝"`                                   | Optional emoji icon for the page.                                                                                                          |
| `cover`       | string |          | —                                        | Optional cover image URL for the page.                                                                                                     |
| `nl_query`    | string |     ✅    | —                                        | Natural language description of the row to create. Example: 'Add task: Review PR #14143, priority High, status In Progress, due tomorrow'. |
| `database_id` | string |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"` | Notion database UUID where the new row will be inserted. Can be provided with or without hyphens.                                          |

***

### `Notion List Data Source Templates`

Integration name: **NOTION\_LIST\_DATA\_SOURCE\_TEMPLATES**

Tool to list all templates for a Notion data source. Use when needing to discover template IDs/names for bulk page creation. Use after confirming the data\_source\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                  | Description                                                                                            |
| ---------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `page_size`      | integer |          | `50`                                     | Number of templates to return per page (1–100). Defaults to 100 if omitted.                            |
| `start_cursor`   | string  |          | `"d88b2f0c-efb1-4a6f-9d3b-1a2c3e4f5b67"` | Cursor for pagination. Use the `next_cursor` value from a previous response to retrieve the next page. |
| `data_source_id` | string  |     ✅    | `"b724c3f2-8a7a-4d5a-9e12-d4f3e1a7b890"` | Data source ID (UUIDv4). Path parameter identifying the data source to list templates from.            |

***

### `Notion List File Uploads`

Integration name: **NOTION\_LIST\_FILE\_UPLOADS**

Tool to retrieve file uploads for the current bot integration, sorted by most recent first. Use when you need to list all file uploads or paginate through file upload history.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                                                                                                    |
| -------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `page_size`    | integer |          | `100`                                    | Controls how many items the response includes from the complete list. Maximum 100, default 100. The actual response may contain fewer results than requested.  |
| `start_cursor` | string  |          | `"2ca8d5ed-53a6-81f7-b5a0-00b20e08ccf3"` | Accepts a next\_cursor value from a previous response. Treat as an opaque value to retrieve subsequent result pages. If omitted, begins from the list's start. |

***

### `Notion List Users`

Integration name: **NOTION\_LIST\_USERS**

Retrieves a paginated list of users (excluding guests) from the Notion workspace; the number of users returned per page may be less than the requested `page_size`.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example | Description                                                                                                                |
| -------------- | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------- |
| `page_size`    | integer |          | —       | The desired number of users to retrieve per page. The maximum value is 100.                                                |
| `start_cursor` | string  |          | —       | If omitted, retrieves the first page of users. Use the 'next\_cursor' value from a previous response to get the next page. |

***

### `Notion Move Page`

Integration name: **NOTION\_MOVE\_PAGE**

Tool to move a Notion page to a new parent (page or database). Use when you need to reorganize page hierarchy. Important: To move to a database, use data\_source\_id (NOT database\_id). Get the data source ID from the database object using NOTION\_FETCH\_DATABASE.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                               | Description                                                                                                                                                                                                                                                                                                                                    |
| --------- | ------ | :------: | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parent`  | —      |     ✅    | `{"type":"page_id","page_id":"f336d0bc-b841-465b-8045-024475c079dd"}` | Parent destination for the page. Use type='page\_id' with page\_id to move under another page (the page\_id must reference a page, not a database). Use type='data\_source\_id' with data\_source\_id to move into a database. Common mistake: Using type='page\_id' with a database ID will fail - databases require type='data\_source\_id'. |
| `page_id` | string |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"`                              | The ID of the page to move. UUID format with or without dashes is supported.                                                                                                                                                                                                                                                                   |

***

### `Notion Query Database`

Integration name: **NOTION\_QUERY\_DATABASE**

Queries a Notion database to retrieve pages (rows). In Notion, databases are collections where each row is a page and columns are properties. Returns paginated results with metadata. Important requirements: - The database must be shared with your integration - Property names in sorts must match existing database properties exactly (case-sensitive) - For timestamp sorting, use 'created\_time' or 'last\_edited\_time' (case-insensitive) - The start\_cursor must be a valid UUID from a previous response's next\_cursor field - Database IDs must be valid 32-character UUIDs (with or without hyphens) Use this action to: - Retrieve all or filtered database entries - Sort results by database properties or page timestamps - Paginate through large result sets - Get database content for processing or display

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| -------------- | ------- | :------: | ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sorts`        | array   |          | `[{"ascending":false,"property_name":"created_time"}]` | List of sort rules to order the database query results. Each sort rule must specify: 'property\_name' (name of database property or timestamp field) and 'ascending' (True/False). For database properties: names must match exactly (case-sensitive). For timestamps: use 'created\_time' or 'last\_edited\_time' (case-insensitive). Multiple sorts are applied in the order specified.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `page_size`    | integer |          | `10`                                                   | Number of items (database rows/pages) to return per request. Valid range: 1-100. Default is 100. The API may return fewer items than requested if that's all that's available.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `database_id`  | string  |     ✅    | `"260beeb0-57b4-80df-acc9-c3620f730dee"`               | The UUID of the Notion DATABASE to query (32-character hex string, optionally with hyphens). Query parameters (e.g., ?v=viewid) from Notion URLs are automatically stripped. IMPORTANT: This must be a DATABASE ID, not a page ID. Pages and databases are different object types in Notion. A database is a collection/table that contains pages as rows. If you have a page ID, you cannot use it here. How to obtain a database ID: Use NOTION\_SEARCH\_NOTION\_PAGE with filter\_value='database' to list accessible databases, or find it in the Notion URL of a database view (the 32-char ID after the workspace name). Common error: If you receive 'validation\_error' with message 'Provided ID is a page, not a database', you have passed a page ID instead of a database ID. Format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx or xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| `start_cursor` | string  |          | `"67890abc-def0-1234-5678-9abcdef01234"`               | A pagination cursor for fetching the next page of results. Must be a valid UUID string (format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) obtained from the 'next\_cursor' field of a previous query response. Do not use placeholder values. If omitted, returns the first page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Notion Query Database With Filter`

Integration name: **NOTION\_QUERY\_DATABASE\_WITH\_FILTER**

Tool to query a Notion database with server-side filtering, sorting, and pagination. Use when you need to retrieve a subset of rows by property, date, status, or other conditions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ---------------------------- | ------- | :------: | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sorts`                      | array   |          | `{"property":"Priority","direction":"descending"}`  | List of sort criteria in order of precedence. Use PropertySort for database properties (with property field) and TimestampSort for system timestamps (with timestamp='created\_time' or 'last\_edited\_time'). IMPORTANT: To sort by page creation or last edited time, you MUST use the TimestampSort format with timestamp='created\_time' or timestamp='last\_edited\_time', NOT property names like 'Created' or 'Last Edited'. Common timestamp field name variations (Created, creation time, Last Edited, etc.) will be automatically converted to the correct format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `filter`                     | object  |          | `{"select":{"equals":"To Do"},"property":"Status"}` | PREREQUISITE: Call NOTION\_FETCH\_DATABASE first to discover property names and types. Filter type keys MUST match the property's actual type in the schema. Each filter object MUST contain exactly ONE filter type key. For multiple conditions, use compound filters: {"and": \[{"property": "Name", "title": {...}}, {"property": "Description", "rich\_text": {...}}]}. 'title' IS A RESERVED PROPERTY NAME: 'title' always refers to the database's built-in primary title column (type 'title', NOT 'select' or 'rich\_text'). Even custom properties named 'title' are treated as the built-in title column. FILTER TYPE MUST MATCH SCHEMA TYPE: Property names are NOT reliable indicators of type. A property named 'Status' could be type 'select' in one database but type 'status' in another. 'select' is for dropdowns; 'status' is ONLY for Notion's built-in Status property with workflow groups. SELECT/STATUS/MULTI\_SELECT VALUES ARE CASE-SENSITIVE: Option names must match EXACTLY as defined in the database schema, including capitalization and emoji prefixes (e.g., 'Done' not 'done', '✅ Done' not 'Done'). Common mistake: using 'done' when the actual option is 'Done'. Check the database schema for exact option names. Valid filter type keys: title, rich\_text, number, checkbox, select, multi\_select, status, date, people, files, url, email, phone\_number, relation, created\_by, created\_time, last\_edited\_by, last\_edited\_time, formula, unique\_id, rollup, verification, timestamp. FORMULA FILTERS: Structure: {'property': '', 'formula': {\<result\_type>: {: }}}. Result types: 'string' (rich\_text conditions), 'number' (numeric conditions), 'date' (date conditions), 'checkbox' (boolean conditions). The result type MUST match the formula's actual output type. If the formula property value shows type 'boolean', use 'checkbox' in the filter (API naming mismatch). Some complex formulas are unfilterable ('Unable to filter based on a formula of unknown type') - use client-side filtering instead. NOTE: 'text' is NOT valid - use 'rich\_text' for text properties or 'title' for title properties. SYSTEM TIMESTAMP FILTERS: Use simplified format: {"created\_time": {"on\_or\_after": "2024-01-01"}} - auto-transformed to correct API format. Filter structure for database properties: {"property": "\<property\_name>", "\<filter\_type>": {"": ""}}. Common conditions by type: title/rich\_text: equals, contains, starts\_with, ends\_with, is\_empty, is\_not\_empty; select/status: equals, does\_not\_equal, is\_empty, is\_not\_empty; number: equals, does\_not\_equal, greater\_than, less\_than, greater\_than\_or\_equal\_to, less\_than\_or\_equal\_to, is\_empty, is\_not\_empty; checkbox: equals (true/false); date: equals, before, after, on\_or\_before, on\_or\_after, is\_empty, is\_not\_empty, past\_week, past\_month, past\_year, next\_week, next\_month, next\_year; relation: contains, does\_not\_contain (both require a valid page UUID), is\_empty, is\_not\_empty. ROLLUP FILTERS: Require a nested aggregation type wrapper. Do NOT use flat filters like {"rollup": {"contains": "value"}}. Instead use one of: (1) {"rollup": {"any": {}}} - matches if ANY related item satisfies condition; (2) {"rollup": {"every": {}}} - matches if ALL related items satisfy condition; (3) {"rollup": {"none": {}}} - matches if NO related items satisfy condition; (4) {"rollup": {"number": {\<number\_condition>}}} - for number rollup aggregations (count, sum, avg, etc.); (5) {"rollup": {"date": {\<date\_condition>}}} - for date rollup aggregations (earliest, latest). Inside rollup.any/every/none, use the filter type matching the underlying property type. Compound filters use 'and' or 'or' arrays: {"and": \[, ]} or {"or": \[, ]}. |
| `page_size`                  | integer |          | `10`                                                | Maximum number of items to return (1–100). Defaults to 100 if omitted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `database_id`                | string  |     ✅    | `"260beeb0-57b4-80df-acc9-c3620f730dee"`            | The UUID of the Notion database to query (32 character hex string, with hyphens or without). IMPORTANT: This must be a DATABASE ID, not a page ID. Page IDs and database IDs are different things. If you have a page URL/ID, that is NOT the same as the database ID - inline databases within pages have their own separate database IDs distinct from the parent page ID. Use NOTION\_SEARCH\_NOTION\_PAGE or NOTION\_FETCH\_DATABASE to discover the correct database ID. The database must be shared with your integration.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `start_cursor`               | string  |          | `"67890abc-def0-1234-5678-9abcdef01234"`            | Cursor from a prior response's `next_cursor` for fetching the next page. Must be a valid UUID format (32-character hex string with hyphens or without).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `composio_execution_message` | string  |          | —                                                   | Internal message about any automatic conversions made during execution.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

***

### `Notion Query Data Source`

Integration name: **NOTION\_QUERY\_DATA\_SOURCE**

Tool to query a Notion data source. Use when you need to retrieve pages or child data sources with filters, sorts, and pagination. Make paginated requests using cursors and optional property filters for efficient data retrieval.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                   | Description                                                                                                                      |
| ------------------- | ------- | :------: | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `sorts`             | array   |          | `{"property":"Priority","direction":"descending"}`        | List of sort criteria in order of precedence. Use PropertySort for property fields or TimestampSort for creation/edit times.     |
| `filter`            | object  |          | `{"status":{"equals":"In Progress"},"property":"Status"}` | Filter object to limit returned entries. Supports single-property filters or compound filters using 'and'/'or'.                  |
| `page_size`         | integer |          | `10`                                                      | Maximum number of items to return (1-100). Defaults to 100 if omitted.                                                           |
| `start_cursor`      | string  |          | `"67890abc-def0-1234-5678-9abcdef01234"`                  | Cursor from a prior response's `next_cursor` for fetching the next page.                                                         |
| `data_source_id`    | string  |     ✅    | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"`                  | UUID of the Notion data source to query (with or without hyphens). URI prefixes like 'collection://' are automatically stripped. |
| `filter_properties` | array   |          | `["title","status"]`                                      | List of property IDs to include in each returned item; maps to the `filter_properties[]` query parameter.                        |

***

### `Notion Replace Page Content`

Integration name: **NOTION\_REPLACE\_PAGE\_CONTENT**

Safely replaces a page's child blocks by optionally backing up current content, deleting existing children, then appending new children in batches. Use when you need to rebuild a page without leaving partial states. Notion does not provide atomic transactions; this tool orchestrates a multi-step workflow with optional backup to reduce risk.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type    | Required | Example                                                                                                                | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| --------------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dry_run`                   | boolean |          | —                                                                                                                      | If True, returns what would be deleted and appended without making any changes. Use to preview the operation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `page_id`                   | string  |     ✅    | `"b55c9c91-384d-452b-81db-d1ef79372b75"`                                                                               | The unique identifier (UUID) of the page whose content will be replaced. Must be a valid Notion page ID in UUID format (with or without hyphens).                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `new_children`              | array   |     ✅    | `[{"type":"paragraph","object":"block","paragraph":{"rich_text":[{"text":{"content":"New content"},"type":"text"}]}}]` | Array of block objects to append to the page after clearing existing content. Supported types: paragraph, heading\_1/2/3, bulleted\_list\_item, numbered\_list\_item, to\_do, toggle, callout, code, quote, equation, image, video, audio, file, pdf, embed, bookmark, divider, table\_of\_contents, breadcrumb, column\_list, column, table, table\_row. Each block MUST include 'type' field and type-specific content. Text blocks must use 'rich\_text' array structure with max 2000 chars per text.content. Will be appended in batches of up to 100 blocks to respect Notion API limits. |
| `backup_parent`             | object  |          | —                                                                                                                      | Parent specification for backup page creation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `create_backup`             | boolean |          | —                                                                                                                      | Whether to create a backup page with the current content before replacing it. Strongly recommended when replacing important content.                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `backup_title_suffix`       | string  |          | —                                                                                                                      | Suffix to append to the original page title when creating a backup page.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `archive_existing_children` | boolean |          | —                                                                                                                      | Whether to delete (archive) existing child blocks before appending new content. Set to False to keep existing content and only append new blocks.                                                                                                                                                                                                                                                                                                                                                                                                                                               |

***

### `Notion Retrieve Comment`

Integration name: **NOTION\_RETRIEVE\_COMMENT**

Tool to retrieve a specific comment by its ID. Use when you have a comment ID and need to fetch its details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                             |
| ------------ | ------ | :------: | ---------------------------------------- | --------------------------------------- |
| `comment_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | Identifier for the comment to retrieve. |

***

### `Notion Retrieve Database Property`

Integration name: **NOTION\_RETRIEVE\_DATABASE\_PROPERTY**

Tool to retrieve a specific property object of a Notion database. Use when you need to get details about a single database column/property.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                         |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `database_id` | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-abcdef123456"` | Identifier for the database.                                                                                                                                                                                                                                                                                        |
| `property_id` | string |     ✅    | `"title"`                                | Identifier for the property. This can be the property ID (e.g., 'GZtn') or the property name (e.g., 'Status'). Supports URL-encoded values (e.g., 'kD%5ER' decodes to 'kD^R'). Property name matching is case-sensitive but supports Unicode normalization for characters that can be represented in multiple ways. |

***

### `Notion Retrieve File Upload`

Integration name: **NOTION\_RETRIEVE\_FILE\_UPLOAD**

Tool to retrieve details of a Notion File Upload object by its identifier. Use when you need to check the status or details of an existing file upload.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                  | Description                                                  |
| ---------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------ |
| `file_upload_id` | string |     ✅    | `"2ca8d5ed-53a6-81f7-b5a0-00b20e08ccf3"` | The unique identifier (UUID) of the file upload to retrieve. |

***

### `Notion Retrieve Page`

Integration name: **NOTION\_RETRIEVE\_PAGE**

Retrieve a Notion page's properties/metadata (not block content) by page\_id. Use when you have a page URL/ID and need to access its properties; for page content use block-children tools.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `page_id` | string |     ✅    | `"6c6a9b6c-12a4-4c3e-98e2-3c7a1e4f2d2a"` | The UUID of the Notion page to retrieve. Accepts both hyphenated (8-4-4-4-12) and unhyphenated (32 characters) UUID formats. IMPORTANT: Must be a PAGE ID, not a database ID. If you have a database ID, use NOTION\_FETCH\_DATABASE instead. This endpoint returns page properties and metadata, not page content (use block-children tools for content). For pages with properties containing more than 25 references, use NOTION\_GET\_PAGE\_PROPERTY\_ACTION to retrieve complete property values. |

***

### `Notion Search Notion Page`

Integration name: **NOTION\_SEARCH\_NOTION\_PAGE**

Searches Notion pages and databases by title. Use specific search terms to find items by title (primary approach). KNOWN LIMITATIONS: (1) Search indexing is not immediate - recently shared items may not appear. (2) Search is not exhaustive - results may be incomplete. (3) Database pages return all custom properties with full nested structures, which can create large responses for databases with many properties - use filter\_properties to reduce response size. FALLBACK STRATEGY: If a specific title search returns empty results despite knowing items exist, try an empty query to list all accessible items and filter client-side.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example       | Description                                                                                                                                                                                                                                                                                                                                                             |
| ------------------- | ------- | :------: | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `query`             | string  |          | —             | Text to search for in page and database titles. Use specific search terms to find items by title (primary approach). Note: Notion's search has known limitations - indexing is not immediate and recently shared items may not appear. If a specific query returns empty results, try an empty query as a fallback to list all accessible items and filter client-side. |
| `direction`         | string  |          | `"ascending"` | Specifies the sort direction for the results. Required if `timestamp` is provided. Valid values are `ascending` or `descending`.                                                                                                                                                                                                                                        |
| `page_size`         | integer |          | —             | The number of items to include in the response. Must be an integer between 1 and 100, inclusive. Defaults to 25.                                                                                                                                                                                                                                                        |
| `timestamp`         | string  |          | —             | The timestamp field to sort the results by. Currently, the only supported value is `last_edited_time`. If provided, `direction` must also be specified.                                                                                                                                                                                                                 |
| `filter_value`      | string  |          | `"page"`      | Filters results by object type: 'page' or 'database'. Note: When searching databases, Notion's search may not find recently shared or newly created databases due to indexing delays. If specific database searches return empty results, try an empty query with filter\_value='database' as a fallback to list all accessible databases.                              |
| `start_cursor`      | string  |          | —             | An opaque cursor value from a previous response's `next_cursor` field. Must be exactly as returned by the API - do not pass page IDs, database IDs, or any other identifiers. If `None`, empty, or invalid, results start from the beginning.                                                                                                                           |
| `filter_property`   | string  |          | `"object"`    | The property to filter the search results by. Currently, the only supported value is `object`, which filters by the type specified in `filter_value`. Defaults to `object`.                                                                                                                                                                                             |
| `filter_properties` | array   |          | —             | List of property names to include in the response for page results. When specified, only these properties will be returned in each page's 'properties' object, reducing response size. Useful for database pages with many custom properties. If not specified, all properties are returned. Note: This filter is applied client-side after receiving the API response. |

***

### `Notion Send File Upload`

Integration name: **NOTION\_SEND\_FILE\_UPLOAD**

Tool to transmit file contents to Notion for a file upload object. Use after creating a file upload object to send the actual file data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                  | Description                                                                                                                                                                 |
| --------------------- | ------- | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`                | object  |     ✅    | —                                        | File information including name and mimetype. FileInfo object where 'name' is the filename (e.g., 'document.pdf', 'test.txt').                                              |
| `part_number`         | integer |          | `1`                                      | Required when the file upload mode is 'multi\_part'. Indicates which part is being sent (parts are numbered starting from 1). For single-part uploads, omit this parameter. |
| `file_upload_id`      | string  |     ✅    | `"2ca8d5ed-53a6-81b9-812e-00b2d59c16b4"` | Identifier of the file upload object to send data for. This ID is obtained from the Create File Upload action.                                                              |
| `file_content_base64` | string  |          | —                                        | Optional base64-encoded file content. If provided, this will be used instead of downloading from S3 or reading from file\_path. Useful for direct file content submission.  |

***

### `Notion Update Block`

Integration name: **NOTION\_UPDATE\_BLOCK**

Updates existing Notion block's text content. ⚠️ CRITICAL: Content limited to 2000 chars. Cannot change block type or archive blocks. Content exceeding 2000 chars will fail with validation error. For longer content, split across multiple blocks using add\_multiple\_page\_content.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter               | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `content`               | string |     ✅    | `"This is the updated line of text."`    | The new text content for the block. Replaces existing text content entirely. ⚠️ CRITICAL: Notion API enforces a HARD LIMIT of 2000 characters per text.content field. Content exceeding 2000 chars will cause a validation error. For longer content, split across multiple blocks using append\_block\_children or add\_multiple\_page\_content.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `block_id`              | string |     ✅    | `"a1b2c3d4-e5f6-7890-1234-567890abcdef"` | Identifier of the Notion block to be updated. Must be a valid UUID (with or without dashes). To find a block's ID, other Notion actions that list or retrieve blocks can be used. For updating content within a page (which is also a block), its ID can be obtained using actions like `NOTION_FETCH_DATA` to get page IDs and titles.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `language`              | string |          | `"python"`                               | Programming language for code blocks. Required when block\_type='code'. Supported values include: 'abap', 'arduino', 'bash', 'basic', 'c', 'clojure', 'coffeescript', 'c++', 'c#', 'css', 'dart', 'diff', 'docker', 'elixir', 'elm', 'erlang', 'flow', 'fortran', 'f#', 'gherkin', 'glsl', 'go', 'graphql', 'groovy', 'haskell', 'html', 'java', 'javascript', 'json', 'julia', 'kotlin', 'latex', 'less', 'lisp', 'livescript', 'lua', 'makefile', 'markdown', 'markup', 'matlab', 'mermaid', 'nix', 'objective-c', 'ocaml', 'pascal', 'perl', 'php', 'plain text', 'powershell', 'prolog', 'protobuf', 'python', 'r', 'reason', 'ruby', 'rust', 'sass', 'scala', 'scheme', 'scss', 'shell', 'sql', 'swift', 'typescript', 'vb.net', 'verilog', 'vhdl', 'visual basic', 'webassembly', 'xml', 'yaml', 'java/c/c++/c#'. If not provided for a code block, the existing language will be preserved. |
| `block_type`            | string |          | `"paragraph"`                            | The type of the block being updated. If not provided, the action will automatically detect the block type by fetching the block first (adds 1 extra API call). If provided, it must match the EXISTING block's type - you cannot change a block's type. Supported types: 'paragraph', 'heading\_1', 'heading\_2', 'heading\_3', 'bulleted\_list\_item', 'numbered\_list\_item', 'to\_do', 'toggle', 'code', 'quote', 'callout'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `additional_properties` | object |          | `{"checked":true}`                       | Optional dictionary of type-specific properties. Common examples: 'checked' (boolean) for to\_do blocks to mark complete/incomplete, 'color' (string like 'blue\_background', 'gray', 'red') for text styling, 'is\_toggleable' (boolean) for heading blocks to make them collapsible, 'icon' (object with 'type' and 'emoji' fields) for callout blocks. NOTE: Cannot use 'archived' here - use NOTION\_DELETE\_BLOCK to remove blocks instead. NOTE: Null/None values are automatically filtered out (omitting a property preserves its existing value).                                                                                                                                                                                                                                                                                                                                         |

***

### `Notion Update Page`

Integration name: **NOTION\_UPDATE\_PAGE**

Update page properties, icon, cover, or archive status. IMPORTANT: Property names are workspace-specific and case-sensitive. Use NOTION\_FETCH\_ROW or NOTION\_FETCH\_DATABASE first to discover exact property names and valid select/status options. Common errors: - "X is not a property that exists": Discover properties with NOTION\_FETCH\_ROW - "Invalid status option": Check valid options with NOTION\_FETCH\_DATABASE - "should be defined": Wrap values: {'Field': {'type': value}} Property formats: title/rich\_text use {'text': {'content': 'value'}}, select/status use {'name': 'option'}

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `icon`       | object  |          | `{"type":"emoji","emoji":"🎉"}`                                          | Page icon object. At least one of properties, archived, icon, or cover is required.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `cover`      | object  |          | `{"type":"external","external":{"url":"https://example.com/cover.png"}}` | Page cover image. Must contain either 'external' (with url) or 'file\_upload' key. Empty dicts are treated as no-op. At least one of properties, archived, icon, or cover is required.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `page_id`    | string  |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"`                                 | Identifier for the Notion page to be updated. Use 'page\_id' as the parameter name (not 'id').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `archived`   | boolean |          | —                                                                        | Set to true to archive (trash) the page, false to restore. Note: Workspace-level pages (pages in the sidebar that are not inside a database or another page) may not be archivable via the API depending on workspace configuration. Setting archived=true on an already-archived page or a page with an archived ancestor will be handled gracefully (returns current state without error). At least one of properties, archived, icon, or cover is required.                                                                                                                                                                                                                                                                                                                                              |
| `properties` | object  |          | `{"Name":{"title":[{"text":{"content":"New Title"}}]}}`                  | Dictionary mapping property names to property value objects. IMPORTANT: Property names are workspace-specific and case-sensitive. Before updating, use NOTION\_FETCH\_ROW (for database pages) or NOTION\_FETCH\_DATABASE to discover the exact property names available in your database. Common properties like 'Status', 'Name', or 'Tags' may have different names in your workspace (e.g., 'Task Name', 'Priority'). For status/select properties, valid option values also vary by workspace - check the database schema for available options. Values must be wrapped in property type objects - never send plain values. Example: {'Status': {'select': {'name': 'Done'}}} not {'Status': 'Done'}. For relation properties, IDs must be valid UUIDs (format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). |

***

### `Notion Update Row Database`

Integration name: **NOTION\_UPDATE\_ROW\_DATABASE**

Updates a specific row/page within a Notion database by its page UUID (row\_id). IMPORTANT CLARIFICATION: This action updates INDIVIDUAL ROWS (pages) in a database, NOT the database structure. - To update a ROW/PAGE: Use THIS action with `row_id` (the page UUID) - To update DATABASE SCHEMA (columns, properties, title): Use NOTION\_UPDATE\_SCHEMA\_DATABASE with `database_id` REQUIRED: `row_id` is MANDATORY. This is the UUID of the specific page/row to update. Do NOT pass `database_id` to this action - that parameter does not exist here. Common issues: (1) Use UUID from page URL, not the full URL (2) Ensure page is shared with integration (3) Match property names exactly as in database (4) Use 'status' type for Status properties, not 'select' (5) Retry on 409 Conflict errors (concurrent updates) Supports updating properties, icon, cover, or archiving the row.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------ | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `icon`       | string  |          | `"😻"`                                   | The emoji to be used as the icon for the page. Must be a single emoji character (e.g., '😻', '🤔'). Empty strings or whitespace-only values are ignored.                                                                                                                                                                                                                                                                                                                                                    |
| `cover`      | string  |          | `"https://google.com/image.png"`         | URL of an external image to be used as the cover for the page (e.g., '<https://google.com/image.png>'). Empty strings or whitespace-only values are ignored.                                                                                                                                                                                                                                                                                                                                                |
| `row_id`     | string  |     ✅    | `"59833787-2cf9-4fdf-8782-e53db20768a5"` | REQUIRED: The page UUID of the database row to update. This is a PAGE ID (not a database ID). A database row in Notion is actually a page - use the page's UUID here. Format: 32-character UUID with hyphens (e.g., '59833787-2cf9-4fdf-8782-e53db20768a5'). NOT a URL or page title. Find this ID in the page URL or via 'Copy link' in Notion. NOTE: To update DATABASE structure/schema, use NOTION\_UPDATE\_SCHEMA\_DATABASE instead. This action only updates individual rows/pages within a database. |
| `delete_row` | boolean |          | `true`                                   | If true, the row (page) will be archived, effectively deleting it from the active view. If the page is already archived, the action will return success with the current page state. If false, the row will be updated with other provided data.                                                                                                                                                                                                                                                            |
| `properties` | array   |          | —                                        | List of properties to update. Each property requires: (1) 'name' - exact property name as shown in Notion, (2) 'type' - the property type (title, rich\_text, number, select, status, multi\_select, date, people, relation, checkbox, url, email, phone\_number, files), (3) 'value' - formatted according to type. IMPORTANT: Verify property names exist in the database and match the exact case. Use 'status' type for Status properties, NOT 'select'. Properties not listed will remain unchanged.   |

***

### `Notion Update Schema Database`

Integration name: **NOTION\_UPDATE\_SCHEMA\_DATABASE**

Updates an existing Notion database's schema including title, description, and/or properties (columns). IMPORTANT NOTES: - At least one update (title, description, or properties) must be provided - The database must be shared with your integration - Property names are case-sensitive and must match exactly - When changing a property to 'relation' type, you MUST provide the database\_id of the target database - Removing properties will permanently delete that column and its data - Use NOTION\_FETCH\_DATA first to get the exact property names and database structure Common errors: - 'database\_id' missing: Ensure you're passing the database\_id parameter (not page\_id) - 'data\_source\_id' undefined: When changing to relation type, database\_id is required in PropertySchemaUpdate - Property name mismatch: Names must match exactly including case and special characters

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------- | ------ | :------: | --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`       | string |          | —                                                                           | New title for the database. Leave as None or omit to keep the existing title unchanged. This updates the database name visible in Notion. At least one of (title, description, or properties) must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `properties`  | array  |          | `[{"name":"Status","new_type":"select"},{"name":"Priority","remove":true}]` | List of property (column) updates for the database schema. At least one of (title, description, or properties) must be provided. Each PropertySchemaUpdate must specify: 1) 'name': The EXACT case-sensitive name of the existing property 2) One of these actions: - 'rename': Change the property name - 'new\_type': Change the property type (see PropertySchemaUpdate for valid types) - 'remove': Set to true to delete the property IMPORTANT: When changing a property to 'relation' type, you MUST also provide 'database\_id' with the UUID of the target database to link to. Example: \[{'name': 'Status', 'new\_type': 'select'}, {'name': 'Tasks', 'new\_type': 'relation', 'database\_id': 'abc123...'}] |
| `database_id` | string |     ✅    | `"d9824bdc-8445-4327-be8b-554d41f30b60"`                                    | REQUIRED: The UUID identifier of the Notion database to update. IMPORTANT: This must be a DATABASE ID, not a page ID. Page IDs and database IDs are both UUIDs but they are NOT interchangeable - passing a page ID will result in an error. Use NOTION\_FETCH\_DATA with get\_databases=true to get available database IDs. Format: UUID with or without hyphens (e.g., 'd9824bdc-8445-4327-be8b-554d41f30b60'). The database must be shared with your integration. NOTE: At least one of (title, description, or properties) must also be provided to perform an update.                                                                                                                                              |
| `description` | string |          | —                                                                           | New description for the database. Leave as None or omit to keep the existing description unchanged. This updates the description text shown below the database title. At least one of (title, description, or properties) must be provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |

***

### `Notion Upsert Row Database`

Integration name: **NOTION\_UPSERT\_ROW\_DATABASE**

Tool to upsert rows in a Notion database by querying for existing rows and creating or updating them. Use when you need to sync data to Notion without creating duplicates. Each item is matched by a filter, then either created (if no match) or updated (if match found). Supports bulk operations with per-item error handling.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type   | Required | Example                                  | Description                                                                                                                                                     |
| ---------------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `items`          | array  |     ✅    | —                                        | Array of items to upsert. Each item contains match criteria and create/update payloads.                                                                         |
| `options`        | object |          | —                                        | Options controlling upsert behavior.                                                                                                                            |
| `database_id`    | string |          | `"a12b3c4d-5e6f-7890-abcd-ef1234567890"` | UUID of the Notion database (legacy). If provided without data\_source\_id, will attempt to resolve to data\_source\_id. Only safe for single-source databases. |
| `data_source_id` | string |          | `"f47ac10b-58cc-4372-a567-0e02b2c3d479"` | UUID of the Notion data source (preferred). Required if database\_id is not provided.                                                                           |

***


# Omnisend

Your Toolhouse AI Worker can connect to Omnisend using 43 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](https://toolhouse.app/auth-connections?authkit_slugs=omnisend).

## Tools (43)

### `Omnisend Add Cart Product`

Integration name: **OMNISEND\_ADD\_CART\_PRODUCT**

Tool to add a product to a cart in Omnisend (v3 API). Use when updating cart contents or tracking abandoned carts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                 | Description                                                          |
| ----------------- | ------- | :------: | ------------------------------------------------------- | -------------------------------------------------------------------- |
| `sku`             | string  |          | `"SKU-999"`                                             | Stock keeping unit identifier.                                       |
| `price`           | integer |     ✅    | `12111`                                                 | Current price in cents (e.g., 12111 for $121.11).                    |
| `title`           | string  |     ✅    | `"Nitrous oxide"`                                       | Product name or title.                                               |
| `cart_id`         | string  |     ✅    | `"test-cart-1739610001"`                                | Unique identifier of the cart to add the product to.                 |
| `currency`        | string  |     ✅    | `"USD"`                                                 | ISO 4217 currency code (3 characters).                               |
| `discount`        | integer |          | `0`                                                     | Discount amount in cents.                                            |
| `quantity`        | integer |     ✅    | `10`                                                    | Number of items. Must be a whole number greater than or equal to 1.  |
| `image_url`       | string  |          | `"http://www.example.com/images/products/prod-999.png"` | URL to product image.                                                |
| `old_price`       | integer |          | `14311`                                                 | Original price before discount in cents (e.g., 14311 for $143.11).   |
| `product_id`      | string  |     ✅    | `"prod999"`                                             | Unique product identifier from your catalog.                         |
| `variant_id`      | string  |     ✅    | `"prod999"`                                             | Product variant identifier for tracking specific product variations. |
| `description`     | string  |          | `"Test product"`                                        | Product description text.                                            |
| `product_url`     | string  |          | `"http://www.example.com/products/prod-999"`            | URL to product page.                                                 |
| `cart_product_id` | string  |     ✅    | `"2"`                                                   | Product identifier in cart. Must be unique within the cart.          |

***

### `Omnisend Create Batch`

Integration name: **OMNISEND\_CREATE\_BATCH**

Tool to create a new batch operation for multiple items. Use when you need to process many records asynchronously in one call, e.g., bulk contacts, products, orders, or events. Use after preparing the items list to avoid rate limits.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                        | Description                                                         |
| ---------- | ------ | :------: | ------------------------------ | ------------------------------------------------------------------- |
| `items`    | array  |     ✅    | `{"email":"john@example.com"}` | Array of payload objects for each operation.                        |
| `method`   | string |     ✅    | `"POST"`                       | HTTP method for all operations in this batch. Must be POST or PUT.  |
| `eventID`  | string |          | `"evt_12345"`                  | Required when endpoint is 'events'; the ID of the event to trigger. |
| `endpoint` | string |     ✅    | `"products"`                   | Target endpoint for the operations.                                 |

***

### `Omnisend Create Cart`

Integration name: **OMNISEND\_CREATE\_CART**

Tool to create a new shopping cart in Omnisend. Use when tracking customer cart activity for abandoned cart campaigns.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                              | Description                                                                        |
| ----------------- | ------- | :------: | ---------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `email`           | string  |          | `"customer@example.com"`                             | Customer email address associated with this cart                                   |
| `phone`           | string  |          | `"+15551234567"`                                     | Customer phone number                                                              |
| `cartID`          | string  |     ✅    | `"cart_abc123"`                                      | Unique cart identifier. Must be unique across all carts.                           |
| `cartSum`         | integer |          | `9999`                                               | Total cart value in cents (e.g., 9999 for $99.99)                                  |
| `currency`        | string  |          | `"USD"`                                              | ISO 4217 currency code (e.g., USD, EUR, GBP)                                       |
| `products`        | array   |          | —                                                    | Array of products in the cart                                                      |
| `contactID`       | string  |          | `"contact_xyz789"`                                   | Existing Omnisend contact identifier to associate with this cart                   |
| `createdAt`       | string  |          | `"2024-01-15T10:30:00Z"`                             | Cart creation timestamp in ISO 8601 format. If not provided, current time is used. |
| `updatedAt`       | string  |          | `"2024-01-15T11:45:00Z"`                             | Cart last update timestamp in ISO 8601 format                                      |
| `cartRecoveryUrl` | string  |          | `"https://store.example.com/cart/recover?id=abc123"` | URL to recover the cart, used in abandoned cart emails                             |

***

### `Omnisend Create Category`

Integration name: **OMNISEND\_CREATE\_CATEGORY**

Tool to create a new category in Omnisend. Use when organizing products into categories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example        | Description                                                                      |
| ------------ | ------ | :------: | -------------- | -------------------------------------------------------------------------------- |
| `title`      | string |     ✅    | `"Containers"` | Display name for the category.                                                   |
| `categoryID` | string |     ✅    | `"cat666"`     | Unique identifier for the category. Must be unique within your Omnisend account. |

***

### `Omnisend Create Order`

Integration name: **OMNISEND\_CREATE\_ORDER**

Tool to create a new order in Omnisend v3 API. Use when recording a customer purchase or order transaction.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                                            | Description                                                                          |
| --------------------- | ------- | :------: | -------------------------------------------------- | ------------------------------------------------------------------------------------ |
| `tags`                | array   |          | `["Fragile","High Priority"]`                      | Order tags                                                                           |
| `email`               | string  |          | `"test.customer@example.com"`                      | Customer email address (email or phone or contactID required)                        |
| `phone`               | string  |          | `"+12025550142"`                                   | Customer phone number (email or phone or contactID required)                         |
| `cartID`              | string  |          | `"4557116516"`                                     | Cart identifier                                                                      |
| `source`              | string  |          | `""`                                               | Order source                                                                         |
| `taxSum`              | integer |          | `0`                                                | Tax amount in cents                                                                  |
| `orderID`             | string  |     ✅    | `"test-order-2026-02-15-002"`                      | Unique order identifier from your store                                              |
| `currency`            | string  |     ✅    | `"USD"`                                            | Order currency code (e.g., USD, EUR)                                                 |
| `lastName`            | string  |          | `"Evil"`                                           | Customer last name                                                                   |
| `orderSum`            | integer |     ✅    | `9999`                                             | Total order amount in cents (must be integer, not float)                             |
| `orderUrl`            | string  |          | `"http://www.example.com/orders/2017-05-06-14587"` | URL to view the order                                                                |
| `products`            | array   |          | —                                                  | Array of ordered products                                                            |
| `contactID`           | string  |          | —                                                  | Omnisend contact ID (email or phone or contactID required)                           |
| `createdAt`           | string  |     ✅    | `"2026-02-14T10:00:00Z"`                           | Order creation timestamp in ISO 8601 format (cannot be future date, required by API) |
| `firstName`           | string  |          | `"Dr."`                                            | Customer first name                                                                  |
| `updatedAt`           | string  |          | `"2017-06-20T16:40:12Z"`                           | Order last update timestamp in ISO 8601 format                                       |
| `courierUrl`          | string  |          | `"http://www.example.com/?trackId=666"`            | Tracking URL                                                                         |
| `contactNote`         | string  |          | `"Door code: 442"`                                 | Note about the customer or order                                                     |
| `discountSum`         | integer |          | `1111`                                             | Total discount amount in cents                                                       |
| `orderNumber`         | integer |          | `201706145`                                        | Order number for display                                                             |
| `shippingSum`         | integer |          | `0`                                                | Shipping cost in cents                                                               |
| `subTotalSum`         | integer |          | `55566`                                            | Subtotal amount in cents                                                             |
| `courierTitle`        | string  |          | `"Nuclear post"`                                   | Courier service name                                                                 |
| `customFields`        | object  |          | `{"phone":"+66 666 666 66"}`                       | Custom fields as key-value pairs                                                     |
| `discountCode`        | string  |          | `"mojo66"`                                         | Discount code applied                                                                |
| `discountType`        | string  |          | `"fixedAmount"`                                    | Type of discount (e.g., fixedAmount, percentage)                                     |
| `trackingCode`        | string  |          | `"666"`                                            | Shipping tracking code                                                               |
| `discountValue`       | integer |          | `1111`                                             | Discount value in cents                                                              |
| `paymentMethod`       | string  |          | `"Credit card"`                                    | Payment method description                                                           |
| `paymentStatus`       | string  |          | `"paid"`                                           | Payment status enum values.                                                          |
| `billingAddress`      | object  |          | —                                                  | Address information for billing or shipping.                                         |
| `shippingMethod`      | string  |          | `"Ground shipping"`                                | Shipping method description                                                          |
| `shippingAddress`     | object  |          | —                                                  | Address information for billing or shipping.                                         |
| `fulfillmentStatus`   | string  |          | `"unfulfilled"`                                    | Fulfillment status enum values.                                                      |
| `subTotalTaxIncluded` | boolean |          | `false`                                            | Whether tax is included in subtotal                                                  |

***

### `Omnisend Create Or Update Contact`

Integration name: **OMNISEND\_CREATE\_OR\_UPDATE\_CONTACT**

Tool to create or update a contact in Omnisend. Use after collecting subscriber details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example           | Description                                                     |
| ------------- | ------ | :------: | ----------------- | --------------------------------------------------------------- |
| `city`        | string |          | `"New York"`      | City name                                                       |
| `gender`      | string |          | `"m"`             | Contact's gender ('m' or 'f')                                   |
| `address`     | string |          | `"123 Main St"`   | Street address                                                  |
| `country`     | string |          | `"United States"` | Full country name                                               |
| `lastName`    | string |          | `"Doe"`           | Contact's last name                                             |
| `birthdate`   | string |          | `"1985-05-15"`    | Birthdate in YYYY-MM-DD format                                  |
| `firstName`   | string |          | `"Jane"`          | Contact's first name                                            |
| `postalCode`  | string |          | `"10001"`         | Postal or ZIP code                                              |
| `countryCode` | string |          | `"US"`            | ISO 3166-1 alpha-2 country code                                 |
| `identifiers` | array  |     ✅    | —                 | One or more ways to identify the contact; at least one required |

***

### `Omnisend Create Product`

Integration name: **OMNISEND\_CREATE\_PRODUCT**

Tool to create a new product in the Omnisend product catalog. Use when adding products for email campaigns or syncing inventory.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                                                    | Description                                                                                               |
| ----------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `id`              | string |     ✅    | `"test-product-12345"`                                                                                                     | Unique product identifier from your store. Must be unique across all products.                            |
| `url`             | string |     ✅    | `"https://example.com/test-product"`                                                                                       | URL to the product page on your website.                                                                  |
| `tags`            | array  |          | `["tag1","tag2","tag3"]`                                                                                                   | Tags to categorize the product for filtering and organization (max 100 items).                            |
| `type`            | string |          | `"Super Product"`                                                                                                          | Product type to categorize products (e.g., 'Electronics', 'Clothing').                                    |
| `title`           | string |     ✅    | `"Test Product"`                                                                                                           | Product title displayed to customers.                                                                     |
| `images`          | array  |          | `["https://example.com/img1.jpg","https://example.com/img2.jpg"]`                                                          | Additional product image URLs beyond the default image (max 300 items).                                   |
| `status`          | string |     ✅    | `"inStock"`                                                                                                                | Overall product availability status. Keep in sync with your shop to avoid sending out-of-stock products.  |
| `vendor`          | string |          | `"My Vendor"`                                                                                                              | Manufacturer or brand of the product.                                                                     |
| `currency`        | string |     ✅    | `"USD"`                                                                                                                    | ISO 4217 currency code (e.g., USD, EUR, GBP).                                                             |
| `variants`        | array  |     ✅    | `[{"id":"variant-1","url":"https://example.com/test-product","price":29.99,"title":"Default Variant","status":"inStock"}]` | Product variants with their own prices and SKUs. At least one variant is required (min 1, max 500 items). |
| `createdAt`       | string |          | `"2021-01-01T00:00:00Z"`                                                                                                   | Product creation timestamp in ISO 8601 format (e.g., 2021-01-01T00:00:00Z).                               |
| `updatedAt`       | string |          | `"2021-01-01T00:00:00Z"`                                                                                                   | Last update timestamp in ISO 8601 format.                                                                 |
| `categoryIDs`     | array  |          | `["1234567890","99934567890"]`                                                                                             | List of category IDs this product belongs to (max 100 items).                                             |
| `description`     | string |          | `"A high-quality product for your needs"`                                                                                  | Short description of the product. Can be used in the email body.                                          |
| `defaultImageUrl` | string |          | `"https://example.com/image.jpg"`                                                                                          | Primary image URL for the product. Recommended if more than one image is needed.                          |

***

### `Omnisend Create Product Category`

Integration name: **OMNISEND\_CREATE\_PRODUCT\_CATEGORY**

Tool to create a new product category in the Omnisend catalog. Use when organizing products into categories.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example             | Description                                                                       |
| ------------ | ------ | :------: | ------------------- | --------------------------------------------------------------------------------- |
| `title`      | string |     ✅    | `"Beauty products"` | Title/name of the product category. Maximum 100 characters.                       |
| `categoryID` | string |     ✅    | `"C1234"`           | Unique identifier for the product category. Must be between 1 and 100 characters. |

***

### `Omnisend Delete Cart`

Integration name: **OMNISEND\_DELETE\_CART**

Tool to delete a cart from Omnisend by its ID (v3 API). Use when you need to remove an abandoned or expired cart from the system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                              |
| --------- | ------ | :------: | -------------------- | ---------------------------------------- |
| `cartID`  | string |     ✅    | `"test-cart-123456"` | Unique identifier of the cart to delete. |

***

### `Omnisend Delete Category`

Integration name: **OMNISEND\_DELETE\_CATEGORY**

Tool to remove a category from Omnisend by its ID. Use when you need to delete a category and ensure it is no longer available in your catalog.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                 | Description                                  |
| ------------- | ------ | :------: | ----------------------- | -------------------------------------------- |
| `category_id` | string |     ✅    | `"test-cat-1739605000"` | Unique identifier of the category to delete. |

***

### `Omnisend Delete Order`

Integration name: **OMNISEND\_DELETE\_ORDER**

Tool to delete an order from Omnisend by its ID. Use when you need to remove an order from the system.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                        | Description                               |
| --------- | ------ | :------: | ------------------------------ | ----------------------------------------- |
| `orderID` | string |     ✅    | `"test-order-delete-20250215"` | Unique identifier of the order to delete. |

***

### `Omnisend Delete Product`

Integration name: **OMNISEND\_DELETE\_PRODUCT**

Tool to remove a product from Omnisend by its ID. Use when you need to delete a product and ensure it is no longer available in your catalog.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                 |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------- |
| `product_id` | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | Unique identifier of the product to delete. |

***

### `Omnisend Delete Product Category`

Integration name: **OMNISEND\_DELETE\_PRODUCT\_CATEGORY**

Tool to remove a product category from Omnisend by its ID. Use when you need to delete a product category from your catalog.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example          | Description                                          |
| ------------- | ------ | :------: | ---------------- | ---------------------------------------------------- |
| `category_id` | string |     ✅    | `"TEST_CAT_001"` | Unique identifier of the product category to delete. |

***

### `Omnisend Get Batches`

Integration name: **OMNISEND\_GET\_BATCHES**

Tool to retrieve a list of batch operations. Use after initiating a batch job to monitor its progress and results.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example      | Description                                           |
| ---------- | ------ | :------: | ------------ | ----------------------------------------------------- |
| `endpoint` | string |     ✅    | `"contacts"` | Target endpoint for the batch operations to retrieve. |

***

### `Omnisend Get Batch Information`

Integration name: **OMNISEND\_GET\_BATCH\_INFORMATION**

Tool to retrieve information about a specific batch by ID. Use after submitting a batch when you need a detailed status and counts.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example           | Description                                    |
| --------- | ------ | :------: | ----------------- | ---------------------------------------------- |
| `batchId` | string |     ✅    | `"batchId_12345"` | The unique identifier of the batch to retrieve |

***

### `Omnisend Get Batch Item`

Integration name: **OMNISEND\_GET\_BATCH\_ITEM**

Tool to retrieve a specific item within a batch by batchID and itemID. Use when you need to inspect the result of a single batch operation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description                                                             |
| --------- | ------ | :------: | ---------------------------- | ----------------------------------------------------------------------- |
| `itemID`  | string |     ✅    | `"69916a482638fcce46d0e14d"` | The unique identifier of the specific item to retrieve within the batch |
| `batchID` | string |     ✅    | `"69916a482638fcce46d0e14c"` | The unique identifier of the batch containing the item                  |

***

### `Omnisend Get Batch Items`

Integration name: **OMNISEND\_GET\_BATCH\_ITEMS**

Tool to retrieve processed items of a specific batch by ID. Use when you need to inspect individual results of a batch operation after fetching batch details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description                                                          |
| --------- | ------ | :------: | ---------------------------- | -------------------------------------------------------------------- |
| `batchId` | string |     ✅    | `"5f8d0d55bf7a230008fa0f9d"` | The unique identifier of the batch whose items you want to retrieve. |

***

### `Omnisend Get Brand`

Integration name: **OMNISEND\_GET\_BRAND**

Tool to retrieve information about the current authenticated brand. Use when you need brand details like currency, platform, or website.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Omnisend Get Cart`

Integration name: **OMNISEND\_GET\_CART**

Tool to retrieve a specific cart by ID from Omnisend v3 API. Use when you need detailed cart information including products and customer contact details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                |
| --------- | ------ | :------: | ------------------------ | ------------------------------------------ |
| `cartID`  | string |     ✅    | `"test-cart-1739608800"` | Unique identifier of the cart to retrieve. |

***

### `Omnisend Get Category`

Integration name: **OMNISEND\_GET\_CATEGORY**

Tool to retrieve details of a specific category by ID. Use when you need to fetch information about a category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example     | Description                                    |
| ------------ | ------ | :------: | ----------- | ---------------------------------------------- |
| `categoryID` | string |     ✅    | `"cat-001"` | Unique identifier of the category to retrieve. |

***

### `Omnisend Get Contact`

Integration name: **OMNISEND\_GET\_CONTACT**

Tool to retrieve details of a single contact by ID. Use when you already have a contactId and need the full profile.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                  |
| ----------- | ------ | :------: | ---------------------------- | -------------------------------------------- |
| `contactId` | string |     ✅    | `"60e7412b1234567890abcdef"` | Unique identifier of the contact to retrieve |

***

### `Omnisend Get Order`

Integration name: **OMNISEND\_GET\_ORDER**

Tool to retrieve details of a specific order by ID. Use when you need order information including products, addresses, and payment details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example              | Description                                |
| --------- | ------ | :------: | -------------------- | ------------------------------------------ |
| `orderID` | string |     ✅    | `"test-order-12345"` | Unique identifier of the order to retrieve |

***

### `Omnisend Get Product`

Integration name: **OMNISEND\_GET\_PRODUCT**

Tool to retrieve details of a specific product by ID from Omnisend. Use when you need full product information including variants, pricing, and stock status.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                | Description                                   |
| ------------ | ------ | :------: | ---------------------- | --------------------------------------------- |
| `product_id` | string |     ✅    | `"test-product-12345"` | Unique identifier of the product to retrieve. |

***

### `Omnisend Get Product Category`

Integration name: **OMNISEND\_GET\_PRODUCT\_CATEGORY**

Tool to retrieve a specific product category by ID. Use when you need details about a particular product category.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example     | Description                                           |
| ------------ | ------ | :------: | ----------- | ----------------------------------------------------- |
| `categoryID` | string |     ✅    | `"cat-001"` | Unique identifier of the product category to retrieve |

***

### `Omnisend List Campaigns`

Integration name: **OMNISEND\_LIST\_CAMPAIGNS**

Tool to retrieve a paginated list of campaigns with optional filtering by status and type. Use when you need to view or analyze campaign performance across multiple campaigns.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example | Description                                                   |
| --------- | ------- | :------: | ------- | ------------------------------------------------------------- |
| `type`    | string  |          | —       | Filter campaigns by type (e.g., regular, automation, split).  |
| `limit`   | integer |          | `100`   | Number of results to fetch. Default is 5000, maximum is 5000. |
| `offset`  | integer |          | `0`     | Number of results to skip. Use for pagination. Default is 0.  |
| `status`  | string  |          | —       | Campaign status values.                                       |

***

### `Omnisend List Carts`

Integration name: **OMNISEND\_LIST\_CARTS**

Tool to retrieve a paginated list of carts with optional filtering. Use when you need to fetch carts by date range, contact, or segment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                      | Description                                                  |
| ------------- | ------- | :------: | ---------------------------- | ------------------------------------------------------------ |
| `sort`        | string  |          | `"createdAt"`                | Sort order for results.                                      |
| `email`       | string  |          | `"user@example.com"`         | Filter carts by contact email address.                       |
| `limit`       | integer |          | `100`                        | Number of results to fetch. Default is 100, max 250.         |
| `phone`       | string  |          | `"+14155552671"`             | Filter carts by contact phone number including country code. |
| `dateTo`      | string  |          | `"2024-12-31"`               | Cart creation date to. Format: YYYY-MM-DD.                   |
| `offset`      | integer |          | `0`                          | Number of results to skip. Default is 0.                     |
| `dateFrom`    | string  |          | `"2024-01-01"`               | Cart creation date from. Format: YYYY-MM-DD.                 |
| `contactID`   | string  |          | `"5f8d3a4b2c1e8f001f6d9a7c"` | Filter carts by contact ID.                                  |
| `segmentID`   | string  |          | `"12345"`                    | Filter carts by segment ID.                                  |
| `updatedTo`   | string  |          | `"2024-12-31"`               | Cart update date to. Format: YYYY-MM-DD.                     |
| `updatedFrom` | string  |          | `"2024-01-01"`               | Cart update date from. Format: YYYY-MM-DD.                   |

***

### `Omnisend List Categories`

Integration name: **OMNISEND\_LIST\_CATEGORIES**

Tool to retrieve a paginated list of product categories. Use when you need category IDs for product management or catalog organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example   | Description                                                                               |
| --------- | ------- | :------: | --------- | ----------------------------------------------------------------------------------------- |
| `sort`    | string  |          | `"title"` | Field to sort results by. Format: 'fieldName' for ascending, '-fieldName' for descending. |
| `limit`   | integer |          | `100`     | Number of results to fetch. Defaults to 100, maximum 250.                                 |
| `offset`  | integer |          | `0`       | Number of results to skip. Defaults to 0. Use for pagination.                             |

***

### `Omnisend List Contacts`

Integration name: **OMNISEND\_LIST\_CONTACTS**

Tool to retrieve a paginated list of contacts with optional filtering. Use when you need to fetch contacts in batches and handle cursor pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example              | Description                                                           |
| ----------- | ------- | :------: | -------------------- | --------------------------------------------------------------------- |
| `tag`       | string  |          | `"VIP"`              | Filter contacts by tag.                                               |
| `after`     | string  |          | —                    | Cursor for pagination: contacts after this base64-encoded ContactID.  |
| `email`     | string  |          | `"user@example.com"` | Filter contacts by exact email address.                               |
| `limit`     | integer |          | `100`                | Number of results per page. Defaults to 100, maximum 250.             |
| `phone`     | string  |          | `"+14155552671"`     | Filter contacts by full phone number including country code.          |
| `before`    | string  |          | —                    | Cursor for pagination: contacts before this base64-encoded ContactID. |
| `status`    | string  |          | —                    | Filter contacts by email channel status.                              |
| `segmentID` | integer |          | `12345`              | Filter contacts by segment ID.                                        |

***

### `Omnisend List Events`

Integration name: **OMNISEND\_LIST\_EVENTS**

Tool to retrieve all custom events created in Omnisend app. Use when you need to view available event types for automation workflows or event tracking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Omnisend List Product Categories`

Integration name: **OMNISEND\_LIST\_PRODUCT\_CATEGORIES**

Tool to retrieve a paginated list of product categories from the Omnisend catalog. Use when fetching category data for product organization.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example       | Description                                                                    |
| --------- | ------- | :------: | ------------- | ------------------------------------------------------------------------------ |
| `sort`    | string  |          | `"createdAt"` | Field to sort by. Allowed values: 'date', 'createdAt', or 'updatedAt'.         |
| `limit`   | integer |          | `100`         | Maximum number of categories to return. Defaults to 100.                       |
| `offset`  | integer |          | `0`           | Zero-based index of the first category to return. Use to page through results. |

***

### `Omnisend List Products`

Integration name: **OMNISEND\_LIST\_PRODUCTS**

Tool to retrieve a paginated list of products. Use when syncing product catalog before campaign creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example       | Description                                                                   |
| --------- | ------- | :------: | ------------- | ----------------------------------------------------------------------------- |
| `sort`    | string  |          | `"createdAt"` | Field to sort by. Allowed values: 'date', 'createdAt', or 'updatedAt'.        |
| `limit`   | integer |          | `100`         | Maximum number of products to return. Defaults to 100.                        |
| `offset`  | integer |          | `0`           | Zero-based index of the first product to return. Use to page through results. |

***

### `Omnisend Remove Cart Product`

Integration name: **OMNISEND\_REMOVE\_CART\_PRODUCT**

Tool to remove a product from a cart in Omnisend. Use when you need to delete a specific product from a cart.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                  | Description                                             |
| ----------------- | ------ | :------: | ------------------------ | ------------------------------------------------------- |
| `cart_id`         | string |     ✅    | `"test-cart-1739614800"` | Unique identifier of the cart.                          |
| `cart_product_id` | string |     ✅    | `"test-prod-1"`          | Unique identifier of the product in the cart to remove. |

***

### `Omnisend Replace Cart`

Integration name: **OMNISEND\_REPLACE\_CART**

Tool to replace an existing cart in Omnisend using the v3 API. Use when you need to completely replace all cart data including products, pricing, and recovery URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                            | Description                                               |
| ----------------- | ------- | :------: | ------------------------------------------------------------------ | --------------------------------------------------------- |
| `cartID`          | string  |     ✅    | `"test-cart-1739608800"`                                           | Unique identifier of the cart to replace                  |
| `cartSum`         | integer |     ✅    | `78777`                                                            | Total cart value in cents (e.g., 78777 = $787.77)         |
| `currency`        | string  |     ✅    | `"EUR"`                                                            | ISO 4217 currency code for the cart (e.g., USD, EUR, GBP) |
| `products`        | array   |     ✅    | —                                                                  | List of products in the cart                              |
| `createdAt`       | string  |          | `"2017-06-20T15:40:12Z"`                                           | ISO 8601 timestamp when the cart was created              |
| `updatedAt`       | string  |          | `"2017-06-20T15:45:12Z"`                                           | ISO 8601 timestamp when the cart was last updated         |
| `cartRecoveryUrl` | string  |          | `"http://www.example.com/carts/?restoreCart=test-cart-1739608800"` | URL to restore the cart, used for abandoned cart recovery |

***

### `Omnisend Replace Cart Product`

Integration name: **OMNISEND\_REPLACE\_CART\_PRODUCT**

Tool to replace a product in a cart using Omnisend v3 API. Use when you need to update all details of a specific product in a cart.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type    | Required | Example                                                 | Description                                                                |
| --------------- | ------- | :------: | ------------------------------------------------------- | -------------------------------------------------------------------------- |
| `sku`           | string  |          | —                                                       | Stock keeping unit identifier.                                             |
| `price`         | integer |     ✅    | `12111`                                                 | Product price in cents, without commas. For example, for 1.25 USD use 125. |
| `title`         | string  |     ✅    | `"Updated Product Title"`                               | Product title.                                                             |
| `cartID`        | string  |     ✅    | `"test-cart-1771137590"`                                | Unique identifier of the cart containing the product to replace.           |
| `currency`      | string  |     ✅    | `"USD"`                                                 | ISO currency code (3 characters).                                          |
| `discount`      | integer |          | `500`                                                   | Discount sum in cents.                                                     |
| `imageUrl`      | string  |          | `"http://www.example.com/images/products/prod-999.png"` | Link to product image (must be a valid URI).                               |
| `oldPrice`      | integer |          | `14311`                                                 | Old price in cents, without commas. For example, for 1.43 USD use 143.     |
| `quantity`      | integer |     ✅    | `10`                                                    | Product quantity (only whole numbers, minimum 1).                          |
| `productID`     | string  |     ✅    | `"prod999-updated"`                                     | Product identifier.                                                        |
| `variantID`     | string  |     ✅    | `"var999-updated"`                                      | Product modification identifier (variant ID).                              |
| `productUrl`    | string  |          | `"http://www.example.com/products/prod-999"`            | Link to product page (must be a valid URI).                                |
| `description`   | string  |          | `"Updated product description"`                         | Product description.                                                       |
| `cartProductID` | string  |     ✅    | `"prod-1"`                                              | Unique identifier of the product in the cart to replace.                   |

***

### `Omnisend Replace Category`

Integration name: **OMNISEND\_REPLACE\_CATEGORY**

Tool to replace a category's title by ID. Use when you need to update an entire category resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                         | Description                                  |
| ------------ | ------ | :------: | ------------------------------- | -------------------------------------------- |
| `title`      | string |     ✅    | `"Updated Test Category Title"` | New title for the category                   |
| `categoryID` | string |     ✅    | `"test-cat-1739612000"`         | Unique identifier of the category to replace |

***

### `Omnisend Replace Order`

Integration name: **OMNISEND\_REPLACE\_ORDER**

Tool to completely replace an existing order in Omnisend. Use when you need to update all order details at once, replacing the entire order record.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type    | Required | Example                  | Description                                                                                                 |
| --------------------- | ------- | :------: | ------------------------ | ----------------------------------------------------------------------------------------------------------- |
| `tags`                | array   |          | —                        | Tags associated with the order                                                                              |
| `cartID`              | string  |          | —                        | Identifier of the cart that led to this order                                                               |
| `source`              | string  |          | —                        | Source of the order (e.g., 'web', 'mobile')                                                                 |
| `taxSum`              | integer |          | —                        | Total tax amount in smallest currency unit                                                                  |
| `orderID`             | string  |     ✅    | `"test-order-12345"`     | Unique identifier of the order to replace                                                                   |
| `currency`            | string  |     ✅    | `"EUR"`                  | ISO 4217 currency code (e.g., 'USD', 'EUR')                                                                 |
| `orderSum`            | integer |     ✅    | `25000`                  | Total order amount in the smallest currency unit (e.g., cents)                                              |
| `orderUrl`            | string  |          | —                        | URL to view the order                                                                                       |
| `products`            | array   |          | —                        | List of products in the order                                                                               |
| `createdAt`           | string  |     ✅    | `"2024-01-15T10:00:00Z"` | ISO 8601 timestamp when the order was created                                                               |
| `updatedAt`           | string  |          | —                        | ISO 8601 timestamp when the order was last updated                                                          |
| `courierUrl`          | string  |          | —                        | URL for courier tracking                                                                                    |
| `contactNote`         | string  |          | —                        | Notes about the customer                                                                                    |
| `discountSum`         | integer |          | —                        | Total discount amount in smallest currency unit                                                             |
| `orderNumber`         | integer |          | —                        | Human-readable order number                                                                                 |
| `shippingSum`         | integer |          | —                        | Shipping cost in smallest currency unit                                                                     |
| `subTotalSum`         | integer |          | —                        | Subtotal before taxes and shipping in smallest currency unit                                                |
| `cancelReason`        | string  |          | —                        | Reason for order cancellation if applicable                                                                 |
| `canceledDate`        | string  |          | —                        | ISO 8601 timestamp when the order was canceled                                                              |
| `courierTitle`        | string  |          | —                        | Name of the shipping courier                                                                                |
| `discountCode`        | string  |          | —                        | Discount or coupon code applied                                                                             |
| `discountType`        | string  |          | —                        | Type of discount (e.g., 'percentage', 'fixed')                                                              |
| `trackingCode`        | string  |          | —                        | Shipment tracking code                                                                                      |
| `discountValue`       | integer |          | —                        | Discount value (percentage or fixed amount)                                                                 |
| `paymentMethod`       | string  |          | —                        | Payment method used (e.g., 'credit\_card', 'paypal')                                                        |
| `paymentStatus`       | string  |          | `"paid"`                 | Payment status. Available values: awaitingPayment, partiallyPaid, paid, partiallyRefunded, refunded, voided |
| `billingAddress`      | object  |          | —                        | Billing address information for the order.                                                                  |
| `shippingMethod`      | string  |          | —                        | Shipping method used                                                                                        |
| `shippingAddress`     | object  |          | —                        | Shipping address information for the order.                                                                 |
| `fulfillmentStatus`   | string  |          | `"fulfilled"`            | Fulfillment status (e.g., 'fulfilled', 'unfulfilled', 'partially\_fulfilled')                               |
| `subTotalTaxIncluded` | boolean |          | —                        | Whether subtotal includes tax                                                                               |

***

### `Omnisend Replace Product`

Integration name: **OMNISEND\_REPLACE\_PRODUCT**

Tool to replace an existing product in the Omnisend catalog. Use when you need to completely replace all product data with new information.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                       | Description                                                                                               |
| ----------------- | ------ | :------: | --------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `id`              | string |     ✅    | `"test-replace-product-456"`                  | Product ID - must match the product\_id path parameter                                                    |
| `url`             | string |     ✅    | `"https://example.com/replaced-product"`      | URL pointing to the product page on your website                                                          |
| `tags`            | array  |          | —                                             | Tags for product categorization (max 100 items)                                                           |
| `type`            | string |          | `"Super Product"`                             | Product type for categorization purposes                                                                  |
| `title`           | string |     ✅    | `"Replaced Test Product"`                     | Product title                                                                                             |
| `images`          | array  |          | —                                             | Additional product image URLs (max 300 items)                                                             |
| `status`          | string |     ✅    | `"inStock"`                                   | Product stock status. Keep in sync with your shop to avoid sending out-of-stock products                  |
| `vendor`          | string |          | `"My Vendor"`                                 | Manufacturer or brand of the product                                                                      |
| `currency`        | string |     ✅    | `"USD"`                                       | ISO 4217 currency code (e.g., USD, EUR, GBP)                                                              |
| `variants`        | array  |     ✅    | —                                             | Product variants (different versions like sizes/colors). At least one variant required                    |
| `createdAt`       | string |          | `"2021-01-01T00:00:00Z"`                      | Creation timestamp in ISO 8601 format                                                                     |
| `updatedAt`       | string |          | `"2021-01-01T00:00:00Z"`                      | Last update timestamp in ISO 8601 format                                                                  |
| `product_id`      | string |     ✅    | `"test-replace-product-456"`                  | Unique identifier of the product to replace. Must match the product ID in the request body                |
| `categoryIDs`     | array  |          | —                                             | List of category IDs the product belongs to (max 100 items)                                               |
| `description`     | string |          | `"This product has been completely replaced"` | Short description of the product for email body usage                                                     |
| `defaultImageUrl` | string |          | `"https://example.com/replaced-image.jpg"`    | Primary image URL. Recommended if you need more than one image - additional images go in the images array |

***

### `Omnisend Send Event`

Integration name: **OMNISEND\_SEND\_EVENT**

Tool to send a customer event to Omnisend. Events can trigger automations and track customer behavior. Use when you need to record customer interactions such as product views, cart actions, or custom events.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                               | Description                                                                                                                                    |
| -------------- | ------ | :------: | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `origin`       | string |     ✅    | `"api"`                                               | Source of the event. Use 'api' for general API integrations. Platform or app integrations should have dedicated origin values.                 |
| `contact`      | object |     ✅    | —                                                     | Contact information. Contact will be created or updated based on the data provided. At least one identifier (email, phone, or id) is required. |
| `eventID`      | string |          | `"9afca57b-d157-478b-adde-b9506322b16f"`              | UUID of the event (v4, v5, v6, v7). Used for event deduplication along with eventTime. If not provided, it will be generated automatically.    |
| `eventName`    | string |     ✅    | `"product_viewed"`                                    | Name of the event (e.g., 'order placed', 'product viewed', 'test\_event'). Check event documentation for standard event names.                 |
| `eventTime`    | string |          | `"2021-07-01T00:00:00Z"`                              | Event timestamp in RFC3339 format (e.g., '2021-07-01T00:00:00Z'). If not provided, current time will be used.                                  |
| `properties`   | object |          | `{"price":29.99,"currency":"USD","product_id":"123"}` | Event-specific properties such as order details, product info, etc. Check events guide for recommended properties for each event type.         |
| `eventVersion` | string |          | `""`                                                  | Event version string. Check event documentation for required version for each event. Leave empty for custom events.                            |

***

### `Omnisend Update Cart`

Integration name: **OMNISEND\_UPDATE\_CART**

Tool to partially update a cart in Omnisend (v3 API). Use when you need to modify cart details such as currency, total amount, recovery URL, or products.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                  | Description                                                                   |
| ----------------- | ------- | :------: | -------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `cartID`          | string  |     ✅    | `"test-cart-1739607123"`                                 | Unique identifier of the cart to update                                       |
| `cartSum`         | integer |     ✅    | `78777`                                                  | Total cart value in cents, without commas. For example, for $1.25 USD use 125 |
| `currency`        | string  |     ✅    | `"USD"`                                                  | ISO currency code (3 characters)                                              |
| `products`        | array   |          | —                                                        | List of products in the cart                                                  |
| `cartRecoveryUrl` | string  |          | `"http://www.example.com/carts/?restoreCart=4557116516"` | URL to recover the cart                                                       |

***

### `Omnisend Update Cart Product`

Integration name: **OMNISEND\_UPDATE\_CART\_PRODUCT**

Tool to update a product in a cart (v3 API). Use when you need to modify product details such as quantity, price, or other attributes for an existing cart item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                                 | Description                                                       |
| ----------------- | ------- | :------: | ------------------------------------------------------- | ----------------------------------------------------------------- |
| `sku`             | string  |          | —                                                       | Stock keeping unit (SKU).                                         |
| `price`           | integer |          | `12111`                                                 | Current price in cents (e.g., 125 for $1.25).                     |
| `title`           | string  |          | `"Updated Test Product"`                                | Product title.                                                    |
| `cart_id`         | string  |     ✅    | `"test-cart-1739608123"`                                | Unique identifier of the cart.                                    |
| `currency`        | string  |     ✅    | `"USD"`                                                 | ISO currency code (3 characters). Must match the cart's currency. |
| `discount`        | integer |          | `100`                                                   | Discount sum in cents.                                            |
| `quantity`        | integer |          | `10`                                                    | Product quantity (must be a whole number, minimum 1).             |
| `image_url`       | string  |          | `"http://www.example.com/images/products/prod-999.png"` | Link to product image.                                            |
| `old_price`       | integer |          | `14311`                                                 | Original price in cents (e.g., 125 for $1.25).                    |
| `product_id`      | string  |          | `"prod999"`                                             | Product identifier.                                               |
| `variant_id`      | string  |          | `"prod999"`                                             | Product variant identifier.                                       |
| `description`     | string  |          | —                                                       | Product description.                                              |
| `product_url`     | string  |          | `"http://www.example.com/products/prod-999"`            | Link to product page.                                             |
| `cart_product_id` | string  |     ✅    | `"prod-123"`                                            | Unique identifier of the product in the cart to update.           |

***

### `Omnisend Update Contact`

Integration name: **OMNISEND\_UPDATE\_CONTACT**

Tool to update fields of an existing contact by ID. Use after retrieving contact ID. PATCH <https://api.omnisend.com/v3/contacts/{contactId}> Example: UpdateContact(contactId="..., body={firstName: 'John'})

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                      | Description                                |
| ----------- | ------ | :------: | ---------------------------- | ------------------------------------------ |
| `body`      | object |     ✅    | —                            | Fields to update on the contact            |
| `contactId` | string |     ✅    | `"615b9bd0e123456789abcdef"` | Unique identifier of the contact to update |

***

### `Omnisend Update Order Status`

Integration name: **OMNISEND\_UPDATE\_ORDER\_STATUS**

Tool to partially update an order status in Omnisend (v3 API). Use when you need to update shipping details, payment status, or fulfillment status of an existing order.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                    | Description                                                                                                               |
| ------------------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| `cartID`            | string |          | `"cart-12345"`                             | Identifier of the cart associated with this order.                                                                        |
| `orderID`           | string |     ✅    | `"test-order-1739599200"`                  | Unique identifier of the order to update.                                                                                 |
| `courierUrl`        | string |          | `"http://www.example.com/?trackId=666-66"` | URL to track the shipment (must be a valid URI).                                                                          |
| `cancelReason`      | string |          | `"Customer requested cancellation"`        | Reason for order cancellation.                                                                                            |
| `canceledDate`      | string |          | `"2017-05-30T14:11:12Z"`                   | ISO 8601 date-time when the order was canceled (e.g., '2017-05-30T14:11:12Z').                                            |
| `courierTitle`      | string |          | `"Nuclear post"`                           | Name of the courier/shipping company.                                                                                     |
| `trackingCode`      | string |          | `"666-66"`                                 | Tracking code for the shipment.                                                                                           |
| `paymentStatus`     | string |          | `"paid"`                                   | Payment status of the order. You need to map your status with Omnisend's statuses (e.g., 'pending', 'paid').              |
| `fulfillmentStatus` | string |          | `"fulfilled"`                              | Fulfillment status of the order. You need to map your status with Omnisend's statuses (e.g., 'unfulfilled', 'fulfilled'). |

***

### `Omnisend Update Product Category`

Integration name: **OMNISEND\_UPDATE\_PRODUCT\_CATEGORY**

Tool to update an existing product category title in Omnisend. Use when you need to modify a category's name.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example             | Description                            |
| ------------ | ------ | :------: | ------------------- | -------------------------------------- |
| `title`      | string |     ✅    | `"Beauty products"` | Updated title for the product category |
| `categoryID` | string |     ✅    | `"TEST_CAT_001"`    | Product category ID to update          |

***


# OneDrive

Your Toolhouse AI Worker can connect to One Drive using 60 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](https://toolhouse.app/auth-connections?authkit_slugs=one_drive).

## Tools (60)

### `One Drive Checkin Item`

Integration name: **ONE\_DRIVE\_CHECKIN\_ITEM**

Tool to check in a checked out driveItem resource, making the version of the document available to others. Use when you need to check in a file that was previously checked out in OneDrive or SharePoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                | Description                                                                                                       |
| --------------- | ------ | :------: | ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `comment`       | string |          | `"Updating the latest guidelines"`                                     | A check-in comment that is associated with the version.                                                           |
| `drive_id`      | string |     ✅    | `"b!sAYRj4psj0qqpjB3OOHdglZBMF5Nk0xPnR4Fc4pfinI7DA8OPuKvSo4igDo7VyMV"` | The unique identifier of the drive containing the item to check in.                                               |
| `check_in_as`   | string |          | `"published"`                                                          | Optional. The status of the document after the check-in operation is complete. Can be 'published' or unspecified. |
| `drive_item_id` | string |     ✅    | `"01K67O4VTWDINZFGZPTZFLNCNDHKWWTVVM"`                                 | The unique identifier of the driveItem to check in.                                                               |

***

### `One Drive Checkout Item`

Integration name: **ONE\_DRIVE\_CHECKOUT\_ITEM**

Tool to check out a driveItem to prevent others from editing it and make your changes invisible until checked in. Use when you need to lock a file for exclusive editing in SharePoint or OneDrive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                | Description                                                          |
| --------------- | ------ | :------: | ---------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `drive_id`      | string |     ✅    | `"b!fkc7Pu0hi0Sn_lc7cY3F_488fj0zcS1LulNBjZ70i6vCTPG_IXC3Tp9kaFX6UuQp"` | The unique identifier of the drive containing the item to checkout.  |
| `drive_item_id` | string |     ✅    | `"01LLJYZ3DDTIEQXG7AQNA27GC33MPBNEMN"`                                 | The unique identifier of the driveItem (file or folder) to checkout. |

***

### `One Drive Copy Item`

Integration name: **ONE\_DRIVE\_COPY\_ITEM**

Tool to copy a DriveItem (file or folder) to a new location asynchronously. Use when you need to duplicate an item, optionally renaming it or specifying a different parent folder. The operation is asynchronous; the response provides a URL to monitor the copy progress. Do not assume the copy is complete immediately; verify via ONE\_DRIVE\_GET\_ITEM or by listing the destination, especially for large folder trees.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                     | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                        | string  |          | `"new_document_copy.docx"`                                                                           | The new name for the copied item. If not provided, the same name as the original is used. Recommended to provide either 'name' or 'parent\_reference' for reliable operation.                                                                                                                                                                                                                                                                        |
| `item_id`                     | string  |     ✅    | `"01BYE5RZZ5OJQ5X6X1W4Q6V8T2Y4A8P7C5"`                                                               | The ID of the DriveItem to be copied.                                                                                                                                                                                                                                                                                                                                                                                                                |
| `site_id`                     | string  |          | `"contoso.sharepoint.com,2C712604-132D-4AC7-A58A-9919A6B0A862,D8A48A4A-274E-4494-8B2A-40E71A6E1D8A"` | The ID of the site if the item is in a SharePoint site.                                                                                                                                                                                                                                                                                                                                                                                              |
| `user_id`                     | string  |          | `"024d423a-35ef-450e-9317-5669101788f0"`                                                             | The ID of the user if accessing another user's drive.                                                                                                                                                                                                                                                                                                                                                                                                |
| `drive_id`                    | string  |          | `"b!s8RqPCGh0ESQS2EYnKM0IKS3lM7GxjdAviiob7oc5pXv_0LiL-62Qq3IXyrXnEop"`                               | The ID of the drive where the item is located. If not provided, 'me' (user's default drive) is assumed.                                                                                                                                                                                                                                                                                                                                              |
| `group_id`                    | string  |          | `"024d423a-35ef-450e-9317-5669101788f0"`                                                             | The ID of the group if the item is in a group drive.                                                                                                                                                                                                                                                                                                                                                                                                 |
| `children_only`               | boolean |          | —                                                                                                    | If set to true, only the children of the source driveItem (if it's a folder) are copied, not the driveItem itself. Defaults to false. Cannot be used with name parameter.                                                                                                                                                                                                                                                                            |
| `parent_reference`            | object  |          | —                                                                                                    | Reference to the parent item (folder) where the copy will be created. If not provided, the item is copied to the same location. Recommended to provide either 'name' or 'parent\_reference' for reliable operation. Must use stable OneDrive item IDs (not paths or names), as paths break on rename/relocation. Resolve names/paths first using ONE\_DRIVE\_SEARCH\_ITEMS or ONE\_DRIVE\_ONEDRIVE\_FIND\_FOLDER. Expected keys: `driveId` and `id`. |
| `conflict_behavior`           | string  |          | —                                                                                                    | Specifies how to handle a naming conflict if an item with the same name already exists in the destination. 'fail' (default), 'replace', or 'rename'.                                                                                                                                                                                                                                                                                                 |
| `include_all_version_history` | boolean |          | —                                                                                                    | If set to true, the version history of the source file is copied to the destination. Defaults to false.                                                                                                                                                                                                                                                                                                                                              |

***

### `One Drive Create Item Permission`

Integration name: **ONE\_DRIVE\_CREATE\_ITEM\_PERMISSION**

Tool to create a new permission on a OneDrive drive item. Use when you need to grant application or SharePoint group permissions to a file or folder. This endpoint supports creating application permissions and SharePoint site group permissions only.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                | Description                                                                                 |
| --------------- | ------ | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| `roles`         | array  |     ✅    | `["write"]`                                                            | Array of roles to assign to the permission. Valid values: read, write, owner.               |
| `drive_id`      | string |     ✅    | `"b!sAYRj4psj0qqpjB3OOHdglZBMF5Nk0xPnR4Fc4pfinLYXvUneLOfS60CAyfNpnLO"` | The unique identifier of the drive.                                                         |
| `drive_item_id` | string |     ✅    | `"01K67O4VUBDQZACMZEPZG2QD5KV562YVWG"`                                 | The unique identifier of the drive item.                                                    |
| `granted_to_v2` | object |     ✅    | —                                                                      | The identity to grant permission to. Must contain either application or siteGroup property. |

***

### `One Drive Create Link`

Integration name: **ONE\_DRIVE\_CREATE\_LINK**

Tool to create a sharing link for a DriveItem (file or folder) by its unique ID. Use when you need to generate a shareable link for an item in OneDrive or SharePoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`                         | string  |     ✅    | —       | The type of sharing link to create. Valid values: `view`, `edit`, `embed`.                                                                                                                                                                                                                                                                                                                                           |
| `scope`                        | string  |          | —       | The scope of the link to create. If not specified, the default link type for the organization is created. Valid values: `view`, `edit`, `organization`, `anonymous`. Use `organization` to restrict to internal users; `anonymous` exposes content to anyone with the link. Tenant policies may block or downgrade certain scopes (e.g., `anonymous`), resulting in errors or more restrictive links than requested. |
| `item_id`                      | string  |     ✅    | —       | The unique identifier of the drive item (file or folder) for which to create the link. Note: Some item types cannot be shared, including embedded objects, certain system files, and items with restricted permissions. If sharing fails with 'notSupported' error, verify the item type supports sharing.                                                                                                           |
| `site_id`                      | string  |          | —       | The unique identifier of the site. Use this if the item is in a SharePoint site's drive.                                                                                                                                                                                                                                                                                                                             |
| `user_id`                      | string  |          | —       | The unique identifier of the user. Use this if the item is in another user's drive.                                                                                                                                                                                                                                                                                                                                  |
| `drive_id`                     | string  |          | —       | The unique identifier of the drive. If not provided, the link will be created in the current user's drive (me/drive).                                                                                                                                                                                                                                                                                                |
| `group_id`                     | string  |          | —       | The unique identifier of the group. Use this if the item is in a group's drive.                                                                                                                                                                                                                                                                                                                                      |
| `password`                     | string  |          | —       | The password for the sharing link. Optional and OneDrive Personal only.                                                                                                                                                                                                                                                                                                                                              |
| `recipients`                   | array   |          | —       | A list of recipients for the sharing link. Required when scope is 'users'. Each recipient should be a dict with an 'email' key, e.g. \[{'email': '<user@example.com>'}].                                                                                                                                                                                                                                             |
| `expiration_date_time`         | string  |          | —       | The expiration date and time for the permission, in yyyy-MM-ddTHH:mm:ssZ format. Example: 2023-12-31T23:59:59Z Must be a future UTC timestamp; past values will cause the call to fail.                                                                                                                                                                                                                              |
| `retain_inherited_permissions` | boolean |          | —       | If true (default), existing inherited permissions are retained. If false, all existing permissions are removed when sharing for the first time.                                                                                                                                                                                                                                                                      |

***

### `One Drive Delete Item`

Integration name: **ONE\_DRIVE\_DELETE\_ITEM**

Tool to delete a DriveItem (file or folder) by its unique ID from the authenticated user's OneDrive. Use when you need to remove an item from OneDrive. This action moves the item to the recycle bin, not permanently deleting it; storage quota is not freed until the recycle bin is emptied. Bulk deletions can trigger 429 (rate limit) or 5xx responses — limit concurrency and use exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                           | Description                                                                                                                                                                                                                                                                                  |
| ---------- | ------ | :------: | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"01BYE5LBA66X3J2X2T2K2S2J2Y2T2K2S2J"`            | The unique identifier of the DriveItem (file or folder) to be deleted.                                                                                                                                                                                                                       |
| `user_id`  | string |          | `"user@example.com"`                              | The user's ID, email, or 'me'. Defaults to 'me' (authenticated user). Required for S2S (app-only) auth.                                                                                                                                                                                      |
| `drive_id` | string |          | `"b!C1N9xkeL9Ea4Y0bdYcYWjXn7b0Un2adItX1s59n5N7Y"` | The unique identifier of the Drive where the item is located. If not provided, the action will target the user's personal OneDrive (me/drive). Always specify drive\_id explicitly for group drives, SharePoint site drives, or shared libraries to avoid silently querying the wrong drive. |
| `if_match` | string |          | `"abcdef1234567890"`                              | (Optional) If this request header is included and the eTag (or cTag) provided doesn't match the current tag on the item, a `412 Precondition Failed` response is returned, and the item won't be deleted.                                                                                    |

***

### `One Drive Delete Item Permanently`

Integration name: **ONE\_DRIVE\_DELETE\_ITEM\_PERMANENTLY**

Tool to permanently delete a driveItem by its ID without moving it to the recycle bin. Use when you need to irreversibly remove a file or folder from OneDrive or SharePoint. This action cannot be undone.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                | Description                                                                                                                                                             |
| ---------- | ------ | :------: | ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"01LLJYZ3CTMC3NXG4WT5G2CTWDXL3ZRNRY"`                                 | The unique identifier of the drive item (file or folder) to permanently delete. This action deletes the item without moving it to the recycle bin and cannot be undone. |
| `drive_id` | string |     ✅    | `"b!fkc7Pu0hi0Sn_lc7cY3F_488fj0zcS1LulNBjZ70i6vCTPG_IXC3Tp9kaFX6UuQp"` | The unique identifier of the drive containing the item to permanently delete.                                                                                           |

***

### `One Drive Delete Item Permission`

Integration name: **ONE\_DRIVE\_DELETE\_ITEM\_PERMISSION**

Tool to delete a permission from a drive item. Use when you need to revoke sharing access to a file or folder. Only non-inherited sharing permissions can be deleted.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                              | Description                                                                                                          |
| ---------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"01LLJYZ3BIVSH7CHY3XBD3HP7XUKUOEM4T"`                                                               | The unique identifier of the drive item (file or folder).                                                            |
| `perm_id`  | string |     ✅    | `"aTowIy5mfG1lbWJlcnNoaXB8c2Ftdml0QGNvbXBvc2lvMjAyNC5vbm1pY3Jvc29mdC5jb20"`                          | The unique identifier of the permission to delete. Only non-inherited sharing permissions can be deleted.            |
| `site_id`  | string |          | `"contoso.sharepoint.com,2C712604-1397-42ED-85C7-5843590F0202,2D22A158-83D2-4D48-92C1-502810230D0A"` | The unique identifier of a SharePoint site. Use this if the item is in a SharePoint site's drive.                    |
| `user_id`  | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of a user. Use this if the item is in a specific user's drive (other than 'me').               |
| `drive_id` | string |          | `"b!C1N9xkeL9Ea4Y0bdYcYWjXn7b0Un2adItX1s59n5N7Y"`                                                    | The unique identifier of the drive. If not provided, the action will target the user's personal OneDrive (me/drive). |
| `group_id` | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of the group. Use this if the item is in a group's drive.                                      |

***

### `One Drive Delete Share Permission`

Integration name: **ONE\_DRIVE\_DELETE\_SHARE\_PERMISSION**

Tool to delete the permission navigation property for a shared drive item. Use when you need to remove a sharing link permission. This effectively revokes access via the specific share link.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                         |
| ---------------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `shared_drive_item_id` | string |     ✅    | `"u!aHR0cHM6Ly9jb21wb3NpbzIwMjQtbXkuc2hhcmVwb2ludC5jb20vOng6L2cvcGVyc29uYWwva2FyYW52YWlkeWFfYXV0aGtpdF9haS9JUURPT2NCVEx5RTFSWktVQkJGZ0YzZVZBUmI4Zk5XVjdhMUJidGQ1NDF2SEdXUQ"` | The share ID or base64-encoded sharing URL. This is the shareId returned from the createLink API response. Example format: u!aHR0cHM6Ly9jb21wb3NpbzIwMjQtbXkuc2hhcmVwb2ludC5jb20vOng6L2cvcGVyc29uYWwva2FyYW52YWlkeWFfYXV0aGtpdF9haS9JUURPT2NCVEx5RTFSWktVQkJGZ0YzZVZBUmI4Zk5XVjdhMUJidGQ1NDF2SEdXUQ |

***

### `One Drive Discard Checkout`

Integration name: **ONE\_DRIVE\_DISCARD\_CHECKOUT**

Tool to discard the checkout of a driveItem, releasing it and discarding any changes made while checked out. Use when you need to cancel a checkout and revert changes on a file in SharePoint or OneDrive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                | Description                                                                  |
| --------------- | ------ | :------: | -------------------------------------- | ---------------------------------------------------------------------------- |
| `drive_id`      | string |     ✅    | `"b!example-drive-id-placeholder"`     | The unique identifier of the drive containing the item to discard checkout.  |
| `drive_item_id` | string |     ✅    | `"01LLJYZ3DUIPEYQZBWWNCJ7J7BBKG2TVUU"` | The unique identifier of the driveItem (file or folder) to discard checkout. |

***

### `One Drive Download File`

Integration name: **ONE\_DRIVE\_DOWNLOAD\_FILE**

Downloads a file from a user's OneDrive using its item ID, which must refer to a file and not a folder. Response contains a content object with fields: s3url (URL to fetch raw file bytes), mimetype, and name; raw file data is not returned directly. Parsing content from Excel, Word, PDF, or other formats requires additional tooling. The response also includes attachment.s3key, required when passing this file to downstream tools such as OUTLOOK\_SEND\_EMAIL or OUTLOOK\_CREATE\_DRAFT.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| --------------- | ------ | :------: | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `format`        | string |          | `"pdf"`                          | Optional format for file conversion during download. 'pdf' converts supported source files (doc, docx, dot, dotx, dotm, dsn, dwg, eml, epub, fluidframework, form, htm, html, loop, loot, markdown, md, msg, note, odp, ods, odt, page, pps, ppsx, ppt, pptx, pulse, rtf, task, tif, tiff, wbtx, whiteboard, xls, xlsm, xlsx) to PDF. 'html' converts Loop/Fluid files (loop, fluid, wbtx) to HTML. Leave empty to download the file in its original format without conversion. Do NOT use this parameter if the file is already in the target format (e.g., don't convert PDF to PDF or HTML to HTML), as this will result in an error. |
| `item_id`       | string |     ✅    | `"1234567890ABC"`                | Raw item ID only (e.g., '1234567890ABC'). Do not include URL fragments or query parameters like '\&cid=...' or '?param=...' from sharing links.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `user_id`       | string |          | `"me"`                           | User's ID or User Principal Name (UPN), or 'me' for the authenticated user's OneDrive. Ignored when drive\_id is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `drive_id`      | string |          | `"b!C378D127A8A967E6"`           | The ID of the drive containing the file. Required for SharePoint or OneDrive for Business drives. When provided, user\_id is ignored.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `file_name`     | string |     ✅    | `"report.docx"`                  | Desired filename (including extension) for the downloaded content.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `if_none_match` | string |          | `"aQzlGRDlBMjdBRDQ5RUVCOTE3LjA"` | Optional ETag or cTag value for conditional download. If the provided tag matches the current file's tag, the API returns HTTP 304 Not Modified without downloading the file, saving bandwidth. Useful for caching scenarios.                                                                                                                                                                                                                                                                                                                                                                                                            |

***

### `One Drive Download File By Path`

Integration name: **ONE\_DRIVE\_DOWNLOAD\_FILE\_BY\_PATH**

Downloads the contents of a file from OneDrive by its path. The API returns a 302 redirect to a pre-authenticated download URL. Use when you know the file path but not the item ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example              | Description                                                                                                                                       |
| ----------- | ------ | :------: | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`   | string |          | `"user@example.com"` | The user's ID, email, or 'me'. Defaults to 'me' (authenticated user). Required for S2S (app-only) auth.                                           |
| `file_name` | string |     ✅    | `"report.docx"`      | Desired filename (including extension) for the downloaded content.                                                                                |
| `item_path` | string |     ✅    | `"document.txt"`     | The path to the file in OneDrive, relative to the drive root (e.g., 'document.txt' or 'folder/subfolder/file.pdf'). Do not include leading slash. |

***

### `One Drive Download Item As Format`

Integration name: **ONE\_DRIVE\_DOWNLOAD\_ITEM\_AS\_FORMAT**

Tool to download the contents of a driveItem converted to a specific format (e.g., PDF or HTML). Use when you need to convert Office documents to PDF or Loop/Fluid files to HTML before downloading. Supports accessing items by item\_id or by path, and can target specific drives via drive\_id.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                                                | Description                                                                                                                                                                                  |
| ------------------- | ------ | :------: | ---------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `format`            | string |     ✅    | `"pdf"`                                                                | Format to convert the item to. Use 'pdf' for Office documents (doc, docx, ppt, pptx, xls, xlsx, etc.) or 'html' for Loop/Fluid files (loop, fluid, wbtx).                                    |
| `item_id`           | string |          | `"01K67O4VRWDSTKBPCK3ZGLBNUVXQ5WGFRC"`                                 | The unique identifier of the driveItem to convert. If provided, this takes precedence over path\_and\_filename.                                                                              |
| `user_id`           | string |          | `"user@example.com"`                                                   | User's ID or User Principal Name (UPN), or 'me' for the authenticated user's OneDrive. Ignored when drive\_id is provided.                                                                   |
| `drive_id`          | string |          | `"b!sAYRj4psj0qqpjB3OOHdglZBMF5Nk0xPnR4Fc4pfinI7DA8OPuKvSo4igDo7VyMV"` | The unique identifier of the drive. Optional - use for SharePoint document libraries. If not provided, uses the default drive.                                                               |
| `file_name`         | string |     ✅    | `"report.pdf"`                                                         | Desired filename (including extension) for the downloaded converted content.                                                                                                                 |
| `path_and_filename` | string |          | `"Documents/report.docx"`                                              | Path and filename of the driveItem under root (e.g., 'Documents/report.docx' or 'presentation.pptx'). Do not include leading slash. Either item\_id or path\_and\_filename must be provided. |

***

### `One Drive Download Item Version`

Integration name: **ONE\_DRIVE\_DOWNLOAD\_ITEM\_VERSION**

Tool to download the contents of a specific previous version of a drive item (file). Returns the actual file content. Note: You cannot download the current version using this endpoint - it only works for previous versions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                           | Description                                                                                                                                                    |
| ------------ | ------ | :------: | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`    | string |     ✅    | `"01K67O4VQGGYWPNRNWTFCIVSY6TCKQFCQB"`            | The unique identifier of the drive item (file). Cannot be a folder ID.                                                                                         |
| `drive_id`   | string |          | `"b!C1N9xkeL9Ea4Y0bdYcYWjXn7b0Un2adItX1s59n5N7Y"` | The unique identifier of the drive containing the file. If not provided, defaults to the user's personal OneDrive (me/drive).                                  |
| `file_name`  | string |     ✅    | `"report_v1.docx"`                                | Desired filename (including extension) for the downloaded version content.                                                                                     |
| `version_id` | string |     ✅    | `"1.0"`                                           | The ID of the specific version to download (e.g., '1.0', '2.0'). Cannot be the current version - only previous versions can be downloaded using this endpoint. |

***

### `One Drive Follow Item`

Integration name: **ONE\_DRIVE\_FOLLOW\_ITEM**

Tool to follow a driveItem (file or folder) in OneDrive or SharePoint. Use when you need to add an item to the user's followed items list for tracking updates.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                | Description                                                                                                                                                                                                                 |
| -------------- | ------ | :------: | ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `drive_id`     | string |     ✅    | `"b!fkc7Pu0hi0Sn_lc7cY3F_488fj0zcS1LulNBjZ70i6vCTPG_IXC3Tp9kaFX6UuQp"` | The unique identifier of the drive containing the item to follow. This can be the ID of a personal OneDrive, a group's document library, or a SharePoint site's drive.                                                      |
| `driveItem_id` | string |     ✅    | `"01LLJYZ3BIVSH7CHY3XBD3HP7XUKUOEM4T"`                                 | The unique identifier of the driveItem (file or folder) to follow. DriveItem IDs are case-sensitive and must be used exactly as returned from Microsoft Graph API operations like list, search, or folder children queries. |

***

### `One Drive Get Drive`

Integration name: **ONE\_DRIVE\_GET\_DRIVE**

Retrieves the properties and relationships of a Drive resource by its unique ID. Use this action when you need to get details about a specific OneDrive, user's OneDrive, group's document library, or a site's document library. Only drives accessible to the authenticated user are returned; missing drives indicate insufficient OAuth scope or tenant permissions.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                | Description                                                                                                                                                                                                                           |
| --------------- | ------ | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `drive_id`      | string |     ✅    | `"b!t18F8ybsHUq1z3LTz8xvZqP8zaSWjkFNhsME-Fepo75dTf9vQKfeRblBZjoSQrd7"` | The unique identifier of the drive. This can be the ID of the user's personal OneDrive, a group's document library, or a specific drive ID. Must be a valid, non-empty value; use ONE\_DRIVE\_LIST\_DRIVES to obtain valid drive IDs. |
| `expand_fields` | array  |          | `["root","list"]`                                                      | A comma-separated list of relationships to expand and include in the response. For example, "root,list" to include the root folder and list information. This allows you to retrieve related resources in a single request.           |
| `select_fields` | array  |          | `["id","name","driveType"]`                                            | A comma-separated list of properties to include in the response. Use this to retrieve specific fields and reduce the response size. For example, "id,name,driveType". If not provided, all default properties are returned.           |

***

### `One Drive Get Drive Item By Sharing Url`

Integration name: **ONE\_DRIVE\_GET\_DRIVE\_ITEM\_BY\_SHARING\_URL**

Tool to resolve a OneDrive/SharePoint sharing URL (or shareId) to a DriveItem with driveId and itemId. Use when you have a sharing link from Teams, chat, or 1drv.ms and need the item's metadata or IDs for downstream actions like permissions or download.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                 | Type    | Required | Example                                           | Description                                                                                                                                                                                                       |
| ------------------------- | ------- | :------: | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sharing_url`             | string  |          | `"https://1drv.ms/u/s!Asj_FKjfasdf"`              | A OneDrive or SharePoint sharing URL (e.g., 1drv.ms link, SharePoint link, or Teams contentUrl). This will be automatically encoded to a sharing token. Mutually exclusive with share\_id\_or\_encoded\_url.      |
| `prefer_redeem`           | string  |          | `"redeemSharingLinkIfNecessary"`                  | Controls access redemption. 'redeemSharingLink' grants durable access to the item. 'redeemSharingLinkIfNecessary' grants access only for this request. If not specified, no Prefer header is sent.                |
| `select_fields`           | array   |          | `["id","name","size"]`                            | A list of DriveItem properties to return. If not specified, a default set of properties is returned. Common fields: id, name, size, webUrl, file, folder, createdDateTime, lastModifiedDateTime, parentReference. |
| `expand_children`         | boolean |          | —                                                 | If true and the item is a folder, expands the children collection to include child items in the response.                                                                                                         |
| `share_id_or_encoded_url` | string  |          | `"u!aHR0cHM6Ly8xZHJ2Lm1zL3UvcyFBc2pfRktqZmFzZGY"` | An already-encoded sharing token (prefixed with 'u!') or a shareId token from a previous API call. Mutually exclusive with sharing\_url.                                                                          |

***

### `One Drive Get Followed Item`

Integration name: **ONE\_DRIVE\_GET\_FOLLOWED\_ITEM**

Tool to retrieve a specific followed driveItem from a drive. Use when you need to get details about a file or folder that the user has marked to follow.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type   | Required | Example                                                                | Description                                                                                                                                 |
| -------------- | ------ | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `drive_id`     | string |     ✅    | `"b!fkc7Pu0hi0Sn_lc7cY3F_488fj0zcS1LulNBjZ70i6vCTPG_IXC3Tp9kaFX6UuQp"` | The unique identifier of the drive. This can be the ID of the user's personal OneDrive, a group's document library, or a specific drive ID. |
| `driveItem_id` | string |     ✅    | `"01LLJYZ3F5QHHAJFBM6ZHIQLALLLTDLYHB"`                                 | The unique identifier of the followed driveItem to retrieve. This is the ID of a specific file or folder that has been followed.            |

***

### `One Drive Get Group Drive`

Integration name: **ONE\_DRIVE\_GET\_GROUP\_DRIVE**

Tool to retrieve the document library (drive) for a Microsoft 365 group. Use when you need to access the default document library associated with a specific group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                                                                                                                                          |
| --------------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `group_id`      | string |     ✅    | `"e063320c-cde3-49cf-a9ce-cad44aa44deb"` | The unique identifier of the group whose document library you want to retrieve.                                                                                                                                      |
| `select_fields` | array  |          | `["id","name","driveType"]`              | A list of properties to include in the response. Use this to retrieve specific fields and reduce the response size. For example, \["id", "name", "driveType"]. If not provided, all default properties are returned. |

***

### `One Drive Get Item`

Integration name: **ONE\_DRIVE\_GET\_ITEM**

Retrieves the metadata of a DriveItem by its unique ID. Use this tool to get information about a specific file or folder in OneDrive when you have its ID. If a `drive_id` is not provided, it defaults to the user's main drive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter          | Type   | Required | Example                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------------ | ------ | :------: | ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`          | string |     ✅    | `"01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK"`                                          | The unique identifier of the DriveItem (file or folder). DriveItem IDs vary by platform: OneDrive for Business/SharePoint uses '01...' prefix format (e.g., '01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK'), while OneDrive Personal uses 'HASH!NUMBER' format (e.g., 'D4648F06C91D9D3D!54927'). IDs are case-sensitive and must be used exactly as returned from Microsoft Graph API. Obtain IDs from ONE\_DRIVE\_LIST\_FOLDER\_CHILDREN, ONE\_DRIVE\_SEARCH\_ITEMS, ONE\_DRIVE\_GET\_RECENT\_ITEMS, or similar operations. Do NOT use: web URLs, sharing links, SharePoint listItem IDs, or manually constructed identifiers. IDs become stale after move, rename, or delete; refresh via ONE\_DRIVE\_SEARCH\_ITEMS or ONE\_DRIVE\_LIST\_FOLDER\_CHILDREN instead of retrying a stale ID.                                                                                                                                                                   |
| `drive_id`         | string |          | `"b!C1N9xkeL9Ea4Y0bdYcYWjXn7b0Un2adItX1s59n5N7Y"`                               | The unique identifier of the Drive where the item is located. If not provided, the action will target the user's personal OneDrive (me/drive). Always specify drive\_id explicitly for group drives, SharePoint site drives, or shared libraries to avoid silently querying the wrong drive.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `select_fields`    | array  |          | `["id","name","size","file","folder","createdDateTime","lastModifiedDateTime"]` | A list of DriveItem properties to return. If not specified, a default set of properties is returned. Refer to the DriveItem resource documentation for available fields.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `expand_relations` | array  |          | `["children"]`                                                                  | Navigation properties to expand in the response. Valid values: 'children' (folder contents), 'thumbnails' (image previews), 'versions' (version history), 'permissions' (sharing permissions), 'listItem' (SharePoint list item data), 'activities' (recent activities), 'analytics' (usage analytics), 'createdByUser' (creator user details), 'lastModifiedByUser' (last modifier user details), 'retentionLabel' (retention policy), 'subscriptions' (webhooks), 'workbook' (Excel workbook data). Note: 'content' is NOT expandable - use ONE\_DRIVE\_DOWNLOAD\_FILE to retrieve file content; 'listItem' requires SharePoint drives; some properties have regional/license restrictions. When expanding 'children': the array may be empty or absent; check for its presence and branch on 'file' vs 'folder' facets before processing. Expansion is non-recursive — call this tool separately for each child folder to traverse nested trees. |

***

### `One Drive Get Item Permissions`

Integration name: **ONE\_DRIVE\_GET\_ITEM\_PERMISSIONS**

Retrieves the permissions of a DriveItem by its unique ID within a specific Drive. Use when you need to check who has access to a file or folder and what level of access they have. Response nests permission entries under `data.value`; check top-level `success`/`error` flags before processing results. Results include inherited permissions, owner entries, and anonymous link entries — not just explicitly granted permissions. Sharing links may have differing scopes (org-only vs. anonymous); verify `link.scope` before treating a permission as externally accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                       |
| --------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `select`        | string |          | `"id,roles,link"`                                                                                    | A comma-separated list of properties to include in the response. For example, 'id,roles,link'.                                                                                                                                                                                                                                                                                    |
| `item_id`       | string |          | `"0123456789ABCDEF!123"`                                                                             | The unique identifier of the drive item. Verify the correct item before calling — disambiguate similarly named files using folder path, timestamps, or file size. Required unless item\_path is provided.                                                                                                                                                                         |
| `site_id`       | string |          | `"contoso.sharepoint.com,2C712604-1397-42ED-85C7-5843590F0202,2D22A158-83D2-4D48-92C1-502810230D0A"` | The unique identifier of a SharePoint site. Use this if the item is in a SharePoint site's drive.                                                                                                                                                                                                                                                                                 |
| `user_id`       | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of a user. Use this if the item is in a specific user's drive (other than 'me').                                                                                                                                                                                                                                                                            |
| `drive_id`      | string |          | `"b!C1234567890ABCDEFGH"`                                                                            | The unique identifier of the drive. Required if not using other identifiers like group\_id, site\_id, or user\_id in the path.                                                                                                                                                                                                                                                    |
| `group_id`      | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of a group. Use this if the item is in a group's drive.                                                                                                                                                                                                                                                                                                     |
| `item_path`     | string |          | `":/MyFolder/MyFile.txt:/"`                                                                          | The path to the item relative to the drive's root. Use this if item\_id is not known. Must start with ':/' and end with ':/'. Example: ':/FolderA/FileB.txt:/'. Only applicable when accessing items in the current user's drive (me/drive/root). Does NOT substitute `item_id` (which is required); use only as supplemental path context for items in the current user's drive. |
| `if_none_match` | string |          | `"W/\"datetime'2024-01-15T12%3A00%3A00Z'\""`                                                         | If this request header value (etag) matches the current etag on the item, an HTTP 304 Not Modified response is returned.                                                                                                                                                                                                                                                          |

***

### `One Drive Get Item Thumbnails`

Integration name: **ONE\_DRIVE\_GET\_ITEM\_THUMBNAILS**

Tool to retrieve the thumbnails associated with a DriveItem. Use when you need to display visual previews of files. Response contains a `value` array with size keys (`small`, `medium`, `large`); thumbnails may not be generated for all file types or newly uploaded items, so handle an empty or missing `value` array. Returned thumbnail URLs are external HTTP endpoints with independent availability.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                            |
| ---------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `select`               | string  |          | `"medium,large"`                                                                                     | A comma-separated list of thumbnail sizes to retrieve (e.g., "small,medium,large", or "c300x400\_crop"). If not specified, all available thumbnails for the first thumbnailSet (id: "0") are returned. |
| `item_id`              | string  |     ✅    | `"01BYE5RZZ5S2R2YJ2V2XSW42X2YJ2V2XSW"`                                                               | The unique identifier of the DriveItem.                                                                                                                                                                |
| `site_id`              | string  |          | `"contoso.sharepoint.com,01234567-89ab-cdef-0123-456789abcdef,01234567-89ab-cdef-0123-456789abcdef"` | The unique identifier of a Site. Provide either drive\_id, group\_id, site\_id, or user\_id.                                                                                                           |
| `user_id`              | string  |          | `"01234567-89ab-cdef-0123-456789abcdef"`                                                             | The unique identifier of a User. Provide either drive\_id, group\_id, site\_id, or user\_id.                                                                                                           |
| `drive_id`             | string  |          | `"b!C1b_fJ0P9k6XwXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkKzXkK"`                               | The unique identifier of the Drive. If not provided, 'me' will be used for the current user's drive.                                                                                                   |
| `group_id`             | string  |          | `"01234567-89ab-cdef-0123-456789abcdef"`                                                             | The unique identifier of a Group. Provide either drive\_id, group\_id, site\_id, or user\_id.                                                                                                          |
| `original_orientation` | boolean |          | —                                                                                                    | If true, retrieves the thumbnail with its original EXIF orientation. This is only supported on OneDrive Personal. Defaults to false.                                                                   |

***

### `One Drive Get Item Versions`

Integration name: **ONE\_DRIVE\_GET\_ITEM\_VERSIONS**

Tool to retrieve the version history of a DriveItem by its unique ID. Use when you need to access or list previous versions of a file. Version history may be unavailable or empty for folders or items in drives without versioning enabled.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                              | Description                                                                                                                                             |
| ---------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item_id`  | string |     ✅    | `"01BYE5RZZ5WNL2W2T7J7234P7R6IOF7M2M"`                                                               | The unique identifier of the item (file or folder).                                                                                                     |
| `site_id`  | string |          | `"contoso.sharepoint.com,2C712CB0-1531-4950-8391-53C884381F08,2C08C37A-CE38-4E8A-877A-B96EF858F078"` | The unique identifier of the site. Mutually exclusive with drive\_id, group\_id, and user\_id.                                                          |
| `user_id`  | string |          | `"024d491a-1568-4b21-8302-5804e392b078"`                                                             | The unique identifier of the user. Mutually exclusive with drive\_id, group\_id, and site\_id.                                                          |
| `drive_id` | string |          | `"b!C1zX0a9GEE20kL9aMCxJjB"`                                                                         | The unique identifier of the drive. Mutually exclusive with group\_id, site\_id, and user\_id. One of these must be provided if not using the /me path. |
| `group_id` | string |          | `"024d491a-1568-4b21-8302-5804e392b078"`                                                             | The unique identifier of the group. Mutually exclusive with drive\_id, site\_id, and user\_id.                                                          |

***

### `One Drive Get Recent Items`

Integration name: **ONE\_DRIVE\_GET\_RECENT\_ITEMS**

Get files and folders recently accessed by the user. Returns items based on activity history (opened, edited, viewed), sorted by most recent first — NOT by modification time; use ONE\_DRIVE\_ONEDRIVE\_LIST\_ITEMS or ONE\_DRIVE\_LIST\_ROOT\_DRIVE\_CHANGES for strictly modification-based queries. Use when you need to see what the user worked on recently (e.g., 'Show me files I worked on today'). Different from search - this tracks activity, not content. Results may contain duplicate names; disambiguate using lastModifiedDateTime, parentReference.path, and the file/folder property before acting on a specific item.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------- | ------- | :------: | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `20`                                    | Maximum number of recent items to return (1-200). Controls response size for better performance. Use pagination with @odata.nextLink for larger datasets.                                                                                                                                                                                                                                                                                                                                                           |
| `select`  | string  |          | `"id,name,webUrl,lastModifiedDateTime"` | Comma-separated list of properties to include in the response. Significantly reduces payload size by returning only specified fields. Common properties: id, name, webUrl, size, lastModifiedDateTime, lastAccessedDateTime, file, folder, parentReference. If not specified, all properties are returned (large payload). Always include id in select and use returned id values directly — never reconstruct or hardcode IDs, as stale or manually constructed IDs will fail in tools like ONE\_DRIVE\_GET\_ITEM. |

***

### `One Drive Get Root`

Integration name: **ONE\_DRIVE\_GET\_ROOT**

Tool to retrieve metadata for the root folder of the signed-in user's OneDrive. Use when you need information about the user's OneDrive root directory, such as size, child count, or web URL.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                   |
| --------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`       | string |          | `"user@example.com"`                     | The user's ID, email, or 'me'. Defaults to 'me' (authenticated user). Required for S2S (app-only) auth.                                                                                                                                                                       |
| `select_fields` | array  |          | `["id","name","size","folder","webUrl"]` | A list of properties to include in the response. Use this to retrieve specific fields and reduce the response size. Common fields include: id, name, size, createdDateTime, lastModifiedDateTime, webUrl, folder, root. If not provided, all default properties are returned. |

***

### `One Drive Get Share`

Integration name: **ONE\_DRIVE\_GET\_SHARE**

Tool to access a shared DriveItem or collection of shared items using a shareId or encoded sharing URL. Returns the sharedDriveItem resource with metadata about the shared item and its owner. Use when you have a shareId or sharing token and need information about what was shared.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                         | Type    | Required | Example                                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                  |
| --------------------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `prefer_redeem`                   | string  |          | —                                                                                                                                                                            | Controls access redemption. 'redeemSharingLink' grants durable access to the item (permanent permission). 'redeemSharingLinkIfNecessary' grants access only for this request (temporary, no lasting permission). If not specified, no Prefer header is sent and no redemption occurs.                                                                                                                                        |
| `expand_children`                 | boolean |          | —                                                                                                                                                                            | If true and the shared item is a folder, expands the children collection to include child items in the response. Only applicable for folders.                                                                                                                                                                                                                                                                                |
| `share_id_or_encoded_sharing_url` | string  |     ✅    | `"u!aHR0cHM6Ly9jb21wb3NpbzIwMjQtbXkuc2hhcmVwb2ludC5jb20vOng6L2cvcGVyc29uYWwva2FyYW52YWlkeWFfYXV0aGtpdF9haS9JUURPT2NCVEx5RTFSWktVQkJGZ0YzZVZBVEliM2JmcUhzNFNqaVp5S1E1UTVSOA"` | A sharing token (shareId) as returned by the API or a properly encoded sharing URL. To encode a URL: base64 encode it, convert to unpadded base64url format (remove '=' padding, replace '/' with '\_', '+' with '-'), and prepend 'u!'. Example: 'u!aHR0cHM6Ly9jb21wb3NpbzIwMjQtbXkuc2hhcmVwb2ludC5jb20vOng6L2cvcGVyc29uYWwva2FyYW52YWlkeWFfYXV0aGtpdF9haS9JUURPT2NCVEx5RTFSWktVQkJGZ0YzZVZBVEliM2JmcUhzNFNqaVp5S1E1UTVSOA' |

***

### `One Drive Get Shared Items`

Integration name: **ONE\_DRIVE\_GET\_SHARED\_ITEMS**

Tool to retrieve items shared with the authenticated user (not items the user has shared with others). Returns files and folders shared with the current user; response value array may be empty if no items exist. Use webUrl field from results for clickable links to items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example | Description                                                                                                                                 |
| ---------------- | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `allow_external` | boolean |          | `true`  | Set to true to include items shared from external tenants. Defaults to false, which only returns items shared within the user's own tenant. |

***

### `One Drive Get Sharepoint List Items`

Integration name: **ONE\_DRIVE\_GET\_SHAREPOINT\_LIST\_ITEMS**

Tool to get the items (list items) within a specific SharePoint list on a site. Use when you need to retrieve data from a SharePoint list.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                                                                 | The maximum number of items to return in a single response. Used for pagination.                                                                                                                                                                                                                                                                                                                                          |
| `skip`    | integer |          | `20`                                                                                                 | The number of items to skip in the result set. Used for pagination.                                                                                                                                                                                                                                                                                                                                                       |
| `count`   | boolean |          | —                                                                                                    | If true, returns the total count of items in the @odata.count property.                                                                                                                                                                                                                                                                                                                                                   |
| `expand`  | string  |          | `"fields($select=Name,Color,Quantity)"`                                                              | A comma-separated list of relationships to expand, or 'fields($select=columnName1,columnName2)' to retrieve specific fields. For example, to get specific columns 'Name' and 'Color', use 'fields($select=Name,Color)'. SharePoint internal field names may differ from display names; call without expand first (or use 'fields' alone) to discover actual internal names before filtering or selecting specific fields. |
| `filter`  | string  |          | `"fields/Quantity lt 600"`                                                                           | An OData filter query to restrict the results. For example, to filter items where 'Quantity' is less than 600, use 'fields/Quantity lt 600'.                                                                                                                                                                                                                                                                              |
| `select`  | string  |          | `"id,name,fields"`                                                                                   | A comma-separated list of properties to include in the response. Often used in conjunction with '$expand=fields(select=...)'. For example, 'id,name,fields'.                                                                                                                                                                                                                                                              |
| `list_id` | string  |     ✅    | `"243bca4b-4e5e-45af-b37d-25f6135a740d"`                                                             | The unique identifier of the list within the SharePoint site.                                                                                                                                                                                                                                                                                                                                                             |
| `orderby` | string  |          | `"fields/Name asc"`                                                                                  | OData order by expression to sort results. For example, 'fields/Name asc' or 'fields/Quantity desc'.                                                                                                                                                                                                                                                                                                                      |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The unique identifier of the SharePoint site.                                                                                                                                                                                                                                                                                                                                                                             |

***

### `One Drive Get Site`

Integration name: **ONE\_DRIVE\_GET\_SITE**

Retrieves metadata for a specific SharePoint site by its ID. Use this action when you need to get details like display name, web URL, and creation/modification dates for a known SharePoint site.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                              | Description                                                                                    |
| --------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `expand`  | string |          | `"columns,lists"`                                                                                    | Comma-separated list of relationships to expand in the response. Example: columns,lists,drives |
| `select`  | string |          | `"id,displayName,webUrl"`                                                                            | Comma-separated list of properties to include in the response. Example: id,displayName,webUrl  |
| `site_id` | string |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | The unique identifier of the SharePoint site. This is the id property of the site resource.    |

***

### `One Drive Get Site Page Content`

Integration name: **ONE\_DRIVE\_GET\_SITE\_PAGE\_CONTENT**

Gets the content of a modern SharePoint site page. Use when you need to retrieve the details and content of a specific page within a SharePoint site.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                              | Description                                                                                                  |
| --------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| `expand`  | string |          | `"canvasLayout"`                                                                                     | Expands related entities. For example, use 'canvasLayout' to include the page's layout and web part content. |
| `select`  | string |          | `"id,name,title"`                                                                                    | Comma-separated list of properties to include in the response. Example: id,name,title                        |
| `page_id` | string |     ✅    | `"b575a07c-e9d9-4959-87a1-0e27ea020722"`                                                             | The unique identifier of the site page.                                                                      |
| `site_id` | string |     ✅    | `"contoso.sharepoint.com,2C712414-2D96-4DB6-9A7C-27B7F651699E,A5DB89B3-59A8-45B6-9278-A843A5088E11"` | The unique identifier of the SharePoint site.                                                                |

***

### `One Drive Get Special Folder`

Integration name: **ONE\_DRIVE\_GET\_SPECIAL\_FOLDER**

Tool to retrieve a special folder in OneDrive by name. Use when you need to access well-known folders (documents, photos, approot, etc.) without looking up by path or ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                        |
| --------------------- | ------ | :------: | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`             | string |          | `"user@example.com"`            | The user's ID, email, or 'me'. Defaults to 'me' (authenticated user). Required for S2S (app-only) auth.                                                                                                                                                                                                                                                                                                                            |
| `select_fields`       | array  |          | `["id","name","size","webUrl"]` | A list of properties to include in the response. Use this to retrieve specific fields and reduce the response size. For example, \['id', 'name', 'size']. If not provided, all default properties are returned.                                                                                                                                                                                                                    |
| `expand_relations`    | array  |          | `["children"]`                  | Navigation properties to expand in the response. Common values: 'children' (folder contents), 'thumbnails' (image previews). Other options: 'permissions', 'versions', 'activities', 'analytics', 'createdByUser', 'lastModifiedByUser', 'retentionLabel', 'subscriptions', 'workbook'.                                                                                                                                            |
| `special_folder_name` | string |     ✅    | `"documents"`                   | The name of the special folder to retrieve. Valid values: 'documents' (Documents folder), 'photos' (Photos folder), 'cameraroll' (Camera Roll Backup folder), 'approot' (application's personal folder), 'music' (Music folder), 'recordings' (Recordings folder - only available in OneDrive for Business/SharePoint). Special folders provide simple aliases to access well-known folders without needing the folder path or ID. |

***

### `One Drive Grant Share Permission`

Integration name: **ONE\_DRIVE\_GRANT\_SHARE\_PERMISSION**

Tool to grant users access to a link represented by a permission using an encoded sharing URL. Use when you need to give specific users access to a shared OneDrive or SharePoint resource.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example | Description                                                                                                                                                     |
| --------------------- | ------ | :------: | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `roles`               | array  |     ✅    | —       | Array of role strings specifying the access level to grant: 'read' for view-only access or 'write' for edit access.                                             |
| `recipients`          | array  |     ✅    | —       | Array of recipient objects with email addresses who will receive access to the shared link.                                                                     |
| `encoded_sharing_url` | string |     ✅    | —       | Base64url encoded sharing URL (must be prefixed with u!). Encode the sharing URL using base64url format and prefix with 'u!' to create the encoded sharing URL. |

***

### `One Drive Invite User To Item`

Integration name: **ONE\_DRIVE\_INVITE\_USER\_TO\_ITEM**

Tool to invite users or grant permissions to a specific item in a OneDrive drive. Use when you need to share a file or folder with other users and define their access level (e.g., read or write).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                      | Type    | Required | Example | Description                                                                                                                                                                                                                |
| ------------------------------ | ------- | :------: | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `roles`                        | array   |     ✅    | —       | Specifies the roles to be granted to the recipients. Options: 'read' (view-only), 'write' (edit), 'owner' (full control).                                                                                                  |
| `item_id`                      | string  |     ✅    | —       | The unique identifier of the drive item (file or folder).                                                                                                                                                                  |
| `message`                      | string  |          | —       | A plain text formatted message that is included in the sharing invitation. Maximum length 2000 characters.                                                                                                                 |
| `site_id`                      | string  |          | —       | The unique identifier of a SharePoint site. Use this if the item is in a SharePoint site's drive.                                                                                                                          |
| `user_id`                      | string  |          | —       | The unique identifier of a user. Use this if the item is in another user's drive that you have access to.                                                                                                                  |
| `drive_id`                     | string  |          | —       | The unique identifier of the drive. If not provided, the authenticated user's personal drive (me/drive) will be used.                                                                                                      |
| `group_id`                     | string  |          | —       | The unique identifier of a Microsoft 365 group. Use this if the item is in a group's drive.                                                                                                                                |
| `password`                     | string  |          | —       | The password set on the invite by the creator. Optional and OneDrive Personal only.                                                                                                                                        |
| `recipients`                   | array   |     ✅    | —       | A collection of recipients who will receive access and the sharing invitation.                                                                                                                                             |
| `require_sign_in`              | boolean |          | —       | Specifies whether the recipient of the invitation is required to sign-in to view the shared item. At least one of require\_sign\_in or send\_invitation must be true.                                                      |
| `send_invitation`              | boolean |          | —       | If true, a sharing link is sent to the recipient. Otherwise, a permission is granted directly without sending a notification.                                                                                              |
| `expiration_date_time`         | string  |          | —       | Specifies the dateTime after which the permission expires. ISO 8601 format. Example: "2023-12-31T23:59:59.000Z"                                                                                                            |
| `retain_inherited_permissions` | boolean |          | —       | Optional. If true (default), any existing inherited permissions are retained on the shared item when sharing this item for the first time. If false, all existing permissions are removed when sharing for the first time. |

***

### `One Drive List Activities`

Integration name: **ONE\_DRIVE\_LIST\_ACTIVITIES**

Tool to retrieve recent activities on the authenticated user's OneDrive. Use when you need to track recent changes or actions performed across the drive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                                                | Description                                                                                                                        |
| ---------- | ------- | :------: | ---------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `top`      | integer |          | `25`                                                                   | The maximum number of activities to return. Must be between 1 and 999.                                                             |
| `drive_id` | string  |          | `"b!sAYRj4psj0qqpjB3OOHdglZBMF5Nk0xPnR4Fc4pfinLYXvUneLOfS60CAyfNpnLO"` | The ID of the drive to list activities for. If not provided, the default drive of the authenticated user (/me/drive) will be used. |

***

### `One Drive List Bundles`

Integration name: **ONE\_DRIVE\_LIST\_BUNDLES**

Tool to retrieve a list of bundle resources from a specified drive. Bundles are collections of files (e.g., photo albums). Use when you need to list bundles in a drive.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                | Description                                                                                                                     |
| ------------ | ------- | :------: | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `25`                                                                   | The maximum number of items to return in a single page. Must be between 1 and 999.                                              |
| `expand`     | string  |          | `"thumbnails"`                                                         | Comma-separated list of relationships to expand (e.g., 'children'). Note: expand=children is not supported for listing bundles. |
| `filter`     | string  |          | `"bundle/album ne null"`                                               | OData filter query to filter bundles. For example, 'bundle/album ne null' to list only photo albums.                            |
| `select`     | string  |          | `"id,name,bundle"`                                                     | Comma-separated list of properties to include in the response (e.g., 'id,name,bundle').                                         |
| `orderby`    | string  |          | `"name desc"`                                                          | A comma-separated list of properties to order the results by, optionally followed by 'asc' or 'desc' (e.g., 'name desc').       |
| `drive_id`   | string  |     ✅    | `"b!sAYRj4psj0qqpjB3OOHdglZBMF5Nk0xPnR4Fc4pfinLYXvUneLOfS60CAyfNpnLO"` | The unique identifier of the drive to list bundles from.                                                                        |
| `skip_token` | string  |          | `"xxxxxxxx"`                                                           | A token used to retrieve the next page of results.                                                                              |

***

### `One Drive List Drives`

Integration name: **ONE\_DRIVE\_LIST\_DRIVES**

Tool to retrieve a list of Drive resources available to the authenticated user, or for a specific user, group, or site. Use when you need to find out what drives are accessible. Returns only drives within the signed-in account's permission scope; missing drives indicate insufficient permissions or different tenant scope. Results are paginated — follow skip\_token across all pages to avoid missing drives. Returned drives represent document libraries and may not reflect full SharePoint site structure; use SHARE\_POINT\_GET\_SITE\_COLLECTION\_INFO or SHARE\_POINT\_SEARCH\_QUERY for broader coverage. Use driveType and webUrl to distinguish personal, system, and SharePoint-backed drives.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                         |
| ------------ | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `25`                                                                                                 | The maximum number of items to return in a single page. Must be between 1 and 999.                                                                                                                                                  |
| `expand`     | string  |          | `"root,list"`                                                                                        | Comma-separated list of relationships to expand (e.g., "root,list").                                                                                                                                                                |
| `select`     | string  |          | `"id,name,driveType"`                                                                                | Comma-separated list of properties to include in the response (e.g., "id,name,driveType").                                                                                                                                          |
| `orderby`    | string  |          | `"name desc"`                                                                                        | A comma-separated list of properties to order the results by, optionally followed by "asc" or "desc" (e.g., "name desc").                                                                                                           |
| `site_id`    | string  |          | `"contoso.sharepoint.com,2C712604-131D-49FC-857B-AF2775FC24E3,2D1C721E-289F-412A-96E9-ADD9707C0167"` | The ID of the site to list drives for. If provided, group\_id and user\_id should not be used.                                                                                                                                      |
| `user_id`    | string  |          | `"48d31887-5fad-4d73-a9f5-3c356e68a038"`                                                             | The ID of the user to list drives for. If provided, group\_id and site\_id should not be used. If none of group\_id, site\_id, or user\_id are provided, the drives for the current authenticated user (/me/drives) will be listed. |
| `group_id`   | string  |          | `"80957564-4f36-480e-a079-99963a083854"`                                                             | The ID of the group to list drives for. If provided, site\_id and user\_id should not be used.                                                                                                                                      |
| `skip_token` | string  |          | `"xxxxxxxx"`                                                                                         | A token used to retrieve the next page of results. Results may be paginated; retrieve and pass this token repeatedly until no token is returned to ensure all drives are fetched.                                                   |

***

### `One Drive List Folder Children`

Integration name: **ONE\_DRIVE\_LIST\_FOLDER\_CHILDREN**

List the direct children (files/folders) of a OneDrive/SharePoint folder by DriveItem ID or path. Returns reliable pagination tokens/nextLink for large folders. Use when you need to enumerate folder contents deterministically, find companion artifacts (e.g., .vtt/.docx files), or browse within a known folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `top`            | integer |          | `50`                                                                                                 | Maximum number of items to return per page. Default is 200.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `expand`         | array   |          | `["thumbnails"]`                                                                                     | List of relationships to expand in the response (e.g., \['thumbnails', 'permissions']). Use this to include related resources inline.                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `select`         | array   |          | `["id","name","webUrl","size","lastModifiedDateTime"]`                                               | Comma-separated list of properties to include in the response (e.g., \['id', 'name', 'size']).                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `orderby`        | string  |          | `"name"`                                                                                             | Sort results by specified properties (e.g., 'name', 'lastModifiedDateTime desc').                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `site_id`        | string  |          | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | If provided, uses /sites/{site-id}/drive/... route for SharePoint sites.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `drive_id`       | string  |          | `"b!C378D127A8A967E6"`                                                                               | The ID of the drive. Required unless using 'use\_me\_drive' or 'site\_id' is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `next_link`      | string  |          | —                                                                                                    | Full @odata.nextLink URL from a previous response for pagination continuation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `skip_token`     | string  |          | —                                                                                                    | A $skipToken value from a previous response for pagination continuation. Alternative to 'next\_link'.                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `folder_path`    | string  |          | `"/"`                                                                                                | Path relative to the drive root (e.g., '/', '/Recordings', '/Documents/Project'). Use '/' to list the root folder's children. Alternative to 'folder\_item\_id'.                                                                                                                                                                                                                                                                                                                                                                                                   |
| `use_me_drive`   | boolean |          | —                                                                                                    | If true, uses /me/drive/... route for the authenticated user's personal OneDrive.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `folder_item_id` | string  |          | `"01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K"`                                                               | The ID of the folder (DriveItem) to list children from. Supports both simple item IDs (e.g., '01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K') and drive-qualified item IDs with '!' separator (e.g., 'driveId!itemId' format commonly returned from search results or shared item listings). When a drive-qualified ID is detected, the drive portion is automatically extracted and used in the API request. Note: The 'driveId!itemId' pattern is based on observed OneDrive API behavior and may not be explicitly documented. Required unless 'folder\_path' is provided. |

***

### `One Drive List Item Activities`

Integration name: **ONE\_DRIVE\_LIST\_ITEM\_ACTIVITIES**

Tool to list recent activities for a specific item in a OneDrive drive. Use when you need to track changes or actions performed on a file or folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                                | Description                                                                                                                                                              |
| ---------- | ------- | :------: | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `top`      | integer |          | —                                      | Show only the first n items.                                                                                                                                             |
| `skip`     | integer |          | —                                      | Skip the first n items for pagination.                                                                                                                                   |
| `expand`   | array   |          | —                                      | List of relationships to expand in the response (e.g., \['driveItem', 'listItem']). Use this to include related resources inline.                                        |
| `filter`   | string  |          | —                                      | OData filter expression to filter activities (e.g., "activityDateTime gt 2023-01-01T00:00:00Z"). Allows filtering by date ranges or other criteria.                      |
| `select`   | array   |          | —                                      | Comma-separated list of properties to include in the response (e.g., \['id', 'activityDateTime', 'actor']). Reduces payload size by returning only specified properties. |
| `item_id`  | string  |     ✅    | `"01BYE5RZZ5W2W6Z2X2Y7YF2X2Y7YF2X2Y7"` | The unique identifier of the driveItem.                                                                                                                                  |
| `orderby`  | string  |          | —                                      | Sort results by specified properties (e.g., 'activityDateTime desc' to show newest first, 'activityDateTime' for oldest first).                                          |
| `drive_id` | string  |     ✅    | `"b!C1zZc0a2F0K2Y8P0Z6X2Uw"`           | The unique identifier of the drive.                                                                                                                                      |

***

### `One Drive List Root Drive Changes`

Integration name: **ONE\_DRIVE\_LIST\_ROOT\_DRIVE\_CHANGES**

Tool to list changes in the root of the user's primary drive using a delta token. Use when you need to track file and folder modifications, additions, or deletions in the main OneDrive directory. First call without `token` returns all current items plus an `@odata.deltaLink`; store that token and pass it on subsequent calls to retrieve only incremental changes. Losing the deltaLink token forces a full resync. Responses include deleted items (check `deleted` property) and the root item itself alongside files and folders.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type    | Required | Example                            | Description                                                                                                                                                                                                                                                                                                 |
| ---------- | ------- | :------: | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`      | integer |          | `50`                               | Maximum number of items to return in a single response. Useful for pagination and controlling response size.                                                                                                                                                                                                |
| `token`    | string  |          | `"latest"`                         | Either a raw token string or a full URL from @odata.nextLink/@odata.deltaLink. Accepts: raw token value, full pagination URL, or 'latest' to get a token for future calls. Omit to get all current items. Loop until `@odata.nextLink` is absent to get complete results; default page size is \~200 items. |
| `expand`   | string  |          | `"children"`                       | Comma-separated list of relationships to expand in the response.                                                                                                                                                                                                                                            |
| `select`   | string  |          | `"id,name,folder,file"`            | Comma-separated list of DriveItem properties to include in the response. Use this to retrieve specific fields and reduce response size.                                                                                                                                                                     |
| `drive_id` | string  |          | `"b!example-drive-id-placeholder"` | The ID of the drive to track changes for. If not provided, will attempt to use the authenticated user's default drive (requires delegated auth). For application auth, this parameter is required.                                                                                                          |

***

### `One Drive List Share Permissions`

Integration name: **ONE\_DRIVE\_LIST\_SHARE\_PERMISSIONS**

Tool to retrieve permission details for a shared OneDrive or SharePoint item using a share ID. Use when you have an encoded sharing URL and need to check the permission level, password protection, and access details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                                        | Description                                                                                                                                                                                         |
| ---------------------- | ------ | :------: | -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `shared_drive_item_id` | string |     ✅    | `"u!aHR0cHM6Ly9leGFtcGxlLnNoYXJlcG9pbnQuY29tL3BsYWNlaG9sZGVy"` | The share ID (encoded sharing URL in format u! or share token) to retrieve permission for. This is typically an encoded sharing URL prefixed with 'u!' or a shareId token from a previous API call. |

***

### `One Drive List Sharepoint List Items Delta`

Integration name: **ONE\_DRIVE\_LIST\_SHAREPOINT\_LIST\_ITEMS\_DELTA**

Tool to track changes to items in a SharePoint list using a delta query. Use when you need to get newly created, updated, or deleted list items without performing a full read of the entire item collection.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                              | Description                                                                                                                                                                             |
| --------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                                                                 | Maximum number of items to return in a single response.                                                                                                                                 |
| `token`   | string  |          | `"1230919asd190410jlka"`                                                                             | If unspecified or empty, enumerates the current state. If 'latest', returns an empty response with the latest delta token. If a previous delta token, returns changes since that token. |
| `expand`  | string  |          | `"fields($select=ColumnA,ColumnB)"`                                                                  | Comma-separated list of relationships to expand. Use 'fields($select=ColumnA,ColumnB)' format for field selection.                                                                      |
| `select`  | string  |          | `"id,name,lastModifiedDateTime"`                                                                     | Comma-separated list of listItem properties to return.                                                                                                                                  |
| `list_id` | string  |     ✅    | `"22e03ef3-6ef4-424d-a1d3-92a337807c30"`                                                             | The unique identifier of the list within the site.                                                                                                                                      |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D2244C3-251A-49EA-93A8-39E1C3A060FE"` | SharePoint site ID in composite format: hostname,site-collection-guid,site-guid (three comma-separated parts).                                                                          |

***

### `One Drive List Site Columns`

Integration name: **ONE\_DRIVE\_LIST\_SITE\_COLUMNS**

Tool to list all column definitions for a SharePoint site. Use this when you need to retrieve the schema or structure of columns within a specific SharePoint site.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                              | Description                                                                                                                                               |
| --------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | —                                                                                                    | The maximum number of items to return.                                                                                                                    |
| `skip`    | integer |          | —                                                                                                    | The number of items to skip in the result set. Used for pagination.                                                                                       |
| `count`   | boolean |          | —                                                                                                    | If true, returns the total count of items in the @odata.count property.                                                                                   |
| `expand`  | string  |          | `"sourceColumn"`                                                                                     | Comma-separated list of related resources to expand in the response.                                                                                      |
| `filter`  | string  |          | `"startswith(displayName,'Custom')"`                                                                 | OData filter expression to apply to the results.                                                                                                          |
| `select`  | string  |          | `"id,name,displayName"`                                                                              | Comma-separated list of properties to include in the response.                                                                                            |
| `orderby` | string  |          | `"displayName asc"`                                                                                  | Comma-separated list of properties used to sort the results.                                                                                              |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,2C712604-133D-4A7C-9194-F53CE4C952A2,A704AEF5-C2C0-43C3-A3D8-9F55A73A02E2"` | The unique identifier of the SharePoint site. Example: `contoso.sharepoint.com,2C712604-133D-4A7C-9194-F53CE4C952A2,A704AEF5-C2C0-43C3-A3D8-9F55A73A02E2` |

***

### `One Drive List Site Items Delta`

Integration name: **ONE\_DRIVE\_LIST\_SITE\_ITEMS\_DELTA**

Tool to track changes to DriveItems in the default document library of a SharePoint site. Use when you need to get a list of items that have been added, modified, or deleted since a previous state or to get an initial enumeration of all items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                                                                                                                      | Description                                                                                                                                                                                                             |
| --------- | ------- | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `50`                                                                                                                                                                                         | Maximum number of items to return in a single response. Useful for pagination and controlling response size.                                                                                                            |
| `token`   | string  |          | `"https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com,2C002417-A74E-4F5E-8786-3748AFF6941A,2C22A44A-725F-4959-8B9E-8ABA2197E7A4/drive/root/delta?$skiptoken=1230919asd190410jlka"` | A token used to retrieve a specific page of results or to get changes since a previous state. Can be 'latest' to get the most recent delta token without items, a deltaLink URL, or a timestamp (YYYY-MM-DDTHH:MM:SSZ). |
| `expand`  | string  |          | `"children"`                                                                                                                                                                                 | Comma-separated list of relationships to expand in the response.                                                                                                                                                        |
| `select`  | string  |          | `"id,name,folder,file"`                                                                                                                                                                      | Comma-separated list of DriveItem properties to include in the response. Use this to retrieve specific fields and reduce response size.                                                                                 |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,2C002417-A74E-4F5E-8786-3748AFF6941A,2C22A44A-725F-4959-8B9E-8ABA2197E7A4"`                                                                                         | The unique identifier of the SharePoint site.                                                                                                                                                                           |

***

### `One Drive List Site Lists`

Integration name: **ONE\_DRIVE\_LIST\_SITE\_LISTS**

Tool to list all lists under a specific SharePoint site. Use when you need to enumerate lists within a known site. Returns only Microsoft Graph-supported lists — internal/system lists are excluded, so results may be a strict subset of all site lists (e.g., 13 returned where 108 exist). Results are in the `data.value` array. IMPORTANT: Only works with organizational Microsoft 365 accounts (Azure AD/Entra ID). NOT supported for personal Microsoft accounts (MSA/Outlook.com/Hotmail). Personal OneDrive users cannot access SharePoint sites through this endpoint.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                           |
| --------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | —                                                                                                    | The maximum number of items to return.                                                                                                                                                                                                                                                                                                                                                |
| `expand`  | string  |          | `"columns,items"`                                                                                    | Comma-separated list of relationships to expand in the response. Example: columns,items                                                                                                                                                                                                                                                                                               |
| `filter`  | string  |          | `"startswith(name,'Doc')"`                                                                           | OData filter expression. Example: startswith(name,'Doc')                                                                                                                                                                                                                                                                                                                              |
| `select`  | string  |          | `"id,name,list"`                                                                                     | Comma-separated list of properties to include in the response. Example: id,name,list                                                                                                                                                                                                                                                                                                  |
| `orderby` | string  |          | `"name asc"`                                                                                         | OData order by expression. Example: name asc                                                                                                                                                                                                                                                                                                                                          |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D4B0860-D7DE-419B-88E6-5866AF240000"` | SharePoint site ID in the required composite format: 'hostname,site-collection-id,web-id' (e.g., 'contoso.sharepoint.com,2C712604-1370-44E7-A1F5-426573FDA80A,2D4B0860-D7DE-419B-88E6-5866AF240000'). Must contain exactly two commas separating three parts: (1) SharePoint hostname, (2) site collection GUID, (3) web GUID. Only works with organizational Microsoft 365 accounts. |

***

### `One Drive List Site Subsites`

Integration name: **ONE\_DRIVE\_LIST\_SITE\_SUBSITES**

Tool to list all subsites of a SharePoint site. Use when you need to retrieve a collection of subsites for a given parent site. IMPORTANT: This action only works with organizational Microsoft 365 accounts (Azure AD/Entra ID accounts). It is NOT supported for personal Microsoft accounts (MSA/Outlook.com/Hotmail accounts). Personal OneDrive users cannot access SharePoint sites through this endpoint. An empty `value` array in the response means the site has no subsites, not a failure.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                     |
| --------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | —                                                                                                    | The maximum number of items to return.                                                                                                                                                                                                          |
| `expand`  | string  |          | `"drive"`                                                                                            | Comma-separated list of relationships to expand in the response.                                                                                                                                                                                |
| `filter`  | string  |          | `"startswith(name,'Project')"`                                                                       | OData filter expression. Example: startswith(name,'Project')                                                                                                                                                                                    |
| `select`  | string  |          | `"id,name,webUrl"`                                                                                   | Comma-separated list of properties to include in the response. Example: id,name,webUrl                                                                                                                                                          |
| `orderby` | string  |          | `"name asc"`                                                                                         | OData order by expression. Example: name asc, createdDateTime desc                                                                                                                                                                              |
| `site_id` | string  |     ✅    | `"contoso.sharepoint.com,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740"` | The unique identifier of the SharePoint site for which to list subsites. Must be the full composite Graph ID in the format `hostname,siteCollectionId,siteId`; partial or malformed IDs may silently return empty results rather than an error. |

***

### `One Drive List Subscriptions`

Integration name: **ONE\_DRIVE\_LIST\_SUBSCRIPTIONS**

Tool to list the current subscriptions for the authenticated user or app. Use this to retrieve details of existing webhook subscriptions. Results may span multiple drives and resources; filter client-side by resource URL or type to narrow to a specific scope. An empty `value` array means no subscriptions exist, not a failed call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `One Drive Move Item`

Integration name: **ONE\_DRIVE\_MOVE\_ITEM**

Tool to move a file or folder to a new parent folder in OneDrive. Use when you need to reorganize your files or folders by changing their location. You can optionally rename the item during the move. If a file with the same name exists at the destination, the API returns `nameAlreadyExists`; use the `name` parameter to provide a unique name or resolve the conflict beforehand.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                                                                    |
| ----------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`            | string |          | `"new-document.docx"`                                                                                | The new name for the DriveItem. If not provided, the item retains its original name. Must not contain illegal filename characters; invalid characters cause an `invalidRequest` error.                                                                                                                                                                                         |
| `itemId`          | string |     ✅    | `"01BYE5RZZ272Y2AM3L22L22Z2Y2Y2Y2Y2Y"`                                                               | The unique identifier of the file or folder (DriveItem) to be moved.                                                                                                                                                                                                                                                                                                           |
| `siteId`          | string |          | `"contoso.sharepoint.com,2C712604-132D-4AC7-A58A-9919A6B0A862,D8A48A4A-274E-4494-8B2A-40E71A6E1D8A"` | The unique identifier of the site if the item is in a SharePoint site. Mutually exclusive with drive\_id, group\_id, and user\_id.                                                                                                                                                                                                                                             |
| `userId`          | string |          | `"024d423a-35ef-450e-9317-5669101788f0"`                                                             | The unique identifier of the user if accessing another user's drive. Mutually exclusive with drive\_id, group\_id, and site\_id.                                                                                                                                                                                                                                               |
| `driveId`         | string |          | `"b!C1b2A3d4E5f6G7h8I9j0K1l2M3n4O5p6"`                                                               | The unique identifier of the Drive that contains the item. If not specified, it defaults to the user's personal drive (`/me/drive`).                                                                                                                                                                                                                                           |
| `groupId`         | string |          | `"024d423a-35ef-450e-9317-5669101788f0"`                                                             | The unique identifier of the group if the item is in a group drive. Mutually exclusive with drive\_id, site\_id, and user\_id.                                                                                                                                                                                                                                                 |
| `description`     | string |          | `"Moved project proposal document."`                                                                 | The new description for the drive item. If not provided, the item's description is not changed.                                                                                                                                                                                                                                                                                |
| `parentReference` | object |     ✅    | `{"id":"01BYE5RZZ272Y2AM3L22L22Z2Y2Y2Y2Y2Y"}`                                                        | An object specifying the destination folder. Must be provided as an object/dictionary with an 'id' field containing the folder's unique identifier. Format: {"id": "", "driveId": ""} (driveId is optional). Example: {"id": "01BYE5RZZ272Y2AM3L22L22Z2Y2Y2Y2Y2Y"}. Note: Folder names are not accepted - use the folder's unique ID obtained from listing or searching items. |

***

### `One Drive Onedrive Create Folder`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_CREATE\_FOLDER**

Creates a new folder in the user's OneDrive, automatically renaming on conflict, optionally within a specified parent\_folder (by ID or full path from root) which, if not the root, must exist and be accessible.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example              | Description                                                                                                                                                                                                                                                                                                    |
| --------------- | ------ | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`          | string |     ✅    | —                    | The desired name for the new folder (also accepts 'folder\_name' as an alias). If a folder with this name already exists in the specified parent\_folder, the new folder will be automatically renamed (e.g., 'New Folder' might become 'New Folder 1'). Examples: \['Annual Reports', 'Client Meeting Notes'] |
| `user_id`       | string |          | `"user@example.com"` | The user's ID, email, or 'me'. Defaults to 'me' (authenticated user). Required for S2S (app-only) auth.                                                                                                                                                                                                        |
| `description`   | string |          | —                    | Optional description for the folder. Provides a user-visible description of the folder. Examples: \['Project documents for Q1 2024', 'Meeting notes archive']                                                                                                                                                  |
| `parent_folder` | string |          | —                    | ID or full path of the parent folder for the new folder. Paths must start from the root (e.g., '/Documents/Reports'). If an ID is provided, it refers to an existing folder's unique ID. Examples: \['/Projects/Alpha', 'folder\_id\_12345ABC', '/']                                                           |

***

### `One Drive Onedrive Create Text File`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_CREATE\_TEXT\_FILE**

Creates a new plain-text file with specified content in the authenticated user's personal OneDrive, using either the folder's unique ID or its absolute path relative to the user's OneDrive root (paths are automatically resolved to IDs); note that OneDrive may rename or create a new version if the filename already exists. All files are written as plain text regardless of extension — specifying .docx or .xlsx does not produce a true Office document. This action only works with the user's personal OneDrive (/me/drive) and does not support SharePoint document libraries or shared drives.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type   | Required | Example                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------------- | ------ | :------: | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`              | string |     ✅    | `"Annual Report 2023.txt"`                    | The desired name for the new text file, including its extension (e.g., 'report.txt', 'notes.log'). Also accepts 'file\_name' as an alias.                                                                                                                                                                                                                                                                    |
| `folder`            | string |          | `"/Documents/Projects"`                       | The folder within the user's personal OneDrive where the new text file will be created. Use '/' for root, a path like '/Documents/Projects' (relative to OneDrive root), a folder name like 'MyFolder' (treated as '/MyFolder'), or a valid folder ID. Note: Paths are resolved against the user's personal OneDrive (/me/drive/root) only and cannot target SharePoint document libraries or shared drives. |
| `content`           | string |     ✅    | `"This is the content of the new text file."` | The plain text content to be written into the new file. For very large text bodies, the request may fail or truncate; split large content across multiple files if needed.                                                                                                                                                                                                                                   |
| `user_id`           | string |          | `"user_principal_name_or_id"`                 | The user's ID or the literal 'me' to represent the currently authenticated user.                                                                                                                                                                                                                                                                                                                             |
| `conflict_behavior` | string |          | `"fail"`                                      | How to handle conflicts when a file with the same name already exists. 'fail' (default) returns an error if the file exists, 'replace' overwrites the existing file, 'rename' creates a new file with an incremented name (e.g., 'file 1.txt').                                                                                                                                                              |

***

### `One Drive Onedrive Find File`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_FIND\_FILE**

Non-recursively finds an item (file or folder) in a specified OneDrive folder; if `folder` is provided as a path, it must actually exist. Results in large folders may be paginated via `@odata.nextLink`; iterate all pages to avoid missing files. For searches where the subfolder is unknown, use ONE\_DRIVE\_SEARCH\_ITEMS instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                  | Description                                                                                                                                                                                                         |
| ----------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`            | string |     ✅    | `"QuarterlyReport.docx"` | The exact name of the file or folder to find within the specified `folder`. Multiple items may match common names; use `response_detail='full'` and disambiguate by path, size, or last-modified timestamp.         |
| `folder`          | string |          | `"/Documents/Projects"`  | The unique identifier (ID) or absolute path of the OneDrive folder for the search. For the root folder, use '/'. Paths must start with '/'. A non-existent folder silently returns no results rather than an error. |
| `user_id`         | string |          | `"user_guid_example"`    | The unique identifier of the user (e.g., a GUID) or the alias 'me' to represent the currently authenticated user. This determines whose OneDrive will be accessed.                                                  |
| `response_detail` | string |          | —                        | Level of detail in the response. 'minimal' (default) returns only essential properties (id, name, webUrl). 'full' returns complete metadata for each found item.                                                    |

***

### `One Drive Onedrive Find Folder`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_FIND\_FOLDER**

Finds folders by name within an accessible parent folder in OneDrive, or lists all its direct child folders if no name is specified. Search is non-recursive: only immediate children of `folder` are checked, not deeper hierarchy levels.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                                | Description                                                                                                                                                                                                                                                                                                                                       |
| ------------ | ------- | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`        | integer |          | `50`                                                   | Maximum number of items to return in a single request. When specified, auto-pagination is disabled and only one page is returned. Use with skip\_token to manually paginate through results.                                                                                                                                                      |
| `name`       | string  |          | `"Annual Reports"`                                     | Exact name of the folder to find. If omitted, all direct child folders of the parent `folder` are returned.                                                                                                                                                                                                                                       |
| `expand`     | string  |          | `"thumbnails"`                                         | Comma-separated list of relationships to expand in the response (e.g., 'thumbnails', 'children'). See Microsoft Graph API documentation for supported expand properties.                                                                                                                                                                          |
| `folder`     | string  |          | `"/Documents/Projects"`                                | Path (e.g., '/My Files/Work', '/' for root) or unique ID of the parent folder where child folders are searched.                                                                                                                                                                                                                                   |
| `select`     | array   |          | `["id","name","webUrl","size","lastModifiedDateTime"]` | List of properties to include in the response (e.g., \['id', 'name', 'size']). Supports standard driveItem properties like id, name, webUrl, size, createdDateTime, lastModifiedDateTime, folder, etc. Note: 'folder' field is automatically included to enable folder identification, and 'name' is auto-included when filtering by folder name. |
| `orderby`    | string  |          | `"name"`                                               | Sort results by specified properties (e.g., 'name', 'lastModifiedDateTime desc').                                                                                                                                                                                                                                                                 |
| `user_id`    | string  |          | `"user@example.com"`                                   | User's unique identifier (e.g., email, UPN) or 'me' for the authenticated user, specifying the OneDrive account.                                                                                                                                                                                                                                  |
| `skip_token` | string  |          | —                                                      | A $skipToken value from a previous response for pagination continuation. When specified, auto-pagination is disabled and only the requested page is returned.                                                                                                                                                                                     |

***

### `One Drive Onedrive List Items`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_LIST\_ITEMS**

Retrieves all files and folders as `driveItem` resources from the root of a specified user's OneDrive, automatically handling pagination. Non-recursive: returns only root-level items; subfolder contents require separate calls. Results may include `remoteItem` pointers (shared items from other drives) — use `remoteItem.driveId` and `remoteItem.id` for those in downstream calls. Distinguish files from folders by presence of `file` or `folder` property. Always use `id` values returned by this tool directly; never construct item IDs manually. Items may be absent from results due to permission restrictions, not drive absence.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                            | Description                                                                                                                                                                                 |
| --------- | ------- | :------: | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `top`     | integer |          | `"20"`                             | Maximum items per API request, setting the batch size; the action automatically handles pagination to fetch all items. The Microsoft Graph API may limit this (e.g., to 999).               |
| `select`  | array   |          | `"[\"id\", \"name\", \"webUrl\"]"` | Specifies `driveItem` properties to return. If omitted or empty, default properties are returned. Refer to Microsoft Graph API documentation for a complete list of `driveItem` properties. |
| `user_id` | string  |          | `"me"`                             | User's unique identifier (e.g., '<user@example.com>', object ID) or 'me' for the authenticated user's OneDrive.                                                                             |

***

### `One Drive Onedrive Upload File`

Integration name: **ONE\_DRIVE\_ONEDRIVE\_UPLOAD\_FILE**

Uploads a file to a specified OneDrive folder, automatically creating the destination folder if it doesn't exist, renaming on conflict, and supporting large files via chunking.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter           | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                                  |
| ------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `file`              | object  |     ✅    | —                                                                                                    | The file to be uploaded, including its name and access to its binary content.                                                                                                                                                                                                                                                |
| `folder`            | string  |          | `"/Documents/Projects"`                                                                              | Destination folder path from root (e.g., '/Documents/Reports') or a unique folder ID. If the folder path doesn't exist, it will be created automatically (including any intermediate folders in the path).                                                                                                                   |
| `site_id`           | string  |          | `"contoso.sharepoint.com,024d491a-4d09-4194-ae1f-7413535507dc,024d491a-4d09-4194-ae1f-7413535507dc"` | The unique identifier of the SharePoint site to upload to. If provided, uses /sites/{siteId}/drive. Mutually exclusive with drive\_id.                                                                                                                                                                                       |
| `user_id`           | string  |          | `"me"`                                                                                               | User ID (e.g., user\_principal\_name, unique GUID) or 'me' for the authenticated user, determining the target OneDrive.                                                                                                                                                                                                      |
| `drive_id`          | string  |          | `"b!C3NkF4b2GU2msLpLqgZ4oYd_S4P0S6_FhG0bS-WpTkYwGVc_FmBYSZ7d0x_ZJpG-"`                               | The unique identifier of the drive to upload to. If not provided, uses the default drive of the user\_id. Mutually exclusive with site\_id.                                                                                                                                                                                  |
| `description`       | string  |          | `"Project proposal for Q1 2024"`                                                                     | A user-visible description of the file. Only supported on OneDrive Personal.                                                                                                                                                                                                                                                 |
| `defer_commit`      | boolean |          | —                                                                                                    | If true, the final file creation is deferred until an explicit completion request is made. Useful for large files where you want to control when the upload is finalized.                                                                                                                                                    |
| `if_match_etag`     | string  |          | `"aQzlGRDlBMjdBRDQ5RUVCOTE3LjA"`                                                                     | An ETag value to prevent lost updates. If provided, the upload will only proceed if the folder/parent's ETag matches this value. Returns 412 error if it doesn't match.                                                                                                                                                      |
| `file_system_info`  | object  |          | —                                                                                                    | File system information on client.                                                                                                                                                                                                                                                                                           |
| `conflict_behavior` | string  |          | `"rename"`                                                                                           | How to handle file name conflicts. 'rename' automatically renames the file if it exists (default), 'fail' returns an error, 'replace' overwrites the existing file. When renamed, the actual filename in the response may differ (e.g., suffixed with a number); use the response `id` or `webUrl` for follow-up operations. |

***

### `One Drive Preview Drive Item`

Integration name: **ONE\_DRIVE\_PREVIEW\_DRIVE\_ITEM**

Generates or retrieves a short-lived, permission-bound embeddable URL for a preview of a specific item. URLs expire and must be regenerated per session — do not cache. Use when you need to display a temporary preview of a file.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                                                                              | Description                                                                                                                           |
| ---------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `page`     | —      |          | `"1"`                                                                                                | Optional. Page number of document to start at, if applicable. Specified as string for future use cases around file types such as ZIP. |
| `zoom`     | number |          | `0.5`                                                                                                | Optional. Zoom level to start at, if applicable.                                                                                      |
| `item_id`  | string |     ✅    | `"01BYE56RBCN4TCN3ORBZZ3S22LMR4LKL2A"`                                                               | The unique identifier of the DriveItem.                                                                                               |
| `site_id`  | string |          | `"contoso.sharepoint.com,2C712CB0-1531-4134-855A-67A093E71074,5A503C24-A59A-407C-BD5A-D392B8F7F000"` | The unique identifier of the Site. Provide if the item is in a SharePoint site.                                                       |
| `user_id`  | string |          | `"024d4213-a6f0-4997-9010-217011398186"`                                                             | The unique identifier of the User. Provide if the item is in another user's drive.                                                    |
| `drive_id` | string |          | `"b!C1zX0j7x00G2vQj2foDUXn4xYp_XFVNKrjYpyIKs1x8"`                                                    | The unique identifier of the Drive. If not provided, the request will be made to the current user's drive.                            |
| `group_id` | string |          | `"024d4213-a6f0-4997-9010-217011398186"`                                                             | The unique identifier of the Group. Provide if the item is in a group drive.                                                          |
| `share_id` | string |          | `"s!Aln-sA4j5UeNpX1x92bAbS1bXn0Z"`                                                                   | The unique identifier of the shared item. Provide if the item is accessed via a share link.                                           |

***

### `One Drive Restore Drive Item`

Integration name: **ONE\_DRIVE\_RESTORE\_DRIVE\_ITEM**

Tool to restore a deleted OneDrive driveItem (file or folder) from the recycle bin. Use when you need to recover a deleted item to its original location or to a specified parent folder, optionally renaming it during restoration. IMPORTANT LIMITATION: This API is ONLY available for OneDrive Personal accounts. It does NOT work with OneDrive for Business or SharePoint. For Business/SharePoint accounts, use the SharePoint REST API endpoints (/\_api/web/recyclebin) instead.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter             | Type   | Required | Example                                                                | Description                                                                                                                                                                                                                                                                       |
| --------------------- | ------ | :------: | ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                | string |          | `"restored-document.docx"`                                             | (Optional) The new name for the restored item. If not provided, the item will be restored with its original name. This is useful if you want to rename the item during the restore process or if an item with the same name already exists in the destination.                    |
| `item_id`             | string |     ✅    | `"01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK"`                                 | The unique identifier of the deleted DriveItem (file or folder) to restore. This item must currently be in the OneDrive recycle bin. The ID can be obtained from deleted items listing or from the item before deletion.                                                          |
| `drive_id`            | string |          | `"b!C3NkF4b2GU2msLpLqgZ4oYd_S4P0S6_FhG0bS-WpTkYwGVc_FmBYSZ7d0x_ZJpG-"` | The unique identifier of the Drive containing the deleted item. Required when using application authentication. If not provided with delegated authentication, uses the authenticated user's default drive.                                                                       |
| `parent_reference_id` | string |          | `"01BYE5RZZ272Y2AM3L22L22Z2Y2Y2Y2Y2Y"`                                 | (Optional) The unique identifier of the parent folder where the item should be restored. If not provided, the item will be restored to its original parent location. This is useful when you want to restore the item to a different folder than where it was originally located. |

***

### `One Drive Search Items`

Integration name: **ONE\_DRIVE\_SEARCH\_ITEMS**

Search OneDrive for files and folders by keyword. Searches filenames, metadata, and file content to find matching items. Use when you need to find specific files based on keywords, file types, or content. Supports filtering, sorting, and pagination. Results are mixed files and folders — filter client-side using file vs folder properties. Disambiguate similarly named items using parentReference.path, lastModifiedDateTime, and size before passing item IDs downstream. Newly created or recently moved files may not appear due to indexing delays; fall back to ONE\_DRIVE\_LIST\_FOLDER\_CHILDREN if expected items are missing. No server-side date filtering — apply lastModifiedDateTime/createdDateTime filtering in your own logic. HTTP 429 responses include a Retry-After header; use exponential backoff.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                    | Type    | Required | Example                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`                          | string  |     ✅    | `"Contoso Project"`        | The query text used to search for items. Values are matched across filenames, metadata, and file content. This is a simple keyword-based search only - NOT KQL (Keyword Query Language). IMPORTANT: (1) KQL operators like 'folder:', 'file:', 'content:', 'filetype:' are NOT supported by this endpoint and will be treated as literal text search. Use plain keywords instead (e.g., 'shared documents' not 'folder:shared'). (2) Path-based filtering syntax (e.g., 'path:/folder') is NOT supported and will be transformed to a keyword search. (3) Wildcard characters (\* and ?) are NOT supported and will be automatically removed - use file extension keywords instead (e.g., 'mp4' instead of '\*.mp4'). To search within a specific folder, use ONE\_DRIVE\_LIST\_FOLDER\_CHILDREN. |
| `top`                        | integer |          | —                          | The maximum number of items to return in a single page. Default is 200.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `expand`                     | string  |          | `"children"`               | A comma-separated list of relationship names to expand and include in the response. For driveItem resources, you can expand relationships like 'children' to get child items, 'thumbnails' to get thumbnail metadata, or 'permissions' to get sharing permissions. For example, use 'children' to include the child items of folders in search results, or 'thumbnails' to include thumbnail URLs. Note: Not all relationships may be expandable in search results. Refer to the Microsoft Graph API documentation for supported expansions.                                                                                                                                                                                                                                                      |
| `select`                     | string  |          | `"id,name,webUrl"`         | Comma-separated list of driveItem properties to include in the response. Valid properties include: id, name, webUrl, size, createdDateTime, lastModifiedDateTime, file, folder, parentReference, createdBy, lastModifiedBy, fileSystemInfo, searchResult, remoteItem, etc. Note: @-prefixed annotations (e.g., @microsoft.graph.downloadUrl) are automatically stripped as they are not valid in $select queries for search endpoints.                                                                                                                                                                                                                                                                                                                                                            |
| `orderby`                    | string  |          | `"name desc"`              | A comma-separated list of properties used to sort the order of the items in the response. Use 'asc' or 'desc' for ascending or descending order, e.g., 'name asc'.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `drive_id`                   | string  |          | `"b!C378D127A8A967E6!115"` | The ID of the drive to search within. If not provided, the user's personal drive (me/drive) will be searched. Use ONE\_DRIVE\_LIST\_DRIVES to get valid drive IDs. Note: Some drive ID formats (e.g., secondary personal drives or special SharePoint IDs) may return 'ObjectHandle is Invalid' errors due to Microsoft Graph API limitations.                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `skip_token`                 | string  |          | —                          | A token to retrieve the next page of results, obtained from the @odata.nextLink in a previous response.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `search_scope`               | string  |          | —                          | Specifies the scope of the search. 'root' searches within the folder hierarchy starting from root (uses /drives/{drive\_id}/root/search or /me/drive/root/search). 'drive' broadens the search to include items shared with the current user (uses /drives/{drive\_id}/search or /me/drive/search). This parameter is respected both with and without a drive\_id.                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `stripped_annotations`       | array   |          | —                          | Internal field to track stripped annotations. Not exposed to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `transformed_path_query`     | string  |          | —                          | Internal field to track if path-based query was transformed. Not exposed to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `transformed_kql_operator`   | string  |          | —                          | Internal field to track if a KQL operator was transformed. Not exposed to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `transformed_parent_query`   | string  |          | —                          | Internal field to track if parent: filter was stripped from query. Not exposed to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `transformed_wildcard_query` | string  |          | —                          | Internal field to track if wildcard characters were removed from query. Not exposed to API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

***

### `One Drive Unfollow Item`

Integration name: **ONE\_DRIVE\_UNFOLLOW\_ITEM**

Tool to unfollow a driveItem by removing it from the user's followed items collection. Use when you need to stop following a file or folder that was previously marked to follow.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                | Description                                                                                                            |
| --------- | ------ | :------: | -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"01H3CZALAAAAAAAAAAAAAAAAAAAAAAAAAA"` | The unique identifier of the driveItem to unfollow. This is the ID of an item in the user's followed items collection. |

***

### `One Drive Update Drive Item Metadata`

Integration name: **ONE\_DRIVE\_UPDATE\_DRIVE\_ITEM\_METADATA**

Tool to update the metadata of a specific item (file or folder) in OneDrive. Use this to rename items, change descriptions, or move items to a new parent folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                   | Type   | Required | Example                                                                                              | Description                                                                                                                                                                                                                                                                                                           |
| --------------------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                      | string |          | `"new-file-name.docx"`                                                                               | The new name for the drive item. Must not contain illegal characters: `\`, `/`, `:`, `*`, `?`, `'`, `<`, `>`, `\|`; these trigger an `invalidRequest` error.                                                                                                                                                          |
| `item_id`                   | string |     ✅    | `"01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK"`                                                               | The unique identifier of the drive item (file or folder) to update.                                                                                                                                                                                                                                                   |
| `site_id`                   | string |          | `"contoso.sharepoint.com,024d491a-4d09-4194-ae1f-7413535507dc,024d491a-4d09-4194-ae1f-7413535507dc"` | The unique identifier of the site. Used when updating an item within a site's drive.                                                                                                                                                                                                                                  |
| `user_id`                   | string |          | `"024d491a-4d09-4194-ae1f-7413535507dc"`                                                             | The unique identifier of the user. Used when updating an item within a specific user's drive.                                                                                                                                                                                                                         |
| `drive_id`                  | string |          | `"b!C3NkF4b2GU2msLpLqgZ4oYd_S4P0S6_FhG0bS-WpTkYwGVc_FmBYSZ7d0x_ZJpG-"`                               | The unique identifier of the drive. Required if not using other specific paths like /me, /groups/{group-id}, /sites/{site-id}, or /users/{user-id}.                                                                                                                                                                   |
| `group_id`                  | string |          | `"024d491a-4d09-4194-ae1f-7413535507dc"`                                                             | The unique identifier of the group. Used when updating an item within a group's drive.                                                                                                                                                                                                                                |
| `if_match`                  | string |          | `"\"{99F4367E-7299-4600-A8A0-3F158F4E9D6B},2\""`                                                     | The eTag or cTag value for conditional update. If this header is included and the eTag provided doesn't match the current eTag on the item, a 412 Precondition Failed response is returned. Use this to prevent conflicts when multiple users update the same item.                                                   |
| `description`               | string |          | `"Updated project proposal document."`                                                               | The new description for the drive item.                                                                                                                                                                                                                                                                               |
| `file_system_info`          | object |          | `{"createdDateTime":"2024-01-15T10:30:00Z","lastModifiedDateTime":"2024-01-15T14:20:00Z"}`           | File system information on client.                                                                                                                                                                                                                                                                                    |
| `parent_reference_id`       | string |          | `"01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK"`                                                               | The ID of the new parent item. Use this to move the item. The driveId of the parentReference can also be specified if moving between drives. For cross-drive moves, `parent_reference_drive_id` is required alongside this field. Omit both fields when only renaming or updating metadata to avoid unintended moves. |
| `parent_reference_drive_id` | string |          | `"b!C3NkF4b2GU2msLpLqgZ4oYd_S4P0S6_FhG0bS-WpTkYwGVc_FmBYSZ7d0x_ZJpG-"`                               | The drive ID of the new parent item, if moving to a different drive.                                                                                                                                                                                                                                                  |

***

### `One Drive Update Drive Items Permissions`

Integration name: **ONE\_DRIVE\_UPDATE\_DRIVE\_ITEMS\_PERMISSIONS**

Tool to update the roles of an existing permission on a OneDrive drive item. Use when you need to change the access level (read, write, owner) for a specific permission on a file or folder.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example                                                                                              | Description                                                                                                        |
| --------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `roles`         | array  |     ✅    | `["write"]`                                                                                          | Array of roles to assign to the permission. Valid values: read, write, owner.                                      |
| `item_id`       | string |     ✅    | `"01LLJYZ3F6Y2GOVW7725BZO354PWSELRRZ"`                                                               | The unique identifier of the drive item.                                                                           |
| `site_id`       | string |          | `"contoso.sharepoint.com,2C712604-1397-42ED-85C7-5843590F0202,2D22A158-83D2-4D48-92C1-502810230D0A"` | The unique identifier of a SharePoint site. Use this if the item is in a SharePoint site's drive.                  |
| `user_id`       | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of a user. Use this if the item is in a specific user's drive (other than 'me').             |
| `drive_id`      | string |          | `"b!C1234567890ABCDEFGH"`                                                                            | The unique identifier of the drive. Required if not using other identifiers like group\_id, site\_id, or user\_id. |
| `group_id`      | string |          | `"024d426a-2f0f-4e9a-92c1-502810230d0a"`                                                             | The unique identifier of a group. Use this if the item is in a group's drive.                                      |
| `permission_id` | string |     ✅    | `"aTowIy5mfG1lbWJlcnNoaXB8a2FyYW52YWlkeWFAYXV0aGtpdC5haQ"`                                           | The unique identifier of the permission to update.                                                                 |

***

### `One Drive Update File Content`

Integration name: **ONE\_DRIVE\_UPDATE\_FILE\_CONTENT**

Tool to create an upload session for updating an existing file's content in OneDrive. Use when you need to overwrite/update an existing DriveItem's content while preserving its item ID, avoiding duplicate copies and maintaining existing share links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                                                                              | Description                                                                                                                                                                                         |
| -------------------- | ------- | :------: | ---------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`               | string  |          | `"document.pdf"`                                                                                     | The name of the item (filename and extension). Use this to override the filename during the upload session.                                                                                         |
| `item_id`            | string  |     ✅    | `"01NKDM7HMOJTVYMDOSXFDK2QJDXCDI3WUK"`                                                               | The unique identifier of the DriveItem (file) to update.                                                                                                                                            |
| `site_id`            | string  |          | `"contoso.sharepoint.com,024d491a-4d09-4194-ae1f-7413535507dc,024d491a-4d09-4194-ae1f-7413535507dc"` | The unique identifier of the SharePoint site. If provided, uses /sites/{siteId}/drive. Mutually exclusive with drive\_id, group\_id, and user\_id.                                                  |
| `user_id`            | string  |          | `"024d491a-4d09-4194-ae1f-7413535507dc"`                                                             | The unique identifier of the user. If provided, uses /users/{userId}/drive. Mutually exclusive with drive\_id, site\_id, and group\_id.                                                             |
| `drive_id`           | string  |          | `"b!C3NkF4b2GU2msLpLqgZ4oYd_S4P0S6_FhG0bS-WpTkYwGVc_FmBYSZ7d0x_ZJpG-"`                               | The unique identifier of the drive. If not provided, uses /me/drive. Mutually exclusive with site\_id, group\_id, and user\_id.                                                                     |
| `group_id`           | string  |          | `"024d491a-4d09-4194-ae1f-7413535507dc"`                                                             | The unique identifier of the group. If provided, uses /groups/{groupId}/drive. Mutually exclusive with drive\_id, site\_id, and user\_id.                                                           |
| `file_size`          | integer |          | `1048576`                                                                                            | Provides an expected file size to perform a quota check before uploading. Only supported on OneDrive Personal.                                                                                      |
| `description`        | string  |          | `"Project proposal for Q1 2024"`                                                                     | Provides a user-visible description of the item. Only supported on OneDrive Personal.                                                                                                               |
| `defer_commit`       | boolean |          | —                                                                                                    | If true, the file creation is deferred until an explicit completion request is made. Useful for very large files where you want to control when the upload is finalized.                            |
| `media_source`       | object  |          | —                                                                                                    | Media source information. Only on OneDrive for Business and SharePoint.                                                                                                                             |
| `if_match_etag`      | string  |          | `"aQzlGRDlBMjdBRDQ5RUVCOTE3LjA"`                                                                     | An ETag value to prevent lost updates. If provided, the update will only proceed if the current file's ETag matches this value. Returns 412 error if it doesn't match.                              |
| `file_system_info`   | object  |          | —                                                                                                    | File system information on client.                                                                                                                                                                  |
| `conflict_behavior`  | string  |          | —                                                                                                    | How to handle conflicts when updating the file. 'replace' overwrites the existing content (default), 'fail' returns an error if conflict occurs, 'rename' creates a new file with a different name. |
| `drive_item_source`  | object  |          | —                                                                                                    | Information about the drive item source. Only on OneDrive for Business and SharePoint.                                                                                                              |
| `if_none_match_etag` | string  |          | `"aQzlGRDlBMjdBRDQ5RUVCOTE3LjA"`                                                                     | An ETag value to prevent updates if the item already exists. If provided and the ETag matches, returns 412 error. Used to detect if the item has changed.                                           |

***


# Outlook

Your Toolhouse AI Worker can connect to Outlook using 301 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](https://toolhouse.app/auth-connections?authkit_slugs=outlook).

## Tools (301)

### `Outlook Accept Event`

**Integration name:** `OUTLOOK_ACCEPT_EVENT`

Accepts or tentatively accepts a calendar meeting invite on behalf of a user. Use this action when a user has received a meeting invitation and wants to indicate their attendance status (either confirmed or tentative). The organizer will receive a notification of the acceptance unless `send_response` is set to false.

#### Parameters

| Parameter       | Type    | Required | Example                    | Description                                                                                                   |
| --------------- | ------- | :------: | -------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `comment`       | string  |          | `"I'll be there!"`         | Optional text message to include with the response, sent to the organizer.                                    |
| `user_id`       | string  |          | `"me"`                     | The user ID or userPrincipalName of the calendar owner. If not provided, uses the authenticated user (`/me`). |
| `event_id`      | string  |     ✅    | `"AAMkAGI2TG9tYVyGdUHg=="` | The unique identifier of the calendar event to respond to.                                                    |
| `response_type` | string  |          | `"accept"`                 | Type of response: `accept` to accept the invite, `tentative` to tentatively accept.                           |
| `send_response` | boolean |          | `true`                     | Whether to send the response to the organizer. Set to false to accept without notifying.                      |

***

### `Outlook Add Event Attachment`

**Integration name:** `OUTLOOK_ADD_EVENT_ATTACHMENT`

Adds an attachment to a specific Outlook calendar event. Use when you need to attach a file or nested item to an existing event.

#### Parameters

| Parameter       | Type   | Required | Example                  | Description                                                                                                                    |
| --------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| `item`          | object |          | —                        | The nested item payload; required when `@odata.type` is `itemAttachment`.                                                      |
| `name`          | string |     ✅    | `"menu.txt"`             | The display name of the attachment.                                                                                            |
| `user_id`       | string |          | `"me"`                   | The user's email address or `me` for the authenticated user.                                                                   |
| `event_id`      | string |     ✅    | `"AAMkAGI1AAAt9AHjAAA="` | The unique opaque identifier of the calendar event (NOT an email address).                                                     |
| `odata_type`    | string |     ✅    | —                        | Attachment type: `#microsoft.graph.fileAttachment` requires `contentBytes`; `#microsoft.graph.itemAttachment` requires `item`. |
| `content_bytes` | string |          | `"aGVsbG8gd29ybGQ="`     | MUST be base64-encoded file contents (not plain text); required when `@odata.type` is `fileAttachment`.                        |

***

### `Outlook Add Mail Attachment`

**Integration name:** `OUTLOOK_ADD_MAIL_ATTACHMENT`

Tool to add an attachment to an email message. Use when you have a message ID and need to attach a small (<3 MB) file or reference.

#### Parameters

| Parameter         | Type    | Required | Example                             | Description                                                                                                                                                   |
| ----------------- | ------- | :------: | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `item`            | object  |          | —                                   | Embedded item (e.g., message, event) for itemAttachment; must include its own `@odata.type`.                                                                  |
| `name`            | string  |          | `"report.pdf"`                      | Display name of the attachment (e.g., file name). Required when using `content_bytes`. When using the `attachment` field, the name is automatically inferred. |
| `user_id`         | string  |          | `"me"`                              | The user's principal name or `me` for the authenticated user.                                                                                                 |
| `isInline`        | boolean |          | —                                   | Set to true if the attachment should appear inline in the message body.                                                                                       |
| `contentId`       | string  |          | —                                   | Content ID for inline attachments, used in HTML body references.                                                                                              |
| `attachment`      | object  |          | —                                   | File to attach to the email. Either provide this field OR use `content_bytes`. Cannot be used together with `content_bytes`.                                  |
| `message_id`      | string  |     ✅    | `"AAMkAGI2TAAA="`                   | Unique Microsoft Graph message ID (opaque string like `AAMkAGI2TAAA=`). NOT an email address.                                                                 |
| `odata_type`      | string  |          | `"#microsoft.graph.fileAttachment"` | The OData type of the attachment.                                                                                                                             |
| `contentType`     | string  |          | `"application/pdf"`                 | MIME type of the attachment. Required when using `content_bytes`.                                                                                             |
| `contentBytes`    | string  |          | `"SGVsbG8gd29ybGQh"`                | Base64-encoded content of the file attachment (max size 3 MB).                                                                                                |
| `contentLocation` | string  |          | —                                   | URL location or path for reference attachments.                                                                                                               |

***

### `Outlook Batch Move Messages`

**Integration name:** `OUTLOOK_BATCH_MOVE_MESSAGES`

Batch-move up to 20 Outlook messages to a destination folder in a single Microsoft Graph `$batch` call.

#### Parameters

| Parameter         | Type   | Required | Example          | Description                                                                                                                           |
| ----------------- | ------ | :------: | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`         | string |          | `"me"`           | The UPN of the user whose messages to move, or `me` for the currently authenticated user.                                             |
| `message_ids`     | array  |     ✅    | —                | Array of message IDs to move. Maximum 20 items per batch.                                                                             |
| `destination_id`  | string |     ✅    | `"deleteditems"` | The destination folder ID, or a well-known folder name.                                                                               |
| `response_detail` | string |          | —                | Controls how much each move sub-request returns. `minimal` (default) returns `204 No Content`; `full` returns the moved message body. |

***

### `Outlook Batch Update Messages`

**Integration name:** `OUTLOOK_BATCH_UPDATE_MESSAGES`

Batch-update up to 20 Outlook messages per call using Microsoft Graph JSON batching.

#### Parameters

| Parameter         | Type   | Required | Example | Description                                                                                 |
| ----------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------------------- |
| `updates`         | array  |     ✅    | —       | Array of message updates to perform. Maximum 20 items per batch.                            |
| `user_id`         | string |          | `"me"`  | The UPN of the user whose messages to update, or `me` for the currently authenticated user. |
| `response_detail` | string |          | —       | Controls how much each PATCH sub-request returns. `minimal` (default) or `full`.            |

***

### `Outlook Calendar Create Event`

**Integration name:** `OUTLOOK_CALENDAR_CREATE_EVENT`

Creates a new Outlook calendar event, ensuring `start_datetime` is chronologically before `end_datetime`.

#### Parameters

| Parameter                 | Type    | Required | Example                                                                                                                                          | Description                                                       |
| ------------------------- | ------- | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
| `body`                    | string  |          | `"Weekly team synchronization meeting."`                                                                                                         | The body of the event.                                            |
| `is_html`                 | boolean |          | —                                                                                                                                                | Specifies whether the `body` content is HTML.                     |
| `show_as`                 | string  |          | `"busy"`                                                                                                                                         | The status to show on the calendar for the duration of the event. |
| `subject`                 | string  |     ✅    | `"Team Sync"`                                                                                                                                    | The subject of the calendar event.                                |
| `user_id`                 | string  |          | `"me"`                                                                                                                                           | The user identifier for the calendar owner.                       |
| `location`                | string  |          | `"Conference Room A"`                                                                                                                            | The physical location of the event.                               |
| `time_zone`               | string  |     ✅    | `"UTC"`                                                                                                                                          | The time zone for the start and end times of the event.           |
| `categories`              | array   |          | `["Project Alpha","Urgent"]`                                                                                                                     | A list of category names to associate with the event.             |
| `importance`              | string  |          | `"low"`                                                                                                                                          | The importance of the event.                                      |
| `recurrence`              | object  |          | `{"range":{"type":"endDate","endDate":"2025-12-31","startDate":"2025-01-01"},"pattern":{"type":"daily","interval":1}}`                           | The recurrence pattern and range for an event.                    |
| `calendar_id`             | string  |          | `"AQMkADAwATM0MDAAMI05YjhkLWI3NjgtMDACLTAwCgBGAAADKjFWj6npsUCnbqW0j-afBAcAj7rsw6i8BEKl3_l14AMAUAAAAgEGAAAAj7rsw6i8BEKl3_l14AMAUAAAAEaASyEAAAA="` | The ID of a specific calendar to create the event in.             |
| `end_datetime`            | string  |     ✅    | `"2025-01-03T11:00:00"`                                                                                                                          | The end date and time of the event in ISO 8601 format.            |
| `attendees_info`          | array   |          | `["user@example.com","another@example.com"]`                                                                                                     | A list of attendees for the event.                                |
| `start_datetime`          | string  |     ✅    | `"2025-01-03T10:00:00"`                                                                                                                          | The start date and time of the event in ISO 8601 format.          |
| `is_online_meeting`       | boolean |          | —                                                                                                                                                | Set to true to indicate that the event is an online meeting.      |
| `online_meeting_provider` | string  |          | `"teamsForBusiness"`                                                                                                                             | Specifies the online meeting provider.                            |

***

### `Outlook Cancel Calendar Event`

**Integration name:** `OUTLOOK_CANCEL_CALENDAR_EVENT`

Tool to cancel an event in a specific calendar for a specified user and send cancellation notifications to all attendees.

#### Parameters

| Parameter     | Type   | Required | Example                                                                                                                                          | Description                                                              |
| ------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
| `Comment`     | string |          | `"Meeting canceled due to scheduling conflict."`                                                                                                 | Optional text message sent to all attendees explaining the cancellation. |
| `user_id`     | string |     ✅    | `"me"`                                                                                                                                           | The user ID or userPrincipalName of the calendar owner.                  |
| `event_id`    | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ0AAADGTYrvat2PSKIu8IS9hMqyAAAAU0mNQQAAAA=="` | The unique identifier of the event to cancel.                            |
| `calendar_id` | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQYAAADGTYrvat2PSKIu8IS9hMqyAAACHO0AAAA="`     | The unique identifier of the calendar containing the event.              |

***

### `Outlook Copy Mail Folder`

**Integration name:** `OUTLOOK_COPY_MAIL_FOLDER`

Tool to copy a user's mail folder and its contents to another folder.

#### Parameters

| Parameter        | Type   | Required | Example                                                                                                      | Description                                                                     |
| ---------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------- |
| `user_id`        | string |     ✅    | `"6640adbb5cb743b0"`                                                                                         | Identifier of the user.                                                         |
| `destination_id` | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQwAAAA="` | The folder ID or a well-known folder name where the folder should be copied to. |
| `mail_folder_id` | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQ8AAAA="` | The ID of the mail folder to copy.                                              |

***

### `Outlook Copy Me Mail Folder`

**Integration name:** `OUTLOOK_COPY_ME_MAIL_FOLDER`

Tool to copy a child mail folder to a destination folder.

#### Parameters

| Parameter         | Type   | Required | Example                                                                                                          | Description                                                           |
| ----------------- | ------ | :------: | ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `user_id`         | string |          | `"me"`                                                                                                           | User's id, userPrincipalName, or `me` for the signed-in user.         |
| `destination_id`  | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACARMAAAA="`     | The folder ID of the destination folder, or a well-known folder name. |
| `mail_folder_id`  | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQwAAAA="`     | The ID of the parent mail folder containing the child folder to copy. |
| `child_folder_id` | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAAAU0mZKAAAAA=="` | The ID of the child folder to copy.                                   |

***

### `Outlook Copy Message`

**Integration name:** `OUTLOOK_COPY_MESSAGE`

Tool to copy an email message to another folder within the user's mailbox.

#### Parameters

| Parameter        | Type   | Required | Example           | Description                                                              |
| ---------------- | ------ | :------: | ----------------- | ------------------------------------------------------------------------ |
| `user_id`        | string |          | `"me"`            | User's email address, UPN, or `me` for the currently authenticated user. |
| `message_id`     | string |     ✅    | `"AAMkAGI2TAAA="` | Unique ID of the Outlook email message to copy.                          |
| `destination_id` | string |     ✅    | `"deleteditems"`  | The destination folder ID, or a well-known folder name.                  |

***

### `Outlook Create Draft`

**Integration name:** `OUTLOOK_CREATE_DRAFT`

Creates a new Outlook email draft with subject, body, recipients, and an optional attachment.

#### Parameters

| Parameter        | Type    | Required | Example                                         | Description                                                           |
| ---------------- | ------- | :------: | ----------------------------------------------- | --------------------------------------------------------------------- |
| `body`           | string  |     ✅    | `"Let's meet to discuss the project."`          | Content of the email draft.                                           |
| `is_html`        | boolean |          | —                                               | Specifies if the `body` is HTML.                                      |
| `subject`        | string  |     ✅    | `"Team Meeting"`                                | Subject line for the email draft.                                     |
| `user_id`        | string  |          | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"`        | User ID (GUID) or user principal name (email) for S2S authentication. |
| `attachment`     | —       |          | —                                               | Optional file(s) to attach.                                           |
| `cc_recipients`  | array   |          | `["manager@example.com"]`                       | Optional list of CC recipient email addresses.                        |
| `to_recipients`  | array   |          | `["johndoe@example.com","janedoe@example.com"]` | Optional list of primary `To` recipient email addresses.              |
| `bcc_recipients` | array   |          | `["stakeholder@example.com"]`                   | Optional list of BCC recipient email addresses.                       |

***

### `Outlook Create Email Rule`

**Integration name:** `OUTLOOK_CREATE_EMAIL_RULE`

Create email rule filter with conditions and actions.

#### Parameters

| Parameter      | Type    | Required | Example                                  | Description                                            |
| -------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `actions`      | object  |     ✅    | —                                        | Actions to take when the rule conditions are met.      |
| `user_id`      | string  |          | `"43f0c14d-bca8-421f-b762-c3d8dd75be1f"` | User ID or principal name for app-only authentication. |
| `sequence`     | integer |          | `1`                                      | Order in which the rule is executed.                   |
| `conditions`   | object  |     ✅    | —                                        | Conditions that must be met for the rule to apply.     |
| `is_enabled`   | boolean |          | —                                        | Whether the rule is enabled.                           |
| `display_name` | string  |     ✅    | `"High Priority Filter"`                 | Display name for the email rule.                       |

***

### `Outlook Delete Email Rule`

**Integration name:** `OUTLOOK_DELETE_EMAIL_RULE`

Delete an email rule permanently; deletion is irreversible.

#### Parameters

| Parameter | Type   | Required | Example                                                                                                   | Description                        |
| --------- | ------ | :------: | --------------------------------------------------------------------------------------------------------- | ---------------------------------- |
| `rule_id` | string |     ✅    | `"AAMkAGExampleRuleIdPlaceholder000000000000000000000000000000000000000000000000000000000000000000000=="` | ID of the email rule to delete.    |
| `user_id` | string |          | `"me"`                                                                                                    | The unique identifier of the user. |

***

### `Outlook Get Message`

**Integration name:** `OUTLOOK_GET_MESSAGE`

Retrieves a specific email message by its ID from the specified user's Outlook mailbox.

#### Parameters

| Parameter    | Type   | Required | Example                                                | Description                                                              |
| ------------ | ------ | :------: | ------------------------------------------------------ | ------------------------------------------------------------------------ |
| `select`     | array  |          | `["id","subject","from","receivedDateTime","webLink"]` | List of message properties to include in the response.                   |
| `user_id`    | string |          | `"me"`                                                 | User's email address, UPN, or `me` for the currently authenticated user. |
| `message_id` | string |     ✅    | `"AAMkAGI2TAAA="`                                      | Unique ID of the Outlook email message to retrieve.                      |

***

### `Outlook List Messages`

**Integration name:** `OUTLOOK_LIST_MESSAGES`

Retrieves a list of email messages from a specified mail folder in an Outlook mailbox, with options for filtering, pagination, and sorting.

#### Parameters

| Parameter               | Type    | Required | Example                                                                  | Description                                                         |
| ----------------------- | ------- | :------: | ------------------------------------------------------------------------ | ------------------------------------------------------------------- |
| `top`                   | integer |          | `"10"`                                                                   | Maximum number of messages to return per request.                   |
| `skip`                  | integer |          | `"0"`                                                                    | Number of messages to skip.                                         |
| `folder`                | string  |          | `"inbox"`                                                                | ID or well-known name of the mail folder.                           |
| `search`                | string  |          | `"budget report"`                                                        | Full-text search query using Microsoft Graph `$search` syntax.      |
| `select`                | array   |          | `["subject","from","receivedDateTime"]`                                  | Message properties to include.                                      |
| `is_read`               | boolean |          | `true`                                                                   | Filter by read status.                                              |
| `orderby`               | array   |          | `["receivedDateTime desc"]`                                              | Properties to sort results by.                                      |
| `subject`               | string  |          | `"Project Update Q3"`                                                    | Filter by exact match of the subject line.                          |
| `user_id`               | string  |          | `"me"`                                                                   | Target user's email or `me` for authenticated user.                 |
| `categories`            | array   |          | `["Work","Urgent"]`                                                      | Filter by categories.                                               |
| `importance`            | string  |          | `"high"`                                                                 | Filter by importance.                                               |
| `from_address`          | string  |          | `"sender@example.com"`                                                   | Filter by the sender's exact email address.                         |
| `conversation_id`       | string  |          | `"AQQkADAwATY3ZmYAZS1hYQAzNC1lODkwLTAwAi0wMAoAEADJzjh8m93SQbP6BUCZcIuc"` | Filter messages by conversation ID.                                 |
| `has_attachments`       | boolean |          | —                                                                        | Filter by attachment presence.                                      |
| `response_detail`       | string  |          | —                                                                        | Level of detail in the response.                                    |
| `subject_contains`      | string  |          | `"budget"`                                                               | Filter messages where the subject contains the specified substring. |
| `subject_endswith`      | string  |          | `"- Confidential"`                                                       | Filter messages where the subject ends with the specified string.   |
| `sent_date_time_gt`     | string  |          | `"2023-01-10T14:30:00Z"`                                                 | Filter messages sent after this ISO 8601 timestamp.                 |
| `sent_date_time_lt`     | string  |          | `"2023-02-20T10:00:00Z"`                                                 | Filter messages sent before this ISO 8601 timestamp.                |
| `subject_startswith`    | string  |          | `"[Action Required]"`                                                    | Filter messages where the subject starts with the specified string. |
| `received_date_time_ge` | string  |          | `"2023-03-15T08:00:00Z"`                                                 | Filter messages received on or after this ISO 8601 timestamp.       |
| `received_date_time_gt` | string  |          | `"2023-01-01T00:00:00Z"`                                                 | Filter messages received after this ISO 8601 timestamp.             |
| `received_date_time_le` | string  |          | `"2023-03-31T23:59:59Z"`                                                 | Filter messages received on or before this ISO 8601 timestamp.      |
| `received_date_time_lt` | string  |          | `"2023-04-01T00:00:00Z"`                                                 | Filter messages received before this ISO 8601 timestamp.            |

***

### `Outlook Search Messages`

**Integration name:** `OUTLOOK_SEARCH_MESSAGES`

Search Outlook messages using powerful KQL syntax.

#### Parameters

| Parameter            | Type    | Required | Example                 | Description                                            |
| -------------------- | ------- | :------: | ----------------------- | ------------------------------------------------------ |
| `size`               | integer |          | —                       | Number of search results to return per page.           |
| `query`              | string  |          | `"project report"`      | KQL search query string.                               |
| `region`             | string  |          | `"US"`                  | Geographic region for the search query.                |
| `subject`            | string  |          | `"Project Update"`      | Text to search for within the message subject line.    |
| `fromEmail`          | string  |          | `"manager@example.com"` | Filter messages by sender email address or domain.     |
| `from_index`         | integer |          | —                       | The 0-based starting index for pagination.             |
| `hasAttachments`     | boolean |          | —                       | Filters messages based on the presence of attachments. |
| `enable_top_results` | boolean |          | —                       | If `true`, sorts results by relevance.                 |

***

### `Outlook Send Draft`

**Integration name:** `OUTLOOK_SEND_DRAFT`

Tool to send an existing draft message.

#### Parameters

| Parameter    | Type   | Required | Example         | Description                                                           |
| ------------ | ------ | :------: | --------------- | --------------------------------------------------------------------- |
| `user_id`    | string |          | `"me"`          | The user's email address or `me` to represent the authenticated user. |
| `message_id` | string |     ✅    | `"AAMkAGVi..."` | The unique identifier of the draft message to send.                   |

***

### `Outlook Send Email`

**Integration name:** `OUTLOOK_SEND_EMAIL`

Sends an email with subject, body, recipients, and optional attachments via Microsoft Graph API.

#### Parameters

| Parameter            | Type    | Required | Example                                               | Description                                                      |
| -------------------- | ------- | :------: | ----------------------------------------------------- | ---------------------------------------------------------------- |
| `to`                 | string  |     ✅    | `"recipient@example.com"`                             | The primary recipient's email address(es).                       |
| `body`               | string  |     ✅    | `"Hello team, please find the attached report."`      | The content of the email body as plain text or HTML.             |
| `is_html`            | boolean |          | `"true"`                                              | Specifies if the email body is HTML.                             |
| `subject`            | string  |     ✅    | `"Project Update"`                                    | The subject line of the email.                                   |
| `to_name`            | string  |          | `"Valued Customer"`                                   | The display name of the primary recipient.                       |
| `user_id`            | string  |          | `"me"`                                                | The user's email address or the alias `me`.                      |
| `cc_emails`          | array   |          | `["jane.doe@example.com","cc.recipient@example.com"]` | List of email addresses for CC recipients.                       |
| `attachment`         | —       |          | —                                                     | File(s) to attach.                                               |
| `bcc_emails`         | array   |          | `["manager@example.com","supervisor@example.com"]`    | List of email addresses for BCC recipients.                      |
| `from_address`       | string  |          | `"shared.mailbox@contoso.com"`                        | Optional From address to set on the message (send as/on behalf). |
| `save_to_sent_items` | boolean |          | `"true"`                                              | Indicates if the email should be saved in Sent Items.            |

***

### `Outlook Update Calendar Event`

**Integration name:** `OUTLOOK_UPDATE_CALENDAR_EVENT`

Updates specified fields of an existing Outlook calendar event. Unspecified fields remain unchanged.

#### Parameters

| Parameter        | Type   | Required | Example                  | Description                                                        |
| ---------------- | ------ | :------: | ------------------------ | ------------------------------------------------------------------ |
| `body`           | object |          | —                        | Event body with content type (`Text` or `HTML`) and the content.   |
| `show_as`        | string |          | `"busy"`                 | Availability status for the event.                                 |
| `subject`        | string |          | `"Updated Team Meeting"` | New subject for the event.                                         |
| `user_id`        | string |          | —                        | The identifier of the user whose calendar event is to be updated.  |
| `event_id`       | string |     ✅    | `"AAMkAGI2TAAA="`        | The unique identifier of the calendar event to be updated.         |
| `location`       | —      |          | `"Conference Room A"`    | Event location.                                                    |
| `attendees`      | array  |          | —                        | Attendee list for the event.                                       |
| `time_zone`      | string |          | `"America/Los_Angeles"`  | Time zone for the provided `start_datetime` and/or `end_datetime`. |
| `categories`     | array  |          | —                        | Category names to associate with the event.                        |
| `recurrence`     | object |          | —                        | The recurrence pattern for an event.                               |
| `end_datetime`   | string |          | `"2024-05-01T10:00:00"`  | New end date and time for the event.                               |
| `start_datetime` | string |          | `"2024-05-01T09:00:00"`  | New start date and time for the event.                             |

***

### `Outlook Update User Calendar`

**Integration name:** `OUTLOOK_UPDATE_USER_CALENDAR`

Tool to update the properties of a user's calendar.

#### Parameters

| Parameter | Type   | Required | Example           | Description                                                            |
| --------- | ------ | :------: | ----------------- | ---------------------------------------------------------------------- |
| `name`    | string |          | `"Work Calendar"` | The new display name for the calendar.                                 |
| `color`   | string |          | —                 | Color theme options for calendars in Outlook.                          |
| `user_id` | string |     ✅    | `"me"`            | The user ID or userPrincipalName of the user whose calendar to update. |

***

### `Outlook Update User Contacts Extensions`

**Integration name:** `OUTLOOK_UPDATE_USER_CONTACTS_EXTENSIONS`

Tool to update an open extension on a contact in a user's contact folder.

#### Parameters

| Parameter           | Type   | Required | Example                                                                                                                                          | Description                                                          |
| ------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
| `user_id`           | string |     ✅    | `"me"`                                                                                                                                           | The unique identifier of the user.                                   |
| `contact_id`        | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ4AAADGTYrvat2PSKIu8IS9hMqyAAAAU0nIvgAAAA=="` | The unique identifier of the contact to which the extension belongs. |
| `extension_id`      | string |     ✅    | `"Com.Contoso.ContactData"`                                                                                                                      | The unique identifier of the extension to update.                    |
| `extension_name`    | string |     ✅    | `"Com.Contoso.ContactData"`                                                                                                                      | The name of the extension.                                           |
| `contact_folder_id` | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAAAU0mZOgAAAA=="`                                 | The unique identifier of the contact folder containing the contact.  |
| `custom_properties` | object |          | `{"notes":"VIP client with priority support","lastUpdated":"2026-02-23","accountValue":15000,"customerType":"Enterprise"}`                       | Custom properties to update or add to the extension.                 |

***

### `Outlook Update User Calendar Permission`

**Integration name:** `OUTLOOK_UPDATE_USER_CALENDAR_PERMISSION`

Tool to update calendar permission levels for a specific user's calendar.

#### Parameters

| Parameter       | Type   | Required | Example                                                                                                                                      | Description                                                                     |
| --------------- | ------ | :------: | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `role`          | string |     ✅    | `"write"`                                                                                                                                    | The permission level to change to for the calendar share recipient or delegate. |
| `user_id`       | string |     ✅    | `"me"`                                                                                                                                       | The user ID or principal name of the user whose calendar permission to update.  |
| `calendar_id`   | string |          | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQYAAADGTYrvat2PSKIu8IS9hMqyAAACHO0AAAA="` | The unique identifier of the calendar.                                          |
| `permission_id` | string |     ✅    | `"ZGU5NWQyODQtZTA3ZS00YzMxLTljMjAtY2JhNTI5ZTFjOTcx"`                                                                                         | The unique identifier of the calendar permission to update.                     |

***

### `Outlook Update User Calendar Event`

**Integration name:** `OUTLOOK_UPDATE_USER_CALENDAR_EVENT`

Tool to update an event in a specific user's calendar.

#### Parameters

| Parameter                    | Type    | Required | Example                                              | Description                                                                            |
| ---------------------------- | ------- | :------: | ---------------------------------------------------- | -------------------------------------------------------------------------------------- |
| `end`                        | object  |          | —                                                    | Date, time, and timezone information.                                                  |
| `body`                       | object  |          | —                                                    | Message content associated with the event.                                             |
| `start`                      | object  |          | —                                                    | Date, time, and timezone information.                                                  |
| `showAs`                     | string  |          | `"free"`                                             | Status to show.                                                                        |
| `subject`                    | string  |          | `"Updated Team Meeting"`                             | Subject/title of the event.                                                            |
| `user_id`                    | string  |     ✅    | `"user@example.com"`                                 | The unique identifier or userPrincipalName of the user whose calendar event to update. |
| `event_id`                   | string  |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAA=="` | The unique identifier of the event to update.                                          |
| `isAllDay`                   | boolean |          | —                                                    | Set to true if the event lasts all day.                                                |
| `location`                   | object  |          | —                                                    | Location information for an event.                                                     |
| `attendees`                  | array   |          | —                                                    | Array of attendee objects.                                                             |
| `categories`                 | array   |          | `["Work","Important"]`                               | Categories associated with the event.                                                  |
| `importance`                 | string  |          | `"low"`                                              | The importance of the event.                                                           |
| `recurrence`                 | object  |          | —                                                    | Recurrence pattern for recurring events.                                               |
| `sensitivity`                | string  |          | `"normal"`                                           | Sensitivity level.                                                                     |
| `isReminderOn`               | boolean |          | —                                                    | Set to true if an alert reminds the user of the event.                                 |
| `isOnlineMeeting`            | boolean |          | —                                                    | True if event has online meeting information.                                          |
| `reminderMinutesBeforeStart` | integer |          | `15`                                                 | Minutes before event start when reminder alert occurs.                                 |

***

### `Outlook Update User Mail Folder Message`

**Integration name:** `OUTLOOK_UPDATE_USER_MAIL_FOLDER_MESSAGE`

Tool to update properties of a message in a specific mail folder for a user.

#### Parameters

| Parameter                    | Type    | Required | Example                | Description                                                                                         |
| ---------------------------- | ------- | :------: | ---------------------- | --------------------------------------------------------------------------------------------------- |
| `body`                       | object  |          | —                      | The body of the message.                                                                            |
| `flag`                       | object  |          | —                      | The flag value that indicates the status, start date, due date, or completion date for the message. |
| `from`                       | object  |          | —                      | Represents information about a user in the sending or receiving end of a message.                   |
| `isRead`                     | boolean |          | —                      | Whether the message has been read.                                                                  |
| `sender`                     | object  |          | —                      | Represents information about a user in the sending or receiving end of a message.                   |
| `replyTo`                    | array   |          | —                      | The email addresses to use when replying. Only updatable if `isDraft=true`.                         |
| `subject`                    | string  |          | —                      | The subject of the message. Only updatable if `isDraft=true`.                                       |
| `user_id`                    | string  |     ✅    | `"me"`                 | The unique identifier of the user whose mailbox contains the message.                               |
| `categories`                 | array   |          | `["Work","Important"]` | The categories associated with the message.                                                         |
| `importance`                 | string  |          | —                      | Importance level of the message.                                                                    |
| `message_id`                 | string  |     ✅    | `"AAMkAGI2TAAA="`      | The unique identifier of the message to update within the specified mail folder.                    |
| `ccRecipients`               | array   |          | —                      | The Cc recipients for the message.                                                                  |
| `toRecipients`               | array   |          | —                      | The To recipients for the message.                                                                  |
| `bccRecipients`              | array   |          | —                      | The Bcc recipients for the message.                                                                 |
| `mail_folder_id`             | string  |     ✅    | `"inbox"`              | The unique identifier of the mail folder containing the message.                                    |
| `internetMessageId`          | string  |          | —                      | The message ID in RFC2822 format.                                                                   |
| `isReadReceiptRequested`     | boolean |          | —                      | Whether a read receipt is requested for the message.                                                |
| `inferenceClassification`    | string  |          | —                      | Classification of the message based on inferred relevance or importance.                            |
| `isDeliveryReceiptRequested` | boolean |          | —                      | Whether a delivery receipt is requested for the message.                                            |

***

### `Outlook Update User Message Extension`

**Integration name:** `OUTLOOK_UPDATE_USER_MESSAGE_EXTENSION`

Tool to update an open extension on a user's message.

#### Parameters

| Parameter           | Type   | Required | Example                                                                                                                                          | Description                                                    |
| ------------------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------- |
| `user_id`           | string |     ✅    | `"me"`                                                                                                                                           | The unique identifier of the user.                             |
| `message_id`        | string |     ✅    | `"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ8AAADGTYrvat2PSKIu8IS9hMqyAAAAU0lyEAAAAA=="` | The unique identifier of the message containing the extension. |
| `extension_id`      | string |     ✅    | `"Com.Contoso.TestExtension"`                                                                                                                    | The unique identifier or name of the extension to update.      |
| `extension_name`    | string |          | `"Com.Contoso.TestExtension"`                                                                                                                    | The name of the extension.                                     |
| `custom_properties` | object |          | `{"status":"active","dealValue":250000,"companyName":"Contoso Updated","expirationDate":"2027-12-31"}`                                           | Custom properties to update in the extension.                  |

***

*The full Outlook tool reference continues in the same format for the remaining tools.*


# Productboard

Your Toolhouse AI Worker can connect to Productboard using 99 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](https://toolhouse.app/auth-connections?authkit_slugs=productboard).

## Tools (99)

### `Productboard Add Note Followers`

Integration name: **PRODUCTBOARD\_ADD\_NOTE\_FOLLOWERS**

Tool to add multiple followers to a Productboard note. Use when you need to bulk-add existing users as followers to a specific note by their email addresses.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                    | Description                                                                                                                                       |
| --------- | ------ | :------: | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `emails`  | array  |     ✅    | `["user@example.com","other@example.com"]` | List of email addresses of existing workspace members to add as followers. Only users who are members of the workspace can be added as followers. |
| `noteId`  | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"`   | UUID of the note to which followers will be added                                                                                                 |

***

### `Productboard Add Note Tag`

Integration name: **PRODUCTBOARD\_ADD\_NOTE\_TAG**

Adds a tag to a Productboard note for categorization and organization. Use this action to apply tags to notes based on their content, priority, source, or any other classification criteria. Tags help organize and filter notes in Productboard. If the specified tag doesn't exist in the workspace, it will be automatically created. Tags are case-sensitive. Common use cases:

* Categorize notes by priority (e.g., "Urgent", "High Priority")
* Label feature requests vs. bugs (e.g., "feature-request", "bug")
* Mark notes for review stages (e.g., "needs review", "approved")
* Associate notes with time periods (e.g., "Q1-2026", "Sprint-5")

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                 |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `noteId`  | string |     ✅    | `"cd78665d-42f7-4958-a01d-fffb570aaa20"` | UUID of the note to tag. Obtain from list/create note actions.                                                                                                                              |
| `tagName` | string |     ✅    | `"Urgent"`                               | Name of the tag to add to the note. If the tag doesn't exist in the workspace, it will be automatically created. Supports alphanumeric characters, spaces, hyphens, and special characters. |

***

### `Productboard Create Company`

Integration name: **PRODUCTBOARD\_CREATE\_COMPANY**

Tool to create a new company in Productboard. Use when you need to add a company record after gathering its details and optional metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                 | Description                                                |
| ------------- | ------ | :------: | --------------------------------------- | ---------------------------------------------------------- |
| `name`        | string |     ✅    | `"Acme Corporation"`                    | Primary name of the company to create.                     |
| `domain`      | string |          | `"example.com"`                         | Internet domain of the company (e.g., 'example.com').      |
| `source`      | object |          | —                                       | Metadata about the external origin of this company record. |
| `description` | string |          | `"A leading provider of AI solutions."` | Free-text description of the company.                      |

***

### `Productboard Create Company Field`

Integration name: **PRODUCTBOARD\_CREATE\_COMPANY\_FIELD**

Tool to create a new custom field for companies. Use when you need to define custom company attributes in Productboard after confirming the field schema.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                   | Description                                                                     |
| --------- | ------ | :------: | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `body`    | object |     ✅    | `{"type":"rating","settings":{"max":5,"min":1},"displayName":"Priority"}` | JSON body containing the custom field definition as per Productboard API schema |

***

### `Productboard Create Component`

Integration name: **PRODUCTBOARD\_CREATE\_COMPONENT**

Tool to create a new (sub)component under a product or component. Use after determining the parent component ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                  |
| --------- | ------ | :------: | ------- | -------------------------------------------- |
| `data`    | object |     ✅    | —       | Payload wrapper containing component details |

***

### `Productboard Create Entities Relationships V2`

Integration name: **PRODUCTBOARD\_CREATE\_ENTITIES\_RELATIONSHIPS\_V2**

Tool to create a relationship between two entities in Productboard. Use when you need to establish a parent, child, link, or dependency relationship between entities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                             |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------- |
| `id`      | string |     ✅    | `"8b7c044b-ff01-4ab1-8195-1802acec65ee"` | The UUID of the entity to create the relationship from. |
| `data`    | object |     ✅    | —                                        | The relationship data payload.                          |

***

### `Productboard Create Entities V2`

Integration name: **PRODUCTBOARD\_CREATE\_ENTITIES\_V2**

Tool to create a new entity in Productboard using the v2 API. Use when you need to create products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                           |
| --------- | ------ | :------: | ------- | ----------------------------------------------------- |
| `data`    | object |     ✅    | —       | Entity data including type, fields, and relationships |

***

### `Productboard Create Feature`

Integration name: **PRODUCTBOARD\_CREATE\_FEATURE**

Tool to create a new feature or subfeature in Productboard. Use when you need to add a feature to a product or component, or create a subfeature under an existing feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description          |
| --------- | ------ | :------: | ------- | -------------------- |
| `data`    | object |     ✅    | —       | Feature data payload |

***

### `Productboard Create Feature Objective Link`

Integration name: **PRODUCTBOARD\_CREATE\_FEATURE\_OBJECTIVE\_LINK**

Tool to create a link between a feature and an objective (OKR). Use when associating a feature with a specific objective to track alignment.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                       |
| ------------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------- |
| `id`          | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | UUID of the feature to link. Must be a top-level feature ID, not a subfeature ID. |
| `objectiveId` | string |     ✅    | `"53e05804-3349-4b98-9ca6-46fdb724b9da"` | UUID of the objective to link to the feature.                                     |

***

### `Productboard Create Note Link`

Integration name: **PRODUCTBOARD\_CREATE\_NOTE\_LINK**

Tool to create a link between a note and an entity. Use when associating a note with a productboard entity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                             |
| ---------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------- |
| `noteId`   | string |     ✅    | `"3fa85f64-5717-4562-b3fc-2c963f66afa6"` | UUID of the note to link                                                |
| `entityId` | string |     ✅    | `"1b6c8c76-8f5d-4e1a-9f09-5efb6c4975c1"` | UUID of the entity (product, component, feature, or subfeature) to link |

***

### `Productboard Create Notes V2`

Integration name: **PRODUCTBOARD\_CREATE\_NOTES\_V2**

Tool to create a new note in Productboard using the v2 API. Use when you need to create simple text notes or conversation-style notes with optional relationships to customers, companies, or external links.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                   |
| --------- | ------ | :------: | ------- | ------------------------------------------------------------- |
| `data`    | object |     ✅    | —       | Note data including type, fields, and optional relationships. |

***

### `Productboard Create Objectives`

Integration name: **PRODUCTBOARD\_CREATE\_OBJECTIVES**

Tool to create a new objective in Productboard. Use when you need to create a strategic objective with optional details like owner, parent, status, and timeframe.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                    |
| --------- | ------ | :------: | ------- | ---------------------------------------------- |
| `data`    | object |     ✅    | —       | Data payload containing the objective details. |

***

### `Productboard Create Objectives Links Features`

Integration name: **PRODUCTBOARD\_CREATE\_OBJECTIVES\_LINKS\_FEATURES**

Tool to create a new link between an objective and a feature. Use when associating a feature with an objective (OKR).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example                                  | Description                                   |
| ----------- | ------ | :------: | ---------------------------------------- | --------------------------------------------- |
| `id`        | string |     ✅    | `"16768e93-f527-42d2-a740-f7dc765bd721"` | UUID of the objective to link to a feature.   |
| `featureId` | string |     ✅    | `"2d836357-4dca-4d67-bd3c-3d1d0e20c4bb"` | UUID of the feature to link to the objective. |

***

### `Productboard Create Release`

Integration name: **PRODUCTBOARD\_CREATE\_RELEASE**

Tool to create a new release in Productboard. Use when you need to create a release with a name, description, and assigned release group.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                       |
| --------- | ------ | :------: | ------- | ------------------------------------------------- |
| `data`    | object |     ✅    | —       | Payload containing the release details to create. |

***

### `Productboard Create Users`

Integration name: **PRODUCTBOARD\_CREATE\_USERS**

Tool to create a new user in Productboard. Use when you need to add a user with email, name, and/or external identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                              |
| --------- | ------ | :------: | ------- | -------------------------------------------------------- |
| `data`    | object |     ✅    | —       | User data containing email, name, and externalId fields. |

***

### `Productboard Create Webhook`

Integration name: **PRODUCTBOARD\_CREATE\_WEBHOOK**

Tool to create a new webhook subscription. Use when you need to register a public endpoint to receive webhooks from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type    | Required | Example                                                             | Description                                                                                                                              |
| ---------------------- | ------- | :------: | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                  | string  |     ✅    | `"https://example.com/webhook"`                                     | Public URL where Productboard will send the subscriptionProbe (GET) and webhookNotification (POST) callbacks.                            |
| `name`                 | string  |     ✅    | `"My Webhook – Notes"`                                              | Human-readable name for the webhook subscription.                                                                                        |
| `events`               | array   |     ✅    | `[{"eventType":"insight.created"},{"eventType":"release.updated"}]` | List of events to subscribe to, each with eventType. Examples: insight.created, release.updated, key-result.updated, key-result.deleted. |
| `notification_headers` | object  |          | —                                                                   | Optional headers Productboard will include when sending callbacks.                                                                       |
| `notification_version` | integer |     ✅    | `1`                                                                 | Notification payload version for callbacks (default: 1).                                                                                 |

***

### `Productboard Delete Company`

Integration name: **PRODUCTBOARD\_DELETE\_COMPANY**

Tool to delete a specific company. Use when you have confirmed the company ID and need to remove it from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example   | Description                 |
| --------- | ------ | :------: | --------- | --------------------------- |
| `id`      | string |     ✅    | `"12345"` | ID of the company to delete |

***

### `Productboard Delete Company Field`

Integration name: **PRODUCTBOARD\_DELETE\_COMPANY\_FIELD**

Tool to delete a specific company custom field. Use after confirming the field ID and ensuring no dependencies remain.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                            |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `id`      | string |     ✅    | `"6ce5b872-0144-4862-a215-7d6434ba9662"` | ID of the company custom field to delete (UUID format) |

***

### `Productboard Delete Custom Field Value`

Integration name: **PRODUCTBOARD\_DELETE\_CUSTOM\_FIELD\_VALUE**

Tool to delete a custom field value from a hierarchy entity in Productboard. Use when you need to remove a custom field value from a product, component, or feature after confirming the field and entity IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                |
| -------------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `customField.id`     | string |     ✅    | `"39acaad1-0dba-4ddc-8f41-cacf56829efb"` | UUID of the custom field whose value should be deleted.                                                    |
| `hierarchyEntity.id` | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | UUID of the hierarchy entity (product, component, or feature) from which to delete the custom field value. |

***

### `Productboard Delete Entities Relationships V2`

Integration name: **PRODUCTBOARD\_DELETE\_ENTITIES\_RELATIONSHIPS\_V2**

Tool to delete a relationship between two entities. Use when you need to remove a specific relationship type between entities in Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter  | Type   | Required | Example                                  | Description                                                               |
| ---------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------- |
| `id`       | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | The UUID of the entity to delete the relationship from.                   |
| `type`     | string |     ✅    | `"link"`                                 | The type of the relationship to delete (e.g., 'link', 'parent', 'child'). |
| `targetId` | string |     ✅    | `"53e05804-3349-4b98-9ca6-46fdb724b9da"` | The UUID of the target entity to remove the relationship with.            |

***

### `Productboard Delete Entities V2`

Integration name: **PRODUCTBOARD\_DELETE\_ENTITIES\_V2**

Tool to delete a PM entity using the v2 API. Use when you need to permanently remove an entity from Productboard. Returns 204 on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                        |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------- |
| `id`      | string |     ✅    | `"49edf405-92c7-4815-9396-3ef4322c656f"` | The ID of the PM entity to delete. |

***

### `Productboard Delete Feature`

Integration name: **PRODUCTBOARD\_DELETE\_FEATURE**

Tool to delete a specific feature. Use when you have confirmed the feature ID and deleted its subfeatures before removal.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                         |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of the feature to delete; ensure subfeatures are deleted first |

***

### `Productboard Delete Feature Objective Link`

Integration name: **PRODUCTBOARD\_DELETE\_FEATURE\_OBJECTIVE\_LINK**

Tool to delete a link between a feature and an objective. Use when you need to remove the association between a specific feature and objective.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                 |
| ------------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------- |
| `id`          | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | UUID of the feature from which to remove the objective link |
| `objectiveId` | string |     ✅    | `"16768e93-f527-42d2-a740-f7dc765bd721"` | UUID of the objective to unlink from the feature            |

***

### `Productboard Delete Initiatives`

Integration name: **PRODUCTBOARD\_DELETE\_INITIATIVES**

Tool to delete a specific initiative. Use when you have confirmed the initiative ID and need to permanently remove it from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                      |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------- |
| `id`      | string |     ✅    | `"12345678-1234-1234-1234-123456789abc"` | UUID of the initiative to delete |

***

### `Productboard Delete Key Results`

Integration name: **PRODUCTBOARD\_DELETE\_KEY\_RESULTS**

Tool to delete a specific key result from Productboard. Use when you need to remove a key result that is no longer relevant or was created in error.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                 |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------- |
| `id`      | string |     ✅    | `"00000000-0000-0000-0000-000000000000"` | Entity identifier of the key result to delete (UUID format) |

***

### `Productboard Delete Notes Relationships V2`

Integration name: **PRODUCTBOARD\_DELETE\_NOTES\_RELATIONSHIPS\_V2**

Tool to delete a note relationship. Use when you need to remove a specific relationship between a note and another entity (customer or link) in Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                                                       |
| ------------ | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of the note                                                                                                                                                  |
| `targetId`   | string |     ✅    | `"223e4567-e89b-12d3-a456-426614174001"` | UUID of the target entity (customer, organization, or link).                                                                                                      |
| `targetType` | string |     ✅    | `"link"`                                 | Relationship type to delete. 'customer' deletes customer relationship (user or company), 'link' deletes link relationship (feature, component or product entity). |

***

### `Productboard Delete Notes V2`

Integration name: **PRODUCTBOARD\_DELETE\_NOTES\_V2**

Tool to delete a note using the v2 API. Permanently removes the note and all its associated data. Returns 204 on success.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------- |
| `id`      | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of the note to delete |

***

### `Productboard Delete Note Tag`

Integration name: **PRODUCTBOARD\_DELETE\_NOTE\_TAG**

Tool to remove a tag from a Productboard note. Use when you need to detach a specific tag from a note after tagging.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example      | Description                                 |
| --------- | ------ | :------: | ------------ | ------------------------------------------- |
| `noteId`  | string |     ✅    | `"1234abcd"` | ID of the note from which to remove the tag |
| `tagName` | string |     ✅    | `"Urgent"`   | Name of the tag to remove                   |

***

### `Productboard Delete Objectives`

Integration name: **PRODUCTBOARD\_DELETE\_OBJECTIVES**

Tool to delete a specific objective from Productboard. Use when you have confirmed the objective ID and need to permanently remove it.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `id`      | string |     ✅    | `"9b4bcb49-7bbd-48a8-8d53-c8ac6e960dde"` | Entity identifier (UUID of the objective to delete). |

***

### `Productboard Delete Objectives Links Features`

Integration name: **PRODUCTBOARD\_DELETE\_OBJECTIVES\_LINKS\_FEATURES**

Tool to delete a link between an objective and a feature. Use when you need to remove the association between a specific objective and feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                      |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------ |
| `id`         | string |     ✅    | `"3e3ecf75-8a0a-421e-8de2-85a6ab15c50e"` | UUID of the objective                            |
| `feature_id` | string |     ✅    | `"2d836357-4dca-4d67-bd3c-3d1d0e20c4bb"` | UUID of the feature to unlink from the objective |

***

### `Productboard Delete Release`

Integration name: **PRODUCTBOARD\_DELETE\_RELEASE**

Tool to delete a specific release. Use when you have confirmed the release ID and need to remove it from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                  |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"3fa0ae50-cb39-4405-985c-8976d35ea344"` | UUID of the release to delete (e.g., '3fa0ae50-cb39-4405-985c-8976d35ea344') |

***

### `Productboard Delete User`

Integration name: **PRODUCTBOARD\_DELETE\_USER**

Tool to delete a specific user. Use when you have confirmed the user ID and need to remove it from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                      | Description              |
| --------- | ------ | :------: | ---------------------------- | ------------------------ |
| `id`      | string |     ✅    | `"5e8f0b9c2d3a4b6f7d8e9a0c"` | ID of the user to delete |

***

### `Productboard Delete Webhook`

Integration name: **PRODUCTBOARD\_DELETE\_WEBHOOK**

Tool to delete a webhook subscription. Use when you need to remove a webhook subscription from Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                               |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"995035aa-37f2-4165-9ea5-6c9e801411ab"` | UUID of the webhook subscription to delete (e.g., '995035aa-37f2-4165-9ea5-6c9e801411ab') |

***

### `Productboard Get Component`

Integration name: **PRODUCTBOARD\_GET\_COMPONENT**

Tool to retrieve details of a specific component. Use when you have the component ID to fetch its full details including description, parent hierarchy, owner, and timestamps.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                            |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------ |
| `id`      | string |     ✅    | `"ee0b1742-017a-4ad0-b077-a45ca6bc4ec6"` | Entity identifier (UUID) of the component to retrieve. |

***

### `Productboard Get Custom Field Value`

Integration name: **PRODUCTBOARD\_GET\_CUSTOM\_FIELD\_VALUE**

Tool to retrieve a custom field's value for a specific hierarchy entity. Use when you need to get the current value of a custom field on a product, component, or feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                       |
| -------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------- |
| `customField.id`     | string |     ✅    | `"025e5245-2b1d-4ee1-9119-a5d51a1c15d1"` | UUID of the custom field to retrieve the value for.                                               |
| `hierarchyEntity.id` | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | UUID of the hierarchy entity (product, component, or feature) to get the custom field value from. |

***

### `Productboard Get Entities Configurations V2`

Integration name: **PRODUCTBOARD\_GET\_ENTITIES\_CONFIGURATIONS\_V2**

Tool to retrieve entity configuration for a specific type. Use when you need to understand the structure, fields, and relationships available for an entity type in Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example     | Description                                                                                                                                                                |
| --------- | ------ | :------: | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`    | string |     ✅    | `"feature"` | The type of the entity to retrieve configuration for. Must be one of: product, component, feature, subfeature, initiative, objective, keyResult, release, or releaseGroup. |

***

### `Productboard Get Entities V2`

Integration name: **PRODUCTBOARD\_GET\_ENTITIES\_V2**

Tool to retrieve a PM entity using the v2 API. Use when you need to fetch details of a specific entity by its UUID. Returns entity data with optional field filtering.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                       |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | The UUID of the entity to retrieve.                                                                                                                                                                                                               |
| `fields`  | array  |          | `["all"]`                                | Controls which fields are returned in the response. Options: not specified (default, returns only non-empty fields), 'all' (returns all fields including null values), or specific field names like 'name', 'status' to return only those fields. |

***

### `Productboard Get Feature Release Assignment`

Integration name: **PRODUCTBOARD\_GET\_FEATURE\_RELEASE\_ASSIGNMENT**

Tool to retrieve a specific feature release assignment. Use when you need to check if a particular feature is assigned to a specific release. Returns assignment status (true/false) and entity references.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------ |
| `feature.id` | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | ID of the feature to check assignment for. |
| `release.id` | string |     ✅    | `"82709d41-1e90-4213-ba63-aecfb9aeca28"` | ID of the release to check assignment for. |

***

### `Productboard Get Hierarchy Entities Custom Fields`

Integration name: **PRODUCTBOARD\_GET\_HIERARCHY\_ENTITIES\_CUSTOM\_FIELDS**

Tool to retrieve a specific custom field definition for hierarchy entities. Use when you have a custom field ID to fetch its complete details including type, name, description, and options.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                  |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------ |
| `id`      | string |     ✅    | `"025e5245-2b1d-4ee1-9119-a5d51a1c15d1"` | Entity identifier. The UUID of the custom field to retrieve. |

***

### `Productboard Get Notes Configurations V2`

Integration name: **PRODUCTBOARD\_GET\_NOTES\_CONFIGURATIONS\_V2**

Tool to retrieve note configuration by type (simple, conversation, or opportunity). Use when you need to understand the fields, relationships, and constraints for a specific note type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example    | Description                                                                                          |
| --------- | ------ | :------: | ---------- | ---------------------------------------------------------------------------------------------------- |
| `type`    | string |     ✅    | `"simple"` | The entity type to retrieve configuration for. Must be one of: simple, conversation, or opportunity. |

***

### `Productboard Get Notes V2`

Integration name: **PRODUCTBOARD\_GET\_NOTES\_V2**

Tool to retrieve a note using the v2 API. Use when you need to fetch details of a specific note by its UUID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                                                                                                                                                                                                                                                         |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of the note to retrieve                                                                                                                                                                                                                                                                                                        |
| `fields`  | array  |          | `["all"]`                                | Controls which fields are returned in the response. Not specified: returns only fields with non-empty values (default). 'all': returns all fields including null values. Specific field names: returns only specified fields. Combining 'all' with specific fields results in a 400 error. Unknown field IDs result in a 400 error. |

***

### `Productboard Get Objective`

Integration name: **PRODUCTBOARD\_GET\_OBJECTIVE**

Tool to retrieve details of a specific objective. Use when you have the objective ID to fetch its full details including name, description, status, timeframe, and owner.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                     |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------------- |
| `id`      | string |     ✅    | `"312f99a8-f200-4434-a724-c78b25858f2a"` | Entity identifier of the objective to retrieve. |

***

### `Productboard Get Release`

Integration name: **PRODUCTBOARD\_GET\_RELEASE**

Tool to retrieve details of a specific release by ID. Use when you need complete information about a single release.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                          |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------- |
| `id`      | string |     ✅    | `"3fa0ae50-cb39-4405-985c-8976d35ea344"` | Entity identifier (UUID) of the release to retrieve. |

***

### `Productboard Get Release Group`

Integration name: **PRODUCTBOARD\_GET\_RELEASE\_GROUP**

Tool to retrieve details of a specific release group. Use when you have the release group ID to fetch its full details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------- |
| `id`      | string |     ✅    | `"00000000-0000-0000-0000-000000000000"` | Entity identifier (UUID) of the release group to retrieve. |

***

### `Productboard Get Webhooks`

Integration name: **PRODUCTBOARD\_GET\_WEBHOOKS**

Tool to retrieve details of a specific webhook subscription. Use when you have the webhook ID to fetch its complete configuration.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                    |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------- |
| `id`      | string |     ✅    | `"995035aa-37f2-4165-9ea5-6c9e801411ab"` | Entity identifier of the webhook subscription. |

***

### `Productboard List Analytics Member Activities V2`

Integration name: **PRODUCTBOARD\_LIST\_ANALYTICS\_MEMBER\_ACTIVITIES\_V2**

Tool to retrieve member activity analytics data from Productboard. Use when you need to analyze member engagement metrics, activity patterns, or usage statistics. Supports date-range filtering and pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example        | Description                                                             |
| ------------ | ------- | :------: | -------------- | ----------------------------------------------------------------------- |
| `limit`      | integer |          | `100`          | Maximum number of records to return. Default is 100.                    |
| `dateTo`     | string  |          | `"2025-10-31"` | End date for filtering activity data in ISO 8601 format (YYYY-MM-DD).   |
| `dateFrom`   | string  |          | `"2025-10-01"` | Start date for filtering activity data in ISO 8601 format (YYYY-MM-DD). |
| `pageCursor` | string  |          | —              | Cursor for pagination to get the next page of results.                  |

***

### `Productboard List Companies`

Integration name: **PRODUCTBOARD\_LIST\_COMPANIES**

Tool to list companies. Use when you need a paginated list of companies with optional filters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `term`       | string  |          | —       | Filter companies by name search term.                                                                      |
| `hasNotes`   | string  |          | —       | "true" returns only companies with notes; "false" returns only companies without notes.                    |
| `featureId`  | string  |          | —       | Filter companies associated with the specified feature ID.                                                 |
| `pageLimit`  | integer |          | `100`   | Page size; default is 100.                                                                                 |
| `pageOffset` | integer |          | `0`     | Offset token for the next page; default is 0. Use the returned offset from a previous response to iterate. |

***

### `Productboard List Company Fields`

Integration name: **PRODUCTBOARD\_LIST\_COMPANY\_FIELDS**

Lists all custom field definitions for companies in your Productboard workspace. This endpoint returns metadata about company custom fields (field schemas), not the actual values. Use this to discover available company fields before setting or retrieving field values. Returns field ID, name, type, and optional description/settings for each field.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Productboard List Custom Fields`

Integration name: **PRODUCTBOARD\_LIST\_CUSTOM\_FIELDS**

Lists custom field definitions for hierarchy entities (Products, Components, Features). Returns metadata about custom fields (name, type, description) but not their values. Use this to discover available custom fields before querying their values for specific entities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example    | Description                                                                                                                                                                                                                                                                                                                             |
| ------------ | ------- | :------: | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`       | array   |     ✅    | `["text"]` | List of custom field types to filter by. Valid types: 'text' (text fields), 'custom-description' (description fields), 'number' (numeric fields), 'dropdown' (single-select dropdown), 'multi-dropdown' (multi-select dropdown), 'member' (team member fields). Multiple types can be specified to retrieve all matching custom fields. |
| `pageLimit`  | integer |          | `100`      | Maximum number of results per page. Controls the page size of the response.                                                                                                                                                                                                                                                             |
| `pageCursor` | string  |          | —          | Cursor for pagination. Use the value from links.next of a previous response to retrieve the next page of results.                                                                                                                                                                                                                       |

***

### `Productboard List Custom Field Values`

Integration name: **PRODUCTBOARD\_LIST\_CUSTOM\_FIELD\_VALUES**

Lists custom field values for hierarchy entities (products, components, features) in Productboard. Returns only non-empty values. Filter by custom field type or specific field ID. Combine filters to narrow results (e.g., get specific field values for a specific entity). Use links.next for pagination if more results exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                    |
| -------------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`               | array   |          | `["text"]`                               | Filter by custom field type(s). Possible values include: 'text', 'number', 'dropdown' (single-select), 'multi-dropdown' (multi-select), 'member', 'custom-description'. Provide a list to filter by multiple types. Required if customFieldId is not provided. |
| `pageLimit`          | integer |          | `100`                                    | Maximum number of results per page. Controls the page size of the response.                                                                                                                                                                                    |
| `pageCursor`         | string  |          | —                                        | Cursor for pagination. Use the value from links.next of a previous response to retrieve the next page of results.                                                                                                                                              |
| `customField.id`     | string  |          | `"4c6d7e8f-9a1b-2c3d-4e5f-6789012345ab"` | Filter by custom field ID. Use this to get all values for a specific custom field definition across entities. Required if type is not provided.                                                                                                                |
| `hierarchyEntity.id` | string  |          | `"5f8d1e2b-3a4c-4d1f-9e62-1234567890ab"` | Filter by hierarchy entity ID. Hierarchy entities include products, components, and features. Use this to get all custom field values for a specific entity.                                                                                                   |

***

### `Productboard List Entities Configurations V2`

Integration name: **PRODUCTBOARD\_LIST\_ENTITIES\_CONFIGURATIONS\_V2**

Tool to retrieve configurations for all entity types in Productboard. Use when you need to understand available fields, relationships, and metadata for entity types like features, components, products, etc.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example | Description                                                                     |
| ------------- | ------ | :------: | ------- | ------------------------------------------------------------------------------- |
| `page_cursor` | string |          | —       | Cursor for pagination. Use the pageCursor from links.next of previous response. |

***

### `Productboard List Entities Relationships V2`

Integration name: **PRODUCTBOARD\_LIST\_ENTITIES\_RELATIONSHIPS\_V2**

Tool to retrieve relationships for an entity in Productboard. Use when you need to find parent, child, or link relationships between entities.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                                                    |
| ------------ | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `id`         | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | The UUID of the entity to retrieve relationships for.                                                                          |
| `type`       | string |          | `"link"`                                 | Enum for entity relationship types.                                                                                            |
| `targetId`   | string |          | `"53e05804-3349-4b98-9ca6-46fdb724b9da"` | Filter by the UUID of the target entity in the relationships.                                                                  |
| `pageCursor` | string |          | —                                        | Cursor pointing to the current position in the paginated list. Use the cursor from the previous response to get the next page. |

***

### `Productboard List Entities V2`

Integration name: **PRODUCTBOARD\_LIST\_ENTITIES\_V2**

Tool to list entities from Productboard using the v2 API. Use when you need a paginated list of PM entities (products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups) with optional filters.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                       |
| ------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`        | string  |          | `"My Feature"`                           | Filter by entity name.                                                                                                                                                                                                                                            |
| `type`        | string  |     ✅    | `"feature"`                              | The type of the entity to list. Currently supported PM entity types: product, component, feature, subfeature, initiative, objective, keyResult, release, releaseGroup. The exact types available may vary based on the configuration of the workspace.            |
| `fields`      | array   |          | `["name","status"]`                      | Controls which fields are returned in the response. Not specified: Returns only fields with non-empty values (default). "all": Returns all fields, including those with null values. Specific fields: Returns only the specified fields (e.g., "name", "status"). |
| `archived`    | boolean |          | `false`                                  | Filter by archived status (true/false).                                                                                                                                                                                                                           |
| `owner.id`    | string  |          | `"123e4567-e89b-12d3-a456-426614174000"` | Filter by owner ID.                                                                                                                                                                                                                                               |
| `parent.id`   | string  |          | `"abc12345-6789-0def-1234-567890abcdef"` | Filter by parent PM entity ID.                                                                                                                                                                                                                                    |
| `status.id`   | string  |          | `"789e0123-e89b-98d7-a123-456789012345"` | Filter by status ID.                                                                                                                                                                                                                                              |
| `pageCursor`  | string  |          | `"eyJwYWdlIjoxfQ=="`                     | Cursor pointing to the current position in the paginated list.                                                                                                                                                                                                    |
| `owner.email` | string  |          | `"owner@example.com"`                    | Filter by owner email.                                                                                                                                                                                                                                            |
| `status.name` | string  |          | `"In Progress"`                          | Filter by status name.                                                                                                                                                                                                                                            |

***

### `Productboard List Feature Initiatives`

Integration name: **PRODUCTBOARD\_LIST\_FEATURE\_INITIATIVES**

Tool to list initiatives linked to a given feature. Use when you need to retrieve all initiatives associated with a feature after confirming its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                     |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `id`          | string |     ✅    | `"1b6c8c76-8f5d-4e1a-9f09-5efb6c4975c1"` | UUID of the feature to list its linked initiatives                              |
| `page_cursor` | string |          | —                                        | Cursor for pagination. Use the pageCursor from links.next of previous response. |

***

### `Productboard List Feature Objectives`

Integration name: **PRODUCTBOARD\_LIST\_FEATURE\_OBJECTIVES**

Lists all objectives (OKRs) linked to a top-level feature. Returns objective IDs and hypermedia links. Note: This endpoint only works with top-level features, not subfeatures. Use PRODUCTBOARD\_LIST\_FEATURES to obtain valid feature IDs first.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                                                               |
| ------------ | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `id`         | string |     ✅    | `"01234567-89ab-cdef-0123-456789abcdef"` | UUID of the feature whose linked objectives to list. Must be a top-level feature ID, not a subfeature ID. |
| `pageCursor` | string |          | `"abcdef123456"`                         | Cursor token from the previous page's links.next for pagination                                           |

***

### `Productboard List Feature Release Assignments`

Integration name: **PRODUCTBOARD\_LIST\_FEATURE\_RELEASE\_ASSIGNMENTS**

Tool to list feature–release assignments. Use when you need to retrieve assignments for a specific feature or release with optional state or date filters; paginate using links.next.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter                        | Type    | Required | Example                                  | Description                                                                                                       |
| -------------------------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `pageLimit`                      | integer |          | `100`                                    | Maximum number of results per page. Controls the page size of the response.                                       |
| `feature.id`                     | string  |          | `"d5f7c8a3-4e29-4d58-81fd-0ee234abcd12"` | ID of the feature to filter by.                                                                                   |
| `pageCursor`                     | string  |          | —                                        | Cursor for pagination. Use the value from links.next of a previous response to retrieve the next page of results. |
| `release.id`                     | string  |          | `"a1b2c3d4-ef56-7890-abcd-1234567890ab"` | ID of the release to filter by.                                                                                   |
| `release.state`                  | string  |          | `"active"`                               | Filter assignments by release state (e.g., planned, active, closed).                                              |
| `release.timeframe.endDate.to`   | string  |          | `"2023-12-31"`                           | Filter assignments whose release end date is on or before this date (YYYY-MM-DD).                                 |
| `release.timeframe.endDate.from` | string  |          | `"2023-01-01"`                           | Filter assignments whose release end date is on or after this date (YYYY-MM-DD).                                  |

***

### `Productboard List Feature Statuses`

Integration name: **PRODUCTBOARD\_LIST\_FEATURE\_STATUSES**

Tool to list feature statuses. Use when you need to retrieve all feature status records in a paginated form. Follow `links.next` for additional pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter       | Type   | Required | Example | Description                                                                                                       |
| --------------- | ------ | :------: | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `next_page_url` | string |          | —       | Full URL for the next page of feature statuses; if omitted, the first page at '/feature-statuses' will be fetched |

***

### `Productboard List Feedback Form Configurations`

Integration name: **PRODUCTBOARD\_LIST\_FEEDBACK\_FORM\_CONFIGURATIONS**

Tool to list feedback form configurations. Use when you need a paginated list of feedback form configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                |
| ------------ | ------- | :------: | ------- | ---------------------------------------------------------------------------------------------------------- |
| `pageLimit`  | integer |          | `100`   | Page size; default is 100. Must be ≥ 1.                                                                    |
| `pageOffset` | integer |          | `0`     | Offset token for the next page; default is 0. Use the returned offset from a previous response to iterate. |

***

### `Productboard List Initiatives`

Integration name: **PRODUCTBOARD\_LIST\_INITIATIVES**

Tool to list initiatives from Productboard. Use when you need a paginated list of initiatives with optional filters for archived status, owner, and status. Follow `links.next` URL to retrieve additional pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example                                  | Description                                                                                                                           |
| ------------- | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `archived`    | boolean |          | `false`                                  | Filter by archived status. True returns only archived initiatives, False returns only unarchived initiatives.                         |
| `pageLimit`   | integer |          | `100`                                    | Number of initiatives to return per page. Default is 100.                                                                             |
| `status.id`   | string  |          | `"123e4567-e89b-12d3-a456-426614174000"` | Filter initiatives by status ID (UUID format).                                                                                        |
| `pageCursor`  | string  |          | —                                        | Cursor for fetching subsequent pages. Obtain this from the 'pageCursor' field in a previous response. Leave empty for the first page. |
| `owner.email` | string  |          | `"user@example.com"`                     | Filter initiatives by the owner's email address.                                                                                      |
| `status.name` | string  |          | `"In Progress"`                          | Filter initiatives by status name.                                                                                                    |

***

### `Productboard List Jira Integrations`

Integration name: **PRODUCTBOARD\_LIST\_JIRA\_INTEGRATIONS**

Tool to list Jira integrations. Use when you need to retrieve Productboard's connected Jira integrations with optional pagination.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                   | Description                                                                                                                      |
| --------- | ------ | :------: | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `pageUrl` | string |          | `"https://api.productboard.com/jira-integrations?page=2"` | URL for the next page, obtained from the previous response's links.next. If not set, the first page of integrations is returned. |

***

### `Productboard List Key Results`

Integration name: **PRODUCTBOARD\_LIST\_KEY\_RESULTS**

List key results from Productboard. Key results are measurable outcomes that track progress toward objectives. Use this action to:

* Get all key results in the workspace
* Filter key results by parent objective, status, owner, or archived state
* Track progress on objectives through their associated key results

Returns paginated results with comprehensive details including progress metrics, ownership, and status. Note: If key results are not enabled in the workspace, this returns an empty list gracefully.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type    | Required | Example              | Description                                                                                                                                                          |
| ------------- | ------- | :------: | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `archived`    | boolean |          | `false`              | Filter by archived state. Set to false to get only active key results, true for archived ones. Leave unset to get all key results regardless of archived state.      |
| `pageLimit`   | integer |          | `100`                | Number of key results to return per page. Default is 100.                                                                                                            |
| `parent.id`   | string  |          | `"pb_PARENT_ID_123"` | Filter key results by parent objective ID. Key results in Productboard are typically linked to objectives. Use this to get all key results for a specific objective. |
| `status.id`   | string  |          | `"pb_STATUS_ID_456"` | Filter key results by their status ID. Use this when you know the exact status identifier.                                                                           |
| `pageCursor`  | string  |          | —                    | Cursor for fetching subsequent pages. Obtain this from the 'pageCursor' field in a previous response. Leave empty for the first page. Valid for 1 minute.            |
| `owner.email` | string  |          | `"user@example.com"` | Filter key results by the owner's email address. Returns only key results owned by the specified user.                                                               |
| `status.name` | string  |          | `"In Progress"`      | Filter key results by status name (e.g., 'In Progress', 'Completed', 'At Risk'). More user-friendly than status.id.                                                  |

***

### `Productboard List Notes Configurations V2`

Integration name: **PRODUCTBOARD\_LIST\_NOTES\_CONFIGURATIONS\_V2**

Tool to list note configurations from Productboard v2 API. Use when you need to discover available fields, relationships, and validation rules for different note types (simple, conversation, opportunity, feature, initiative).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type  | Required | Example                     | Description                                                                                                                                                         |
| --------- | ----- | :------: | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`    | array |          | `["simple","conversation"]` | Optional list of entity types to filter results. Valid values: simple, conversation, opportunity, feature, initiative. If omitted, returns all note configurations. |

***

### `Productboard List Notes Links`

Integration name: **PRODUCTBOARD\_LIST\_NOTES\_LINKS**

Tool to list links associated with a note. Returns entities (products, components, features, or subfeatures) linked to the specified note.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                            |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------- |
| `noteId`  | string |     ✅    | `"3203b53b-fad6-4463-9a71-979b2dd85791"` | UUID of the note to retrieve links for |

***

### `Productboard List Notes Relationships V2`

Integration name: **PRODUCTBOARD\_LIST\_NOTES\_RELATIONSHIPS\_V2**

Tool to retrieve relationships associated with a note. Returns entities (users, companies, features, components, products) linked to the specified note via customer or link relationships.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                        |
| ------------ | ------- | :------: | ---------------------------------------- | -------------------------------------------------- |
| `id`         | string  |     ✅    | `"0468e509-9472-4a71-ac54-499845b3a255"` | UUID of the note                                   |
| `limit`      | integer |          | —                                        | Maximum number of relationships to return per page |
| `pageCursor` | string  |          | —                                        | Cursor for pagination through relationships        |

***

### `Productboard List Notes V2`

Integration name: **PRODUCTBOARD\_LIST\_NOTES\_V2**

Tool to retrieve a paginated list of notes from Productboard using the v2 API. Use when you need to list notes with advanced filtering by archived/processed status, owner, creator, source, or date ranges. Supports field selection to optimize response size.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type    | Required | Example                                  | Description                                                                                                                                                                                                                                                                               |
| ----------------- | ------- | :------: | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fields`          | array   |          | —                                        | Controls which fields are returned in the response. Options: not specified (returns only non-empty fields), 'all' (returns all fields including null), or specific field names (e.g., \['name', 'tags']). Cannot combine 'all' with specific field IDs. See API docs for full field list. |
| `archived`        | boolean |          | `true`                                   | Filter notes by archived status. Set to true to show only archived notes, false for non-archived notes. Omit to show all.                                                                                                                                                                 |
| `owner_id`        | string  |          | `"e9f642b4-f0f8-4acc-ba0c-acc76453f60e"` | Filter notes by owner UUID. Returns notes owned by the specified user.                                                                                                                                                                                                                    |
| `createdTo`       | string  |          | `"2023-12-31T23:59:59Z"`                 | Filter notes created on or before this date/time (inclusive). Must be in ISO-8601 format (e.g., '2023-12-31T23:59:59Z'). Can be combined with createdFrom to define a range.                                                                                                              |
| `processed`       | boolean |          | `true`                                   | Filter notes by processed status. Set to true to show only processed notes, false for unprocessed notes. Omit to show all.                                                                                                                                                                |
| `updatedTo`       | string  |          | `"2023-12-31T23:59:59Z"`                 | Filter notes updated on or before this date/time (inclusive). Must be in ISO-8601 format (e.g., '2023-12-31T23:59:59Z'). Can be combined with updatedFrom to define a range.                                                                                                              |
| `creator_id`      | string  |          | `"e9f642b4-f0f8-4acc-ba0c-acc76453f60e"` | Filter notes by creator UUID. Returns notes created by the specified user.                                                                                                                                                                                                                |
| `pageCursor`      | string  |          | `"eyJsYXN0SWQiOiIxMjM0NTY3ODkwIn0="`     | Cursor for pagination. Use the value from the previous response's links.next field to retrieve the next page.                                                                                                                                                                             |
| `createdFrom`     | string  |          | `"2023-10-01T00:00:00Z"`                 | Filter notes created on or after this date/time (inclusive). Must be in ISO-8601 format (e.g., '2023-10-01T12:00:00Z'). Can be combined with createdTo to define a range.                                                                                                                 |
| `owner_email`     | string  |          | `"jane.doe@example.com"`                 | Filter notes by owner email address. Returns notes owned by the user with this email.                                                                                                                                                                                                     |
| `updatedFrom`     | string  |          | `"2023-10-01T00:00:00Z"`                 | Filter notes updated on or after this date/time (inclusive). Must be in ISO-8601 format (e.g., '2023-10-01T12:00:00Z'). Can be combined with updatedTo to define a range.                                                                                                                 |
| `creator_email`   | string  |          | `"john.doe@example.com"`                 | Filter notes by creator email address. Returns notes created by the user with this email.                                                                                                                                                                                                 |
| `source_recordId` | string  |          | `"ticket-12345"`                         | Filter notes by the external source record ID. Returns all notes where the source.recordId matches the provided value. Multiple notes can share the same recordId and all will be returned. Can be combined with other filters.                                                           |

***

### `Productboard List Note Tags`

Integration name: **PRODUCTBOARD\_LIST\_NOTE\_TAGS**

Tool to retrieve all tags associated with a specific Productboard note. Use when you need to view the current tags applied to a note for filtering, categorization, or analysis purposes.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                  |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------- |
| `noteId`  | string |     ✅    | `"3203b53b-fad6-4463-9a71-979b2dd85791"` | UUID of the note to retrieve tags for. Obtain from list/create note actions. |

***

### `Productboard List Objectives Links Features`

Integration name: **PRODUCTBOARD\_LIST\_OBJECTIVES\_LINKS\_FEATURES**

Lists all features linked to a specific objective. Returns feature IDs and hypermedia links for each linked feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                  | Description                                                     |
| ------------ | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------- |
| `id`         | string |     ✅    | `"9b03e741-7956-455a-a18e-06ba87b5e9b6"` | UUID of the objective whose linked features to list.            |
| `pageCursor` | string |          | `"MTAw"`                                 | Cursor token from the previous page's links.next for pagination |

***

### `Productboard List Objectives Links Initiatives`

Integration name: **PRODUCTBOARD\_LIST\_OBJECTIVES\_LINKS\_INITIATIVES**

Tool to list initiatives linked to a specific objective. Use when you need to retrieve all initiatives associated with an objective after confirming its ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                                  | Description                                                                     |
| ------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------- |
| `id`          | string |     ✅    | `"00000000-0000-0000-0000-000000000000"` | Entity identifier. UUID of the objective to list its linked initiatives.        |
| `page_cursor` | string |          | —                                        | Cursor for pagination. Use the pageCursor from links.next of previous response. |

***

### `Productboard List Plugin Integrations`

Integration name: **PRODUCTBOARD\_LIST\_PLUGIN\_INTEGRATIONS**

List all plugin integrations in the Productboard workspace. Plugin integrations allow you to add columns to the Productboard Features board that integrate with third-party systems (e.g., Jira, GitHub). They enable a "push button" workflow to send features to external systems. Returns a paginated list of plugin integration objects, each containing id, name, and description. Use the links.next URL in pageUrl parameter to fetch subsequent pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                     | Description                                                                                                                      |
| --------- | ------ | :------: | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `pageUrl` | string |          | `"https://api.productboard.com/plugin-integrations?page=2"` | URL for the next page, obtained from the previous response's links.next. If not set, the first page of integrations is returned. |

***

### `Productboard List Release Groups`

Integration name: **PRODUCTBOARD\_LIST\_RELEASE\_GROUPS**

Lists all release groups in the Productboard workspace. Release groups allow organizing multiple sets of releases (e.g., sprints, development cycles, internal releases, or marketing launches). Use this action to discover available release groups, their IDs, names, and whether they are archived. Returns the first 100 release groups. Follow the `links.next` URL to retrieve additional pages if more than 100 groups exist.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example | Description                                                                                                                           |
| ------------ | ------- | :------: | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `pageLimit`  | integer |          | `100`   | Number of release groups to return per page. Default is 100.                                                                          |
| `pageCursor` | string  |          | —       | Cursor for fetching subsequent pages. Obtain this from the 'pageCursor' field in a previous response. Leave empty for the first page. |

***

### `Productboard List Releases`

Integration name: **PRODUCTBOARD\_LIST\_RELEASES**

Tool to list all releases in Productboard. Use when you need a paginated list of releases; follow links.next for more pages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter         | Type   | Required | Example                                  | Description                                    |
| ----------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------- |
| `releaseGroup.id` | string |          | `"123e4567-e89b-12d3-a456-426614174000"` | UUID of a release group to filter releases by. |

***

### `Productboard List Users`

Integration name: **PRODUCTBOARD\_LIST\_USERS**

Retrieves a paginated list of all users in the Productboard workspace. Returns user details including id, name, email, externalId, and companyId. The API paginates results (up to 100 users per page). Use the 'next' URL from the response links to fetch subsequent pages if available.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example | Description                                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `next`    | string |          | —       | Pagination cursor URL for the next page of results. Obtain this from the 'links.next' field in a previous response. Leave empty for the first page. Accepts both full URLs (e.g., '<https://api.productboard.com/users?page=2>') and relative paths (e.g., '/users?page=2'). |

***

### `Productboard List Webhooks`

Integration name: **PRODUCTBOARD\_LIST\_WEBHOOKS**

Tool to list all webhook subscriptions. Use when you need to retrieve all registered webhook endpoints and their configurations.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

*No parameters required.*

***

### `Productboard Remove Note Follower`

Integration name: **PRODUCTBOARD\_REMOVE\_NOTE\_FOLLOWER**

Tool to remove a follower from a Productboard note. Use after confirming the note ID and follower email are correct.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                        |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------- |
| `email`   | string |     ✅    | `"user@example.com"`                     | Email address of the follower to remove            |
| `noteId`  | string |     ✅    | `"123e4567-e89b-12d3-a456-426655440000"` | UUID of the note from which to remove the follower |

***

### `Productboard Retrieve Company`

Integration name: **PRODUCTBOARD\_RETRIEVE\_COMPANY**

Tool to retrieve details of a specific company. Use when you have the company ID to fetch its full details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                            |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------- |
| `id`      | string |     ✅    | `"550e8400-e29b-41d4-a716-446655440000"` | Identifier of the company to retrieve. |

***

### `Productboard Retrieve Company Field`

Integration name: **PRODUCTBOARD\_RETRIEVE\_COMPANY\_FIELD**

Tool to retrieve details of a specific company custom field. Use when you have the custom field ID and need its metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                            |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"39acaad1-0dba-4ddc-8f41-cacf56829efb"` | UUID of the company custom field to retrieve (e.g., from LIST\_COMPANY\_FIELDS action) |

***

### `Productboard Retrieve Company Field Value`

Integration name: **PRODUCTBOARD\_RETRIEVE\_COMPANY\_FIELD\_VALUE**

Tool to retrieve a specific company custom field value. Use when you need the current value of a custom field for a given company by its IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example   | Description                                              |
| ---------------------- | ------ | :------: | --------- | -------------------------------------------------------- |
| `companyId`            | string |     ✅    | `"12345"` | ID of the company to retrieve the custom field value for |
| `companyCustomFieldId` | string |     ✅    | `"67890"` | ID of the company custom field to retrieve               |

***

### `Productboard Retrieve Feature`

Integration name: **PRODUCTBOARD\_RETRIEVE\_FEATURE**

Tool to retrieve details of a specific feature. Use when you need complete info on one feature.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                     |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------- |
| `id`      | string |     ✅    | `"00000000-0000-0000-0000-000000000000"` | UUID of the feature to retrieve |

***

### `Productboard Retrieve Product`

Integration name: **PRODUCTBOARD\_RETRIEVE\_PRODUCT**

Tool to retrieve details of a specific product. Use when you have the product ID to fetch its full details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                            |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------- |
| `id`      | string |     ✅    | `"550e8400-e29b-41d4-a716-446655440000"` | Identifier of the product to retrieve. |

***

### `Productboard Retrieve User`

Integration name: **PRODUCTBOARD\_RETRIEVE\_USER**

Tool to retrieve details of a specific user. Use when you have the user ID to fetch its full details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                       |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------- |
| `id`      | string |     ✅    | `"550e8400-e29b-41d4-a716-446655440000"` | Unique identifier (UUID) of the user to retrieve. |

***

### `Productboard Scim List Users`

Integration name: **PRODUCTBOARD\_SCIM\_LIST\_USERS**

Tool to list users via SCIM. Use when checking for existing users before creation.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                               | Description                                                                                                    |
| ------------ | ------- | :------: | ------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `count`      | integer |          | `25`                                  | Number of items to return for pagination.                                                                      |
| `filter`     | string  |          | `"userName eq \"alice@example.com\""` | Filter expression; supports 'eq' and 'and' on attributes id, externalId, userName, displayName, title, active. |
| `sortBy`     | string  |          | `"userName"`                          | Attribute to sort by; one of id, externalId, userName, displayName, title, active.                             |
| `sortOrder`  | string  |          | `"ascending"`                         | Sort order; ascending or descending.                                                                           |
| `startIndex` | integer |          | `1`                                   | 1-based index for pagination; the first item is 1.                                                             |

***

### `Productboard Search Entities V2`

Integration name: **PRODUCTBOARD\_SEARCH\_ENTITIES\_V2**

Tool to search for entities across Productboard using the v2 API. Use when you need to find entities by various criteria like IDs, name, type, status, owner, parent, or archived status. Supports pagination for large result sets.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type   | Required | Example                                                          | Description                                                                                                           |
| ------------ | ------ | :------: | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `data`       | object |     ✅    | —                                                                | Search criteria object containing filters for entity search                                                           |
| `pageCursor` | string |          | `"eyJpZCI6IjEyMzQ1Njc4LTEyMzQtMTIzNC0xMjM0LTEyMzQ1Njc4OTBhYiJ9"` | Cursor pointing to the current position in the paginated list. Obtained from the previous response's links.next field |

***

### `Productboard Set Company Field Value`

Integration name: **PRODUCTBOARD\_SET\_COMPANY\_FIELD\_VALUE**

Tool to set or replace a specific company custom field's value. Use when you need to update a company's custom field after confirming the field ID and ensuring the new value matches the field type.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter              | Type   | Required | Example                                  | Description                                                                                            |
| ---------------------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `value`                | —      |     ✅    | `"Some text"`                            | New custom field value. Must match the field type: string for text fields or number for number fields. |
| `companyId`            | string |     ✅    | `"550e8400-e29b-41d4-a716-446655440000"` | UUID of the company to update.                                                                         |
| `companyCustomFieldId` | string |     ✅    | `"cf_12345"`                             | UUID of the company custom field to set.                                                               |

***

### `Productboard Set Custom Field Value`

Integration name: **PRODUCTBOARD\_SET\_CUSTOM\_FIELD\_VALUE**

Tool to set a custom field value on a hierarchy entity. Use when you need to update a product, component, or feature field with a specific value after confirming the field and entity IDs.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example                                  | Description                                                                                                                              |
| -------------------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `value`              | —      |     ✅    | `"Example text"`                         | Value to assign to the custom field. Must match the field type (e.g., string, number, single-select key, list of keys for multi-select). |
| `customField.id`     | string |     ✅    | `"4c6d7e8f-9a1b-2c3d-4e5f-6789012345ab"` | UUID of the custom field to set on the hierarchy entity.                                                                                 |
| `hierarchyEntity.id` | string |     ✅    | `"5f8d1e2b-3a4c-4d1f-9e62-1234567890ab"` | UUID of the hierarchy entity (product, component, or feature) to update.                                                                 |

***

### `Productboard Set Entities Relationships Parent V2`

Integration name: **PRODUCTBOARD\_SET\_ENTITIES\_RELATIONSHIPS\_PARENT\_V2**

Tool to set parent relationship on an entity. Use when establishing hierarchical relationships between entities in Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                               |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------- |
| `id`      | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | The UUID of the entity to set the parent relationship on. |
| `data`    | object |     ✅    | —                                        | Relationship data containing target entity reference.     |

***

### `Productboard Set Feature Release Assignment`

Integration name: **PRODUCTBOARD\_SET\_FEATURE\_RELEASE\_ASSIGNMENT**

Tool to update a feature release assignment. Use when you need to assign a feature to a release (set assigned=true) or remove it from a release (set assigned=false).

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter    | Type    | Required | Example                                  | Description                                                                                                                          |
| ------------ | ------- | :------: | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `assigned`   | boolean |     ✅    | `true`                                   | Set to true when you want to assign the feature into the release. Set to false when you want to remove the feature from the release. |
| `feature.id` | string  |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | ID of the feature.                                                                                                                   |
| `release.id` | string  |     ✅    | `"94139054-f9f2-43c3-b1fc-e0b305de03c1"` | ID of the release.                                                                                                                   |

***

### `Productboard Set Features`

Integration name: **PRODUCTBOARD\_SET\_FEATURES**

Tool to update a feature by ID. Use when you need to modify feature properties like name, description, status, parent, timeframe, or archived flag.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                               |
| --------- | ------ | :------: | ---------------------------------------- | ----------------------------------------- |
| `id`      | string |     ✅    | `"2d836357-4dca-4d67-bd3c-3d1d0e20c4bb"` | UUID of the feature to update.            |
| `data`    | object |     ✅    | —                                        | Data payload containing fields to update. |

***

### `Productboard Set Notes Relationships Customer V2`

Integration name: **PRODUCTBOARD\_SET\_NOTES\_RELATIONSHIPS\_CUSTOMER\_V2**

Tool to set a customer relationship on a note in Productboard. Use when you need to associate a note with a user or company customer entity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                            |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"802a45c0-1d15-48d4-9570-92273432f15f"` | UUID of the note to set the customer relationship on.                  |
| `data`    | object |     ✅    | —                                        | Data containing the target customer entity to associate with the note. |

***

### `Productboard Set Product`

Integration name: **PRODUCTBOARD\_SET\_PRODUCT**

Tool to update a product using PUT method in Productboard. Use when you need to modify a product's name, description, or owner with full replacement semantics.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                   |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------- |
| `id`      | string |     ✅    | `"7a544666-ca89-4abe-8c1b-68e1559c20b8"` | UUID of the product to update.                |
| `data`    | object |     ✅    | —                                        | Data payload containing the fields to update. |

***

### `Productboard Update Companies Custom Fields`

Integration name: **PRODUCTBOARD\_UPDATE\_COMPANIES\_CUSTOM\_FIELDS**

Tool to update a company custom field name. Use when you need to rename an existing company custom field in Productboard.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                    |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------------------- |
| `id`      | string |     ✅    | `"92d82b11-f589-45ee-848a-e0702579d60e"` | Entity identifier (UUID) of the company custom field to update |
| `name`    | string |     ✅    | `"Company Website"`                      | New company field name                                         |

***

### `Productboard Update Company`

Integration name: **PRODUCTBOARD\_UPDATE\_COMPANY**

Tool to update an existing company in Productboard. Use when you need to modify company details such as name, description, domain, or source metadata.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                         |
| --------- | ------ | :------: | ---------------------------------------- | ------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"968920e8-0edd-4448-8450-af847d6f440e"` | Identifier of the company to update.                                |
| `data`    | object |     ✅    | —                                        | Company data fields to update. All fields within data are optional. |

***

### `Productboard Update Component`

Integration name: **PRODUCTBOARD\_UPDATE\_COMPONENT**

Tool to update an existing component. Use when you need to modify component name, description, owner, or parent entity.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                        |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------------------------- |
| `id`      | string |     ✅    | `"2911c40f-2309-4fd7-8338-251d34a76f0c"` | UUID of the component to update.                   |
| `data`    | object |     ✅    | —                                        | Payload containing the component fields to update. |

***

### `Productboard Update Entities V2`

Integration name: **PRODUCTBOARD\_UPDATE\_ENTITIES\_V2**

Tool to update a PM entity using the v2 API. Use when you need to modify entity fields or apply patch operations to products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                            |
| --------- | ------ | :------: | ---------------------------------------- | ---------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | The UUID of the entity to update.                                      |
| `data`    | object |     ✅    | —                                        | Data containing the fields or patch operations to apply to the entity. |

***

### `Productboard Update Features`

Integration name: **PRODUCTBOARD\_UPDATE\_FEATURES**

Tool to update a feature in Productboard. Use when modifying feature details like name, description, status, owner, parent, or timeframe.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                      |
| --------- | ------ | :------: | ---------------------------------------- | -------------------------------- |
| `id`      | string |     ✅    | `"78bf9025-06c9-44ce-82f7-ab985892801d"` | UUID of the feature to update.   |
| `data`    | object |     ✅    | —                                        | Fields to update on the feature. |

***

### `Productboard Update Notes V2`

Integration name: **PRODUCTBOARD\_UPDATE\_NOTES\_V2**

Tool to update a note using the v2 API. Supports two update methods: direct field updates via `fields` parameter or granular patch operations via `patch` parameter. Use `fields` for simple updates (e.g., changing name), and `patch` for array operations like adding/removing tags.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                                                                                                               | Description                                                                                                                                                                                                                                                  |
| --------- | ------ | :------: | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`      | string |     ✅    | `"0468e509-9472-4a71-ac54-499845b3a255"`                                                                                              | UUID of the note to update                                                                                                                                                                                                                                   |
| `patch`   | array  |          | `[{"op":"set","path":"/fields/name","value":"Updated via Patch Method"},{"op":"addItems","path":"/fields/tags","value":["new-tag"]}]` | List of patch operations for granular updates (set/clear/addItems/removeItems). Use for array operations or conditional updates. Cannot be used together with `fields`                                                                                       |
| `fields`  | object |          | `{"name":"Updated via Fields Method"}`                                                                                                | Direct field updates as key-value pairs. Use this for simple field assignments. Cannot be used together with `patch`. Supported fields: name (str), owner (dict), tags (list of dicts), content (str/dict), archived (bool), processed (bool), source (dict) |

***

### `Productboard Update Objectives`

Integration name: **PRODUCTBOARD\_UPDATE\_OBJECTIVES**

Tool to update an existing objective in Productboard. Use when you need to modify objective properties such as name, description, owner, status, timeframe, or archive state.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                       |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------- |
| `id`      | string |     ✅    | `"312f99a8-f200-4434-a724-c78b25858f2a"` | ID of the objective to update.    |
| `data`    | object |     ✅    | —                                        | Data to update for the objective. |

***

### `Productboard Update Product`

Integration name: **PRODUCTBOARD\_UPDATE\_PRODUCT**

Tool to update a product in Productboard. Use when you need to modify a product's name, description, or owner.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                   |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------- |
| `id`      | string |     ✅    | `"7a544666-ca89-4abe-8c1b-68e1559c20b8"` | UUID of the product to update.                |
| `data`    | object |     ✅    | —                                        | Data payload containing the fields to update. |

***

### `Productboard Update Release`

Integration name: **PRODUCTBOARD\_UPDATE\_RELEASE**

Tool to update an existing release in Productboard. Use when you need to modify release properties such as name, description, state, archived status, release group, or timeframe.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                  | Description                                                                |
| -------------- | ------- | :------: | ---------------------------------------- | -------------------------------------------------------------------------- |
| `id`           | string  |     ✅    | `"82709d41-1e90-4213-ba63-aecfb9aeca28"` | UUID of the release to update.                                             |
| `name`         | string  |          | `"Version 1.0 - Updated"`                | New release name or omit if it should not be changed.                      |
| `state`        | string  |          | `"in-progress"`                          | Valid states for a release.                                                |
| `archived`     | boolean |          | `false`                                  | Archived flag value or omit if it should not be changed.                   |
| `timeframe`    | object  |          | —                                        | Release timeframe for updates.                                             |
| `description`  | string  |          | `"<p>Release <s>R123</s></p>"`           | New release description (HTML format) or omit if it should not be changed. |
| `releaseGroup` | object  |          | —                                        | Release group reference for updating.                                      |

***

### `Productboard Update User`

Integration name: **PRODUCTBOARD\_UPDATE\_USER**

Tool to update a user's information. Use when you need to modify a user's name, email, or external ID.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                                  | Description                                                                                   |
| --------- | ------ | :------: | ---------------------------------------- | --------------------------------------------------------------------------------------------- |
| `id`      | string |     ✅    | `"b9b9a2db-367a-4eb3-a5f3-80f45e8347a4"` | Unique identifier (UUID) of the user to update.                                               |
| `data`    | object |     ✅    | —                                        | User data fields to update. At least one field (name, email, or externalId) must be provided. |


# Pushbullet

Your Toolhouse AI Worker can connect to Pushbullet using 15 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](https://toolhouse.app/auth-connections?authkit_slugs=pushbullet).

## Tools (15)

### `Pushbullet Create Chat`

Integration name: **PUSHBULLET\_CREATE\_CHAT**

Tool to create a new chat with the specified email address. Use when you need to initiate a conversation thread by email.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                    | Description                                                                          |
| --------- | ------ | :------: | -------------------------- | ------------------------------------------------------------------------------------ |
| `email`   | string |     ✅    | `"carmack@idsoftware.com"` | Email of the person to create the chat with (does not have to be a Pushbullet user). |

***

### `Pushbullet Create Device`

Integration name: **PUSHBULLET\_CREATE\_DEVICE**

Tool to register a new device under the current user's account. Use when adding a new hardware or app device to Pushbullet.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                         | Description                                                          |
| -------------- | ------- | :------: | ----------------------------------------------- | -------------------------------------------------------------------- |
| `icon`         | string  |          | `"ios"`                                         | Icon for this device; e.g., desktop, phone, watch, etc.              |
| `model`        | string  |     ✅    | `"iPhone 5s (GSM)"`                             | Model of the device                                                  |
| `has_sms`      | boolean |          | `true`                                          | True if the device has SMS capability (Android only)                 |
| `nickname`     | string  |     ✅    | `"Elon Musk's iPhone"`                          | Name to display for the device                                       |
| `push_token`   | string  |          | `"production:abcdef1234567890abcdef1234567890"` | Platform-specific push token; leave blank for custom devices         |
| `app_version`  | integer |     ✅    | `8623`                                          | Version of the Pushbullet app installed on the device (non-negative) |
| `manufacturer` | string  |     ✅    | `"Apple"`                                       | Manufacturer of the device                                           |

***

### `Pushbullet Create Push`

Integration name: **PUSHBULLET\_CREATE\_PUSH**

Tool to send a new push (note, link, or file) to a device, user, channel, or client. Use when you need to share content to a specific target. Example: "Send a link to <https://example.com> to device abc123".

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter            | Type   | Required | Example              | Description                                                            |
| -------------------- | ------ | :------: | -------------------- | ---------------------------------------------------------------------- |
| `url`                | string |          | —                    | URL to include with a link push. Required when type='link'.            |
| `body`               | string |          | —                    | Body text of the note, link message, or file message.                  |
| `guid`               | string |          | —                    | Client-generated unique identifier for idempotency.                    |
| `type`               | string |     ✅    | —                    | Type of push to send: 'note', 'link', or 'file'.                       |
| `email`              | string |          | `"user@example.com"` | Email address to send the push to (Pushbullet user or fallback email). |
| `title`              | string |          | —                    | Title of the note or link (optional).                                  |
| `file_url`           | string |          | —                    | URL of the file to push. Required when type='file'.                    |
| `file_name`          | string |          | —                    | Filename for file push. Required when type='file'.                     |
| `file_type`          | string |          | —                    | MIME type of the file. Required when type='file'.                      |
| `channel_tag`        | string |          | —                    | Tag of channel to broadcast the push to subscribers.                   |
| `client_iden`        | string |          | —                    | Identifier of OAuth client to send the push to its authorized users.   |
| `device_iden`        | string |          | —                    | Identifier of device to send the push to.                              |
| `source_device_iden` | string |          | —                    | Identifier of the source device sending this push.                     |

***

### `Pushbullet Delete All Pushes`

Integration name: **PUSHBULLET\_DELETE\_ALL\_PUSHES**

Tool to delete all pushes for the current user asynchronously. Use when you need to bulk-clear all existing pushes in one call.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Pushbullet Delete Chat`

Integration name: **PUSHBULLET\_DELETE\_CHAT**

Tool to delete a chat by its identifier. Use when you need to remove a chat from your Pushbullet account after confirming its identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                                  |
| --------- | ------ | :------: | ------------------------ | -------------------------------------------- |
| `iden`    | string |     ✅    | `"ujpah72o0sjAoRtnM0jc"` | The unique identifier of the chat to delete. |

***

### `Pushbullet Delete Device`

Integration name: **PUSHBULLET\_DELETE\_DEVICE**

Tool to remove a device by its identifier. Use when you need to delete a device from your Pushbullet account after confirming its identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter     | Type   | Required | Example                              | Description                                    |
| ------------- | ------ | :------: | ------------------------------------ | ---------------------------------------------- |
| `device_iden` | string |     ✅    | `"ujEDGjVwOZMuXc7fRv5fQZh8YHC0Y8CE"` | The unique identifier of the device to delete. |

***

### `Pushbullet Delete Push`

Integration name: **PUSHBULLET\_DELETE\_PUSH**

Tool to delete a specific push by its identifier. Use when you need to remove a push after confirming its identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type   | Required | Example                  | Description                      |
| --------- | ------ | :------: | ------------------------ | -------------------------------- |
| `iden`    | string |     ✅    | `"ujpah72o0sjAoRtnM0jc"` | Identifier of the push to delete |

***

### `Pushbullet Get User`

Integration name: **PUSHBULLET\_GET\_USER**

Tool to retrieve the currently authenticated user's profile. Use when you need to verify the access token or display the current user's details.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Pushbullet List Chats`

Integration name: **PUSHBULLET\_LIST\_CHATS**

Tool to list all chat objects for the current user. Use when you need the full set of chat threads before sending or muting messages.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                 | Description                                            |
| --------- | ------- | :------: | ----------------------- | ------------------------------------------------------ |
| `limit`   | integer |          | `100`                   | Maximum number of chats to return (max 500).           |
| `cursor`  | string  |          | `"uj4FvJxxe1HPabcdefg"` | Cursor for pagination to fetch the next page of chats. |

***

### `Pushbullet List Devices`

Integration name: **PUSHBULLET\_LIST\_DEVICES**

Tool to list all registered devices for the current user. Use after obtaining a valid access token.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. *No parameters required.*

***

### `Pushbullet List Pushes`

Integration name: **PUSHBULLET\_LIST\_PUSHES**

Tool to list pushes with optional filtering and pagination. Use when retrieving or syncing pushes after a certain time.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter        | Type    | Required | Example                 | Description                                                    |
| ---------------- | ------- | :------: | ----------------------- | -------------------------------------------------------------- |
| `limit`          | integer |          | `100`                   | Maximum number of pushes to return (max 500, default 500).     |
| `active`         | boolean |          | `true`                  | If true, only active pushes are returned.                      |
| `cursor`         | string  |          | `"uj4FvJxxe1HPabcdefg"` | Cursor for pagination to fetch the next set of pushes.         |
| `modified_after` | number  |          | `1620000000`            | Only return pushes modified after this UNIX timestamp (float). |

***

### `Pushbullet Update Chat`

Integration name: **PUSHBULLET\_UPDATE\_CHAT**

Tool to mute or unmute an existing chat. Use when adjusting notification settings for a specific chat by its identifier.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter | Type    | Required | Example                  | Description                                               |
| --------- | ------- | :------: | ------------------------ | --------------------------------------------------------- |
| `iden`    | string  |     ✅    | `"ujpah72o0sjAoRtnM0jc"` | Unique identifier of the chat to update                   |
| `muted`   | boolean |     ✅    | `true`                   | True to mute notifications for this chat, false to unmute |

***

### `Pushbullet Update Device`

Integration name: **PUSHBULLET\_UPDATE\_DEVICE**

Tool to update metadata for a device by its identifier. Use when changing a device's nickname, model, or other settings.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter      | Type    | Required | Example                                         | Description                                                                             |
| -------------- | ------- | :------: | ----------------------------------------------- | --------------------------------------------------------------------------------------- |
| `icon`         | string  |          | `"ios"`                                         | Icon for the device. Common values: desktop, laptop, tablet, phone, watch, system, ios. |
| `iden`         | string  |     ✅    | `"ujpah72o0sjAoRtnM0jc"`                        | Identifier of the device to update.                                                     |
| `model`        | string  |          | `"iPhone 5s (GSM)"`                             | Model of the device.                                                                    |
| `has_sms`      | boolean |          | `true`                                          | Whether the device supports SMS (Android only).                                         |
| `nickname`     | string  |          | `"Work Phone"`                                  | New display name for the device.                                                        |
| `push_token`   | string  |          | `"production:f73be0ee7877c8c7fa69b1468cde764f"` | Platform-specific push token. Leave blank for custom or listening devices.              |
| `app_version`  | integer |          | `8623`                                          | Version of the Pushbullet app installed on the device (non-negative).                   |
| `manufacturer` | string  |          | `"Apple"`                                       | Manufacturer of the device.                                                             |

***

### `Pushbullet Update Push`

Integration name: **PUSHBULLET\_UPDATE\_PUSH**

Tool to update a push (dismiss or modify list items) by its identifier. Use when marking a push as dismissed or updating list push items.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type    | Required | Example                              | Description                                                     |
| ----------- | ------- | :------: | ------------------------------------ | --------------------------------------------------------------- |
| `iden`      | string  |     ✅    | `"ujpah72o0sjAoRtnM0jc"`             | Unique identifier of the push to update                         |
| `items`     | array   |          | `{"text":"Item One","checked":true}` | List of items to update for list-style pushes                   |
| `dismissed` | boolean |          | `true`                               | Set to true to mark the push as dismissed (hides notifications) |

***

### `Pushbullet Upload Request`

Integration name: **PUSHBULLET\_UPLOAD\_REQUEST**

Tool to obtain a signed upload URL for a file before pushing. Use when you need to upload file content via the signed S3 form data.

#### Parameters

Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.

| Parameter   | Type   | Required | Example        | Description                                      |
| ----------- | ------ | :------: | -------------- | ------------------------------------------------ |
| `file_name` | string |     ✅    | `"photo.jpg"`  | Name of the file to upload. Example: 'photo.jpg' |
| `file_type` | string |     ✅    | `"image/jpeg"` | MIME type of the file. Example: 'image/jpeg'     |

***




---

[Next Page](/toolhouse/llms-full.txt/1)

